Hurricane Electric's IPv6 Tunnel Broker Forums

General IPv6 Topics => IPv6 on Linux & BSD & Mac => Topic started by: slaxative on October 24, 2008, 06:20:29 PM

Title: openwrt router works, linux box doesnt.
Post by: slaxative on October 24, 2008, 06:20:29 PM
I can ping6 anything with open wrt router.
I am unable to ping6 anything with Linux box.

Tunnel details...
     Server IPv4 address:     66.220.18.42
   Server IPv6 address:    2001:470:c:5::1/64
   Client IPv4 address:    xxx.xxx.xxx.xxx
   Client IPv6 address:    2001:470:c:5::2/64
   Routed /48:    2001:470:f001::/48
   Routed /64:    2001:470:d:5::/64

Router config
br-lan    Link encap:Ethernet  HWaddr 00:0C:41:D4:84:7E
          inet addr:10.10.10.100  Bcast:10.10.10.255  Mask:255.255.255.0
          inet6 addr: fe80::200:ff:fe00:0/64 Scope:Link
          inet6 addr: 2001:470:f001::1/48 Scope:Global
          inet6 addr: 2001:470:d:5::1/64 Scope:Global
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:4618 errors:0 dropped:0 overruns:0 frame:0
          TX packets:4312 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:1023435 (999.4 KiB)  TX bytes:1739666 (1.6 MiB)

2001:470:c:5::/64 via :: dev henet  metric 256  mtu 1480 advmss 1420
2001:470:d:5::/64 dev br-lan  metric 256  mtu 1500 advmss 1440
2001:470:f001:beef::/64 dev br-lan  metric 256  mtu 1500 advmss 1440
2001:470:f001::/48 dev br-lan  metric 256  mtu 1500 advmss 1440
fe80::/64 dev eth0  metric 256  mtu 1500 advmss 1440
fe80::/64 dev br-lan  metric 256  mtu 1500 advmss 1440
fe80::/64 dev eth0.0  metric 256  mtu 1500 advmss 1440
fe80::/64 dev eth0.1  metric 256  mtu 1500 advmss 1440
fe80::/64 dev wl0  metric 256  mtu 1500 advmss 1440
fe80::/64 via :: dev henet  metric 256  mtu 1480 advmss 1420
ff00::/8 dev eth0  metric 256  mtu 1500 advmss 1440
ff00::/8 dev br-lan  metric 256  mtu 1500 advmss 1440
ff00::/8 dev eth0.0  metric 256  mtu 1500 advmss 1440
ff00::/8 dev eth0.1  metric 256  mtu 1500 advmss 1440
ff00::/8 dev wl0  metric 256  mtu 1500 advmss 1440
ff00::/8 dev henet  metric 256  mtu 1480 advmss 1420
default via 2001:470:c:5::1 dev henet  metric 1024  mtu 1480 advmss 1420
unreachable default dev lo  proto none  metric -1  error -128





Linux box config
eth0      Link encap:Ethernet  HWaddr 00:18:f3:90:ec:fb
          inet addr:10.10.10.10  Bcast:10.10.10.255  Mask:255.255.255.0
          inet6 addr: 2001:470:f001:beef:218:f3ff:fe90:ecfb/64 Scope:Global
          inet6 addr: fe80::218:f3ff:fe90:ecfb/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:2147 errors:0 dropped:0 overruns:0 frame:0
          TX packets:2345 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:481326 (470.0 KiB)  TX bytes:384337 (375.3 Ki

2001:470:f001:beef::/64 dev eth0  proto kernel  metric 256  expires 2592110sec mtu 1500 advmss 1440 metric 10 4294967295
fe80::/64 dev eth0  metric 256  mtu 1500 advmss 1440 metric 10 4294967295
ff00::/8 dev eth0  metric 256  mtu 1500 advmss 1440 metric 10 4294967295
default via fe80::200:ff:fe00:0 dev eth0  proto kernel  metric 1024  expires 1748sec mtu 1500 advmss 1440 metric 10 64
unreachable default dev lo  proto none  metric -1  error -101 metric 10 255



radvd.conf
interface br-lan
{
        AdvSendAdvert on;

#
# Disable Mobile IPv6 support
#
        AdvHomeAgentFlag off;

#
# example of a standard prefix
#
        prefix 2001:470:f001:beef::/64
        {
                AdvOnLink on;
                AdvAutonomous on;
                AdvRouterAddr off;
        };

};


This is the error I get while pinging from the Linux box to any ipv6 host.
PING irc.ipv6.he.net(irc.ipv6.he.net) 56 data bytes
From 2001:470:f001::1 icmp_seq=1 Destination unreachable: No route

The forwarding setting below is enabled.
echo 1 > /proc/sys/net/ipv6/conf/all/forwarding


Thank you for any help offered.
Title: Re: openwrt router works, linux box doesnt.
Post by: broquea on October 24, 2008, 06:28:34 PM
maybe assign 2001:470:f001:beef::1/64 to br-lan instead of 2001:470:f001::1/48 ?
also you default points to link-local, shouldn't it be the br-lan assigned address?
Title: Re: openwrt router works, linux box doesnt.
Post by: slaxative on October 24, 2008, 08:42:45 PM
Assigned the /64 to br-lan.
How do i modify the route to the correct host?
Shouldnt radvd take care of that?
Title: Re: openwrt router works, linux box doesnt.
Post by: broquea on October 24, 2008, 10:37:58 PM
yes, it should, i thought it odd that it would choose link-local

You can try restarting the linux machine's networking (/etc/init.d/network restart) and seeing if it picks up the correct information.
Or remove and setting the default route by hand (ip route del default dev eth0 ; ip route ::/0 dev eth0).

Also in all my configurations of radvd, I have "AdvRouterAddr" set to on. Maybe change yours from off to on and restart that linux machines networkiing
Title: Re: openwrt router works, linux box doesnt.
Post by: slaxative on October 25, 2008, 06:01:57 AM
Adjusted the line in radvd with no luck.
Still cant ping anything from Linux....
Title: SOLVED!!! Re: openwrt router works, linux box doesnt.
Post by: slaxative on October 25, 2008, 05:17:30 PM
Ok, I finally figured it out.
The line to forward ipv6 must be before you setup the tunnel on the router...
echo 1 > /proc/sys/net/ipv6/conf/all/forwarding
This MUST be done before the tunnel is setup on openwrt Kamikaze 7.09.
This works fine now.
Title: Re: openwrt router works, linux box doesnt.
Post by: slaxative on October 25, 2008, 06:18:15 PM
Thanks again for your help, by the way.
Title: Re: openwrt router works, linux box doesnt.
Post by: kriteknetworks on October 25, 2008, 06:56:32 PM
Defnitely before radvd is started since radvd will fail to start when it checks if forwarding is enabled and finds it off.
Title: Re: openwrt router works, linux box doesnt.
Post by: scarpa on November 13, 2008, 03:53:49 AM
I was having a similar problem to the first poster who couldn't ping an IPv6 host. I ended up having to change route -A inet6 add ::/0 dev sit1 into route -A inet6 add 2000::/3 sit1 like broquea suggested (worked like a charm btw =D). Now I'm having a problem where I cannot use any ip except 2001:470:1f04:1f8::2. I know my way around linux, just not very well so any help on how to fix this would be really appreciated. I'm running Ubuntu, uname -a is Linux planck 2.6.20-15-generic.
Title: Re: SOLVED!!! Re: openwrt router works, linux box doesnt.
Post by: jeverett on January 21, 2009, 11:52:23 PM
Quote from: slaxative on October 25, 2008, 05:17:30 PM
Ok, I finally figured it out.
The line to forward ipv6 must be before you setup the tunnel on the router...
echo 1 > /proc/sys/net/ipv6/conf/all/forwarding
This MUST be done before the tunnel is setup on openwrt Kamikaze 7.09.
This works fine now.
So how did you fix that?  Did you move the echo 1 > /proc/sys/net/ipv6/conf/all/forwarding from the /etc/init.d/radvd script to the beginning of your tunnel script?

What's the working order for setting up the tunnel, starting radvd, etc.?

I have a similar problem as you, but I can ping from the router and the LAN but any attempt to access IPv6 web sites times out (http://forum.openwrt.org/viewtopic.php?id=18548).

My /etc/rc.d now looks like this:
lrwxrwxrwx    1 root     root           19 Sep  9  2008 S40network -> /etc/init.d/network
lrwxrwxrwx    1 root     root           20 Sep  9  2008 S45firewall -> /etc/init.d/firewall
lrwxrwxrwx    1 root     root           23 Jan  1  2000 S47wlmacfilter -> /etc/init.d/wlmacfilter
lrwxrwxrwx    1 root     root           22 Jan  1  2000 S48tunhe-ipv6 -> /etc/init.d/tunhe-ipv6
lrwxrwxrwx    1 root     root           17 Jan  1  2000 S49radvd -> /etc/init.d/radvd

and I copied echo 1 > /proc/sys/net/ipv6/conf/all/forwarding to the beginning of my tunnel script.
#!/bin/sh /etc/rc.common
LOCALIP=x.x.x.x
POPIP=x.x.x.x
LOCTUN=2001:0db8:1234:4::2
REMTUN=2001:0db8:1234:4::1
START=48

start() {
        echo -n "Starting TunnelBroker.net IPv6 tunnel: "
        echo 1 > /proc/sys/net/ipv6/conf/all/forwarding
        ip tunnel add he-ipv6 mode sit local $LOCALIP remote $POPIP
        ip link set he-ipv6 up
        #ip link set mtu 1280 dev he-ipv6
        #ip tunnel change he-ipv6 ttl 64
        ip -6 addr add $LOCTUN/64 dev he-ipv6
        ip -6 ro add default via $REMTUN dev he-ipv6
        #ip -f inet6 addr
        echo "Done."
}
stop() {
        echo -n "Stopping TunnelBroker.net IPv6 tunnel: "
        ip link set he-ipv6 down
        ip tunnel del he-ipv6
        echo "Done."
}
restart() {
        stop
        start
}

But, I still get sketchy routing/connectivity.
Quote from: broquea on October 24, 2008, 10:37:58 PMAlso in all my configurations of radvd, I have "AdvRouterAddr" set to on.
I also added this setting to my /etc/radvd.conf and now my default router shows up as the non-link-local address.  I still have sketchy IPv6 performance however.