Re: Problem with gif and IPv6 in -CURRENT

From: Joe Marcus Clarke <marcus_at_FreeBSD.org>
Date: Fri, 08 Dec 2006 12:22:10 -0500
On Fri, 2006-12-08 at 22:54 +0800, gnn_at_freebsd.org wrote:
> At Thu, 07 Dec 2006 17:44:43 -0500,
> Joe Marcus Clarke wrote:
> > 
> > -----BEGIN PGP SIGNED MESSAGE-----
> > Hash: SHA1
> > 
> > I am running:
> > 
> > FreeBSD jclarke-pc 7.0-CURRENT FreeBSD 7.0-CURRENT #81: Thu Dec  7
> > 16:06:32 EST 2006     marcus_at_jclarke-pc:/usr/obj/usr/src/sys/JCLARKE-PC
> >  i386
> > 
> > And I am trying to get a gif IPv6 tunnel up to a Cisco router.  I can
> > get this to work on a 6.2-PRERELEASE server, but the -CURRENT machine
> > always claims there is no route to the far end of the point-to-point
> > link.  Here is my config:
> > 
> > # ifconfig gif0 create
> > # ifconfig gif0 tunnel 172.18.173.17 10.29.100.75
> > # ifconfig gif0 inet6 3ffe:604::2 3ffe:604::1 prefixlen 128
> > # ifconfig gi0
> > gif0: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 1280
> >         tunnel inet 172.18.173.17 --> 10.29.100.75
> >         inet6 fe80::211:11ff:fe10:461e%gif0 prefixlen 64 scopeid 0x4
> >         inet6 3ffe:604::2 --> 3ffe:604::1 prefixlen 128
> > 
> > This looks good, and I can ping my local 3ffe:604::2 address.  However,
> > when I ping 3ffe:604::1, I get:
> > 
> > ping6: UDP connect: No route to host
> > 
> > It's not lying.  I don't have a route to 3ffe:604::1:
> > 
> > # netstat -nr
> > ...
> > ::/96                             ::1                           UGRS
> >     lo0
> > ::1                               ::1                           UHL
> >     lo0
> > ::ffff:0.0.0.0/96                 ::1                           UGRS
> >     lo0
> > 2003:a02::/64                     link#1                        UC
> >     em0
> > 2003:a02::1                       00:11:11:10:46:1e             UHL
> >     lo0
> > 3ffe:604::2                       link#4                        UHL
> >     lo0
> > fe80::/10                         ::1                           UGRS
> >     lo0
> > fe80::%em0/64                     link#1                        UC
> >     em0
> > fe80::211:11ff:fe10:461e%em0      00:11:11:10:46:1e             UHL
> >     lo0
> > fe80::%lo0/64                     fe80::1%lo0                   U
> >     lo0
> > fe80::1%lo0                       link#3                        UHL
> >     lo0
> > fe80::%gif0/64                    link#4                        UC
> >    gif0
> > fe80::211:11ff:fe10:461e%gif0     link#4                        UHL
> >     lo0
> > ff01:1::/32                       link#1                        UC
> >     em0
> > ff01:3::/32                       ::1                           UC
> >     lo0
> > ff01:4::/32                       link#4                        UC
> >    gif0
> > ff02::/16                         ::1                           UGRS
> >     lo0
> > ff02::%em0/32                     link#1                        UC
> >     em0
> > ff02::%lo0/32                     ::1                           UC
> >     lo0
> > ff02::%gif0/32                    link#4                        UC
> >    gif0
> > 
> > The IPv4 address on the other end of the tunnel is reachable, and the
> > Cisco router has no problems finding a route to the FreeBSD machine.
> > Here is the config from the Cisco side:
> > 
> > interface Tunnel1
> >  no ip address
> >  load-interval 30
> >  ipv6 address 3FFE:604::1/126
> >  ipv6 enable
> >  tunnel source 10.29.100.75
> >  tunnel destination 172.18.173.17
> >  tunnel mode ipv6ip
> > 
> > Why isn't the other end of the point-to-point tunnel being instantiated
> > in the routing table?  If I take this exact config to a 6.2 box, this
> > works just fine, and the far end of the PTP link is instantiated in the
> > routing table.  Thanks for any clues you can provide.
> 
> I'm not sure for the reason for that but I find that with this in my
> rc.conf my PTP comes up just fine:
> 
> #IPv6 Config
> gif_interfaces="gif0"
> gifconfig_gif0="124.39.153.88 211.14.6.238"
> 
> ipv6_enable="YES"
> ipv6_network_interfaces="bge0"
> ipv6_ifconfig_bge0="2001:2f0:104:8081::1 prefixlen 64"
> ipv6_defaultrouter="::1 -ifp gif0"
> ipv6_gateway_enable="YES"
> 
> It might be the "ipv6_defaultrouter" line above that makes this all
> work.

This did it.  Thanks!  In 6.X I could use a default route of 3ffe:604::1
(in this example), and I did not need a route at all just to get to the
other end of the PTP link.  All the examples I found online assumed
4.4-RELEASE up to 6.X.

Joe

-- 
Joe Marcus Clarke
FreeBSD GNOME Team      ::      gnome_at_FreeBSD.org
FreeNode / #freebsd-gnome
http://www.FreeBSD.org/gnome

Received on Fri Dec 08 2006 - 16:25:21 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:39:03 UTC