Bart, Good question, and there is no easy answer. The Linux world seems to be having convulsions over it, and every time I re-learn how to shut it off (it does bad things to my DNS lookup times), I find comments about how poorly designed it is. I'm not saying the comments are correct, but I note them.
For now, IPv6 is probably better left for opt-in than opt-out. There should probably also be very good separation between IPv4 and IPv6 name resolvers, allowing a clear separation of the associated primitives and methods that depend on them. Bill ________________________________ From: pharo-project-boun...@lists.gforge.inria.fr [mailto:pharo-project-boun...@lists.gforge.inria.fr] On Behalf Of Bart Gauquie Sent: Tuesday, November 17, 2009 2:52 PM To: Pharo-project@lists.gforge.inria.fr Subject: Re: [Pharo-project] Socket accepts ipv6 addresses, but can not connect to them Hi, If i modify the #useOldNetwork method, everything works. Thanks for that tip. However: is this not a 'bug' in Pharo to have ipv6 as default, since it is not working properly? With my simple SocketTest not working for instance? Kind regards, Bart 2009/11/16 Schwab,Wilhelm K <bsch...@anest.ufl.edu<mailto:bsch...@anest.ufl.edu>> FWIW, I am fairly certain the IPv6 changes are incomplete at best. Others have reported needing to override #useOldNetwork to always answer true, and I have noted things that are called "in the clear" when they should be hidden behind an old net test. So far, I have done what amounts to some glorified loopback tests and have watched MC download packages from IPv4 addresses. Bill ________________________________ From: pharo-project-boun...@lists.gforge.inria.fr<mailto:pharo-project-boun...@lists.gforge.inria.fr> [mailto:pharo-project-boun...@lists.gforge.inria.fr<mailto:pharo-project-boun...@lists.gforge.inria.fr>] On Behalf Of Bart Gauquie Sent: Monday, November 16, 2009 4:26 PM To: pharo-project@lists.gforge.inria.fr<mailto:pharo-project@lists.gforge.inria.fr> Subject: [Pharo-project] Socket accepts ipv6 addresses, but can not connect to them Dear all, I'm using Pharo1.0rc1 Latest update: #10493, on Windows Vista , runtime 3.11.4. Following test is going fine: SocketTest>>testConnectToLocalhostThroughNetNameResolverAddressForNameLocalhost |serverSocket clientSocket address| serverSocket := Socket newTCP. clientSocket := Socket newTCP. [ serverSocket listenOn: 6665. address := NetNameResolver addressForName: '127.0.0.1' timeout: 20. clientSocket connectTo: address port: 6665] ensure: [ clientSocket close. serverSocket close. ] (connect to a socket on localhost) however, following test: testConnectToLocalhostThroughNetNameResolverLocalHostAddress |serverSocket clientSocket address| serverSocket := Socket newTCP. clientSocket := Socket newTCP. [ serverSocket listenOn: 6665. address := NetNameResolver localHostAddress. clientSocket connectTo: address port: 6665] ensure: [ clientSocket close. serverSocket close. ] is failing with following error: ConnectionTimedOut: Cannot connect to: fe80::6dd3:7860:93c9:46a0%10(PC_xxx),6665(6665) [] in Socket>>connectTo:waitForConnectionFor: Socket>>waitForConnectionFor:ifTimedOut: Socket>>connectTo:waitForConnectionFor: Socket>>connectTo: Socket>>connectTo:port: [] in SocketTest>>testConnectToLocalhostThroughNetNameResolverLocalHostAddress BlockClosure>>ensure: SocketTest>>testConnectToLocalhostThroughNetNameResolverLocalHostAddress SocketTest(TestCase)>>performTest [] in [] in SocketTest(TestCase)>>runCase BlockClosure>>ensure: I understand that the above address is an ipv6 address. (the NetNameResolver localHostAddress lookup returns on my machine a ipv6 address) If i do ipconfig on my machine: Ethernet-adapter LAN-verbinding: Verbindingsspec. DNS-achtervoegsel: lan Link-local IPv6-adres . . . . . . : fe80::6dd3:7860:93c9:46a0%10 IPv4-adres. . . . . . . . . . . . : 10.0.0.39 Subnetmasker. . . . . . . . . . . : 255.255.255.0 Standaardgateway. . . . . . . . . : 10.0.0.138 its the same ipv6 address. Is it normal that the Socket class can not handle ipv6 addresses ? I get a timeoutexception on it (however this happens immediately). Is this the behaviour that i can expect ? The reason i noticed this is that I'm trying Magma, the server in a separate image but on the same machine, under ubuntu 9.10 everything worked fine, under Windows Vista it crashed, since internally it also uses NetNameResolver localHostAddress to connect to 'localhost', and i got the same connect timeout exception. In attachment, a fileout of the SocketTest (had to create a new testclass for this :-( ) Kind regards, Bart -- imagination is more important than knowledge - Albert Einstein Logic will get you from A to B. Imagination will take you everywhere - Albert Einstein Learn from yesterday, live for today, hope for tomorrow. The important thing is not to stop questioning. - Albert Einstein The true sign of intelligence is not knowledge but imagination. - Albert Einstein Gravitation is not responsible for people falling in love. - Albert Einstein _______________________________________________ Pharo-project mailing list Pharo-project@lists.gforge.inria.fr<mailto:Pharo-project@lists.gforge.inria.fr> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
_______________________________________________ Pharo-project mailing list Pharo-project@lists.gforge.inria.fr http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project