Solved Dual stack IPv4/IPv6 on 13

Has support for dual stack IPv4/IPv6 changed with RELEASE-13.0?

I have a daemon running on a VPS on which
Code:
net.inet6.ip6.v6only=0
is set in /etc/sysctl.conf. When the VPS was running 12.2, netstat -a would show
a "tcp46" listen protocol and connections over both v4 and v6 worked fine.

After updating to 13.0-RELEASE, only "tcp6" is shown and connections via ip4 are refused.

I've been unable to find anything in the release notes, but maybe I missed something?

Thanks.
 
All of my machines running 13 are dual stack IPv4 and IPv6. I think it's enough to config in /etc/rc.conf to control IPv4 only, IPv6 only, or dual IPv4/IPv6.

For dual stack:
Code:
### IPv4
ifconfig_ix0="inet IPv4Address netmask IPv4NetMask broadcast IPv4BroasCast -tso -lro -vlanhwtso"
defaultrouter="IPv4Gateway"

### IPv6
ifconfig_ix0_ipv6="inet6 IPv6Address prefixlen 56 accept_rtadv no_radr"
ipv6_defaultrouter="IPv6Gateway"

When using only IPv4, I would not put IPv6 config in /etc/rc.conf, and vice-versa.
I just have to put configs in /etc/sysctl.conf when I would like to control forwarding, redirecting, ...
 
So, because of a single daemon, you assume something changed in the system? Did you try to verify IPv4 works besides that daemon? I think it's much more likely to find the problem in the daemon's configuration…
 
So, because of a single daemon, you assume something changed in the system? Did you try to verify IPv4 works besides that daemon? I think it's much more likely to find the problem in the daemon's configuration…
Umm, no, in fact I assumed absolutely nothing of the sort. I simply asked a question. And yes, prior to that, I did perform the obvious step
of verifying that listen sockets bound to v4 addresses worked as expected.

Having said that, it appears that the issue is one of either ordering or a race between daemon startup and the setting of v6only in /etc/sysctl.conf because it now seems to be working. I'll take it as given that that's on me and I have some debugging to do.
 
Top