Subject: Re: OK, what's going on with my nfs?
To: Hisashi T Fujinaka <htodd@twofifty.com>
From: Perry E. Metzger <perry@piermont.com>
List: current-users
Date: 10/29/2003 12:20:23
Hisashi T Fujinaka <htodd@twofifty.com> writes:
> On Wed, 29 Oct 2003, Perry E. Metzger wrote:
>
> > Hisashi T Fujinaka <htodd@twofifty.com> writes:
> > > I am assuming it has something to do with net.inet6.ip6.v6only, but I
> > > can't figure out where in the man pages it describes this sysctl.
> >
> > man 3 sysctl
>
> I already looked there and didn't see any description.
ip6.v6only
The variable specifies initial value for IPV6_V6ONLY
socket option for AF_INET6 socket. Please refer to
ip6(4) for detail.
The ip6 man page describes in more detail:
IPV6_V6ONLY controls behavior of AF_INET6 wildcard listening socket. The
following example sets the option to 1:
int on = 1;
setsockopt(s, IPPROTO_IPV6, IPV6_V6ONLY, &on, sizeof(on));
If set to 1, AF_INET6 wildcard listening socket will accept IPv6 traffic
only. If set to 0, it will accept IPv4 traffic as well, as if it was
from IPv4 mapped address like ::ffff:10.1.1.1. Note that if you set it
this to 0, IPv4 access control gets much more complicated. For example,
even if you have no listening AF_INET listening socket on port X, you
will end up accepting IPv4 traffic by AF_INET6 listening socket on the
same port. The default value for this flag is copied at socket instanti-
ation time, from net.inet6.ip6.v6only sysctl(3) variable. The option
affects TCP and UDP sockets only.
> > Does the NFS problem go away if you change the sysctl back to the
> > old value?
>
> Yes. I enjoy poking around blindly to fix things. :)
Okay, that's bad. File a PR saying that the change broke NFS.
--
Perry E. Metzger perry@piermont.com