On Sat, Apr 5, 2008 at 12:27:59 -0400, Eric Cooper wrote: > On Sat, Apr 05, 2008 at 10:26:27AM -0400, Adam Spragg wrote: > > The reason is due to the nature of the IPv6 support that has been added. > > This seems to stop IPv4 being used if an IPv6 address is found. While > > the server I run approx on has an IPv6 address, my network is not > > properly configured for IPv6 yet, due to issues(tm). Which means that > > some of my other computers are unable to connect to the approx server, > > despite a perfectly good IPv4 network existing between them. > > I've added code that attempts to listen on both an IPv6 and IPv4 > socket, but once it creates the IPv6 socket and binds it to port 9999, > the subsequent attempt to bind an IPv4 socket to 9999 fails with > "address already in use". (I don't know IPv6 well enough to > understand this. Do you?)
An AF_INET6 socket, by default, can receive both ipv4 and ipv6 connections (unless configured otherwise with the net/ipv6/bindv6only sysctl, or the IPV6_V6ONLY setsockopt). Adam, what does /proc/sys/net/ipv6/bindv6only contain on your system? approx calls bind() to in6addr_any, so I don't see why it would refuse ipv4 connections if that sysctl is unset. It might be a good idea for approx to explicitly set IPV6_V6ONLY to 0, though. Cheers, Julien -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]