Subject: Re: route6d feature or bug?
To: None <firstname.lastname@example.org>
From: None <email@example.com>
Date: 09/30/1999 00:08:45
>[ zila ] [ server6 ]
> | |
> | |
> |<=====IPv4 over IPv6 tunnel====>|
> | |
> <--------IPv6 Ethernetworks------> (i.e. zila and server6 are not on same link)
>> If you receive route update over IPv6 over IPv4 tunnel, that will
>> be put onto IPv6 routing table as a route over the tunnel. This is
>> what route6d is for.
>What I saw, was that all routes in the IPv6 routing table changed from
>pointing over the ex0 interface, to the gif0 interface. So, zila tried
>to send (native) IPv6 traffic over the IPv4 over IPv6 tunnel, instead
>of routing the IPv6 traffic directly over the ex0 interface. At least
>that's what i believe happened. At the time I wasn't very eager to
>reproduce the problem. I had to kill route6d, flush the routing table
>and restart it with `-N gif0'.
Hmm, now I see the problem.
If you configure IPv4 addresses as physical (outer) address, you are
configuring it as IPv6 over IPv6 tunnel, as it has IPv6 link-local
address as logical (inner) address.
If you configure like below:
- IPv6 address as physical (outer) address
- and IPv4 address as logical (inner) address
>95 zila:~> gifconfig gif0
>gif0: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 1280
> inet6 fe80:5::250:4ff:feec:b1fa prefixlen 64 <---this one
> inet 192.168.2.2 --> 192.168.2.1 netmask 0xffffff00
> physical address inet6 3ffe:2a00:100:3004:250:4ff:feec:b1fa --> 3ffe:2a00:100:3001::2
you are creating IPv4/6 over IPv6 tunnel, as it has both IPv4 and
IPv6 address as its inner address (notice inner link-local address).
Inner can be both protocol families.
RIPng protocol works with link-local addresses, so ripng would run
on this interface as it can carry IPv6 packet encapsulated into IPv6
This looks much like caused by a feature for gif interface (that it
will have inner IPv6 address automatically), not the behavior of
If you need to disable IPv6 packets to be used as inner, you shold:
- manually remove inner IPv6 address by using:
ifconfig gif0 inet6 fe80:xxx -alias
- or, disable ripng on gif0, by route6d -N gif0.