Eliminating IPv6 (?)

Rodney W. Grimes freebsd-rwg at gndrsh.dnsmgr.net
Wed Jun 19 23:39:34 UTC 2019


[ Charset windows-1252 unsupported, converting... ]
> 19.06.2019 22:42, Rodney W. Grimes wrote:
> 
> >> 18.06.2019 10:10, Ronald F. Guilmette wrote:
> >>> How can I turn off IPv6 entirely without rebuilding the kernel?
> >> You cannot. GENERIC kernel specifically enables IPv6 support and you need to disable it at compile time.
> >> And if you do, you better rebuild the world too using WITHOUT_INET6=yes in the /etc/src.conf
> >> or else some utilities compiled with INET6 by default will query kernel
> >> for IPv6-specific data (like routing entries) and complain that your kernel does not know about it.
> > I have not seen these issues, can you give a specific example that fails?
> 
> Other than kernel/userland interaction (that may be not relevant anymore for modern FreeBSD),
> that's basically about making network connections (such as telnet etc.)
> to FQDNs resolved to IPv6 addresses supported by binaries (and resolver being userland beast)
> but not kernel/routing table.
> 
> > A netstat -rn on a v4 only kernel simple reports the v4 table, and iirc a
> > netstat -rn6 returns a "Protocol not supported error" as should all other
> > things.
> >> World built WITHOUT_INET6 has no such rough edges.
> > I find that actually causes me more issues, as then my
> > netstat -rn6 returns a hard error due to:
> >                 case '6':
> > #ifdef INET6
> >                         af = AF_INET6;
> > #else
> >                         errx(1, "IPv6 support is not compiled in");
> > #endif
> 
> Seems very logical to me. Do we have a script in base running "netstat -rn6"
> and breaking on this?

Actually that would be more proper as:

#ifdef INET6
                case '6':
                        af = AF_INET6;
#endif

With similiar adjustments to the usage message, if needed.

-- 
Rod Grimes                                                 rgrimes at freebsd.org


More information about the freebsd-questions mailing list