On Fri, 7 Sep 2001, Marco d'Itri wrote:
> When I set up the ethernet card in my boot scripts:
>
> ip link set up dev eth0
> ip addr add 10.0.0.1/24 brd + dev eth0 label eth0
> ip addr add 10.0.0.9/24 brd + dev eth0 label eth0
>
> I get this message:
>
> Sep 7 01:27:59 wonderland kernel: eth0: no IPv6 routers present
The commands above do not trigger the message in itself. You've either
compiled in IPv6 support, or it's loaded as the module.
After the module is loaded and an interface is up, it takes about ~10-15
seconds to get this message (configurable) if there are no IPv6 routers
present.
> and an extra default route for ipv6 is added by the kernel:
>
> root@wonderland:vc/2:~#ip -6 ro
> fe80::/10 dev eth0 proto kernel metric 256 mtu 1500
> ff00::/8 dev eth0 proto kernel metric 256 mtu 1500
> default dev eth0 proto kernel metric 256 mtu 1500
> unreachable default dev lo metric -1 error -101
> root@wonderland:vc/2:~#
You mean the third one? It is required by the specification; if no better
route is known, all destinations are considered to be on-link.
> This is very annoying because IPv6 enabled programs then will try
> connectiong to IPv6 addresses and will have to wait the timeout to try
> with the IPv4 address, and this means I can't use a kernel with IPv6
> support on my IPv4 only hosts (or on IPv6 hosts without a configured
> tunnel).
My experience is that the delay is very small. E.g. one of my
workstations has IPv6 enabled but not even global addresses. When SSH'ing
into a system which has both IPv4 and IPv6 in DNS, it takes about a second
at the maximum to realize the IPv6 will not be reachable.
> How can I stop the kernel adding this route?
Do not load IPv6 module (remove net-pf-10 definition from
/etc/modules.conf to avoid it being autoloaded).
--
Pekka Savola "Tell me of difficulties surmounted,
Netcore Oy not those you stumble over and fall"
Systems. Networks. Security. -- Robert Jordan: A Crown of Swords
|