I'm working under OS X 10.8.5, fully patched. I have IPv6 disabled under Network Settings:
I also have unneeded network interfaces disabled:
While troubleshooting an OpenSSH server issue, I performed a netstat -an
and noticed there were IPv6 listeners:
$ netstat -an | grep -i listen
tcp6 0 0 *.1522 *.* LISTEN
tcp4 0 0 *.1522 *.* LISTEN
tcp6 0 0 ::1.52698 *.* LISTEN
tcp6 0 0 ::1.23053 *.* LISTEN
tcp4 0 0 127.0.0.1.23053 *.* LISTEN
tcp4 0 0 127.0.0.1.631 *.* LISTEN
tcp6 0 0 ::1.631 *.* LISTEN
How is it possible to have IPv6 listeners when IPv6 is disabled?
Best Answer
Because not setting up your network card to use ipv6 does not prevent applications of opening such sockets.
The sockets displayed as
*.<port>
are not bound to specific ip addresses/interfaces of your machine. They will simply listen to any incoming connection on any interface. Of course, no ipv6 connections will come in through your ethernet card if ipv6 is not set up.Besides that, I'm pretty sure that another interface on your machine is set up to use ipv6: your loopback interface. Hit up a terminal and type
ifconfig lo0
and you'll see it having an ipv6 address assigned to it. You can also useping6 ::1
:). In fact, the ipv6 sockets listed as::1.<port>
are bound to this interface and will only receive connections from your local machine.