SixXS::Sunset 2017-06-06

Subnet Doesn't Work Through Router
[us] Shadow Hawkins on Saturday, 12 July 2008 05:55:48
I have a Linksys WRT54G running OpenWrt firmware (7.09). I have aiccu and radvd installed (and the rest of the IPv6 stack). I have no problem ping6-ing from the router, but I cannot get to any IPv6 sites from my computers. The routed computers do get IPv6 addresses in the subnet. ping6 on the routed computers will resolve the IPv6 address of a hostname, but never actually ping it. Here is my /etc/radvd.conf:
interface br-lan { AdvSendAdvert on; prefix 2001:2978:18b::/64 { AdvOnLink on; AdvAutonomous on; AdvRouterAddr on; }; };
Here is my /etc/init.d/radvd (I added the ip commands.):
#!/bin/sh /etc/rc.common # Copyright (C) 2006 OpenWrt.org START=50 start() { echo 1 > /proc/sys/net/ipv6/conf/all/forwarding mkdir -p /var/log mkdir -p /var/run ip -6 addr add 2001:4978:18b::1/64 dev br-lan ip -6 route add 2001:4978:18b::/64 dev br-lan /usr/sbin/radvd } stop() { killall radvd ip -6 route del 2001:4978:18b::/64 dev br-lan ip -6 addr del 2001:4978:18b::1/64 dev br-lan echo 0 > /proc/sys/net/ipv6/conf/all/forwarding }
I know the tunnel is working, but I can't get the subnet to route. Here's the IPv6 routing table (route -A inet6):
Kernel IPv6 routing table Destination Next Hop Flags Metric Ref Use Iface ::1/128 :: U 0 0 0 lo 2001:4978:f:173::/128 :: U 0 0 0 lo 2001:4978:f:173::1/128 2001:4978:f:173::1 UC 0 1 1 sixxs 2001:4978:f:173::2/128 :: U 0 22 0 lo 2001:4978:f:173::/64 :: U 256 1 0 sixxs 2001:4978:18b::/128 :: U 0 0 0 lo 2001:4978:18b::1/128 :: U 0 0 0 lo 2001:4978:18b::/64 :: U 256 0 0 br-lan 2001:4978:18b::/64 :: U 1024 0 0 br-lan fe80::/128 :: U 0 0 0 lo fe80::200:ff:fe00:0/128 :: U 0 13 0 lo fe80::20f:66ff:fe39:11b9/128 :: U 0 0 0 lo fe80::20f:66ff:fe39:11bb/128 :: U 0 0 0 lo fe80::4878:f:173:2/128 :: U 0 0 0 lo fe80::/64 :: U 256 0 0 eth0 fe80::/64 :: U 256 0 0 br-lan fe80::/64 :: U 256 0 0 eth0.0 fe80::/64 :: U 256 0 0 eth0.1 fe80::/64 :: U 256 0 0 wl0 fe80::/64 :: U 256 0 0 sixxs ff02::1/128 ff02::1 UC 0 1 1 br-lan ff00::/8 :: U 256 0 0 eth0 ff00::/8 :: U 256 0 0 br-lan ff00::/8 :: U 256 0 0 eth0.0 ff00::/8 :: U 256 0 0 eth0.1 ff00::/8 :: U 256 0 0 wl0 ff00::/8 :: U 256 0 0 sixxs ::/0 2001:4978:f:173::1 UG 1024 72 0 sixxs
If anyone can help me, it would be greatly appreciated.
Subnet Doesn't Work Through Router
[de] Shadow Hawkins on Saturday, 12 July 2008 08:02:20
Hi, I can't solve your problem, but at least I can say, your radv.conf looks good. I'm using OpenWRT (kernel 2.4.34) too, and that's my radvd.conf:
interface br-lan { AdvSendAdvert on; MinRtrAdvInterval 3; MaxRtrAdvInterval 10; # # Disable Mobile IPv6 support # AdvHomeAgentFlag off; # # example of a standard prefix # prefix 2a01:198:282::/64 # prefix fec0:0:0:1::/64 { AdvOnLink on; AdvAutonomous on; # AdvRouterAddr off; AdvRouterAddr on; }; };
And
/proc/sys/net/ipv6/conf/all/forwarding
is "1" here, too. This are my ipv6 sysctls, may be you can find differences at your settings:
root@OpenWrt:/etc/ppp/ip-up.d# sysctl -a | grep ipv6 sysctlnet.ipv6.conf.sixxs.router_solicitation_delay = 1 : error: 'net.ipv6.conf.eth0.1.router_solicitation_delay' is an unknown key sysctl: error: 'net.ipv6.conf.eth0.1.router_solicitation_interval' is an unknown key sysctl: net.ipv6.conf.sixxs.router_solicitation_interval = 4 net.ipv6.conf.sixxs.router_solicitations = 3 net.ipv6.conf.sixxs.dad_transmits = 1 net.ipv6.conf.sixxs.autoconf = 1 net.ipv6.conf.sixxs.accept_redirects = 1 net.ipv6.conf.sixxs.accept_ra = 1 net.ipv6.conf.sixxs.mtu = 1280 net.ipv6.conf.sixxs.hop_limit = 64 net.ipv6.conf.sixxs.forwarding = 1 net.ipv6.conf.wl0.router_solicitation_delay = 1 net.ipv6.conf.wl0.router_solicitation_interval = 4 net.ipv6.conf.wl0.router_solicitations = 3 net.ipv6.conf.wl0.dad_transmits = 1 net.ipv6.conf.wl0.autoconf = 1 net.ipv6.conf.wl0.accept_redirects = 1 net.ipv6.conf.wl0.accept_ra = 1 net.ipv6.conf.wl0.mtu = 1500 net.ipv6.conf.wl0.hop_limit = 64 net.ipv6.conf.wl0.forwarding = 1 error: 'net.ipv6.conf.eth0.1.router_solicitations' is an unknown key sysctl: error: 'net.ipv6.conf.eth0.1.dad_transmits' is an unknown key sysctl: error: 'net.ipv6.conf.eth0.1.autoconf' is an unknown key sysctl: error: 'net.ipv6.conf.eth0.1.accept_redirects' is an unknown key sysctl: error: 'net.ipv6.conf.eth0.1.accept_ra' is an unknown key sysctl: error: 'net.ipv6.conf.eth0.1.mtu' is an unknown key sysctl: error: 'net.ipv6.conf.eth0.1.hop_limit' is an unknown key sysctl: error: 'net.ipv6.conf.eth0.1.forwarding' is an unknown key sysctl: error: 'net.ipv6.conf.eth0.0.router_solicitation_delay' is an unknown key sysctl: error: 'net.ipv6.conf.eth0.0.router_solicitation_interval' is an unknown key sysctl: error: 'net.ipv6.conf.eth0.0.router_solicitations' is an unknown key sysctl: error: 'net.ipv6.conf.eth0.0.dad_transmits' is an unknown key sysctl: error: 'net.ipv6.conf.eth0.0.autoconf' is an unknown key sysctl: error: 'net.ipv6.conf.eth0.0.accept_redirects' is an unknown key sysctl: error: 'net.ipv6.conf.eth0.0.accept_ra' is an unknown key sysctl: error: 'net.ipv6.conf.eth0.0.mtu' is an unknown key sysctl: error: 'net.ipv6.conf.eth0.0.hop_limit' is an unknown key sysctl: error: 'net.ipv6.conf.eth0.0.forwarding' is an unknown key net.ipv6.conf.br-lan.router_solicitation_delay = 1 net.ipv6.conf.br-lan.router_solicitation_interval = 4 net.ipv6.conf.br-lan.router_solicitations = 3 net.ipv6.conf.br-lan.dad_transmits = 1 net.ipv6.conf.br-lan.autoconf = 1 net.ipv6.conf.br-lan.accept_redirects = 1 net.ipv6.conf.br-lan.accept_ra = 1 net.ipv6.conf.br-lan.mtu = 1500 net.ipv6.conf.br-lan.hop_limit = 64 net.ipv6.conf.br-lan.forwarding = 1 net.ipv6.conf.default.router_solicitation_delay = 1 net.ipv6.conf.default.router_solicitation_interval = 4 net.ipv6.conf.default.router_solicitations = 3 net.ipv6.conf.default.dad_transmits = 1 net.ipv6.conf.default.autoconf = 1 net.ipv6.conf.default.accept_redirects = 1 net.ipv6.conf.default.accept_ra = 1 net.ipv6.conf.default.mtu = 1280 net.ipv6.conf.default.hop_limit = 64 net.ipv6.conf.default.forwarding = 1 net.ipv6.conf.all.router_solicitation_delay = 1 net.ipv6.conf.all.router_solicitation_interval = 4 net.ipv6.conf.all.router_solicitations = 3 net.ipv6.conf.all.dad_transmits = 1 net.ipv6.conf.all.autoconf = 1 net.ipv6.conf.all.accept_redirects = 1 net.ipv6.conf.all.accept_ra = 1 net.ipv6.conf.all.mtu = 1280 net.ipv6.conf.all.hop_limit = 64 net.ipv6.conf.all.forwarding = 1 net.ipv6.conf.eth0.router_solicitation_delay = 1 net.ipv6.conf.eth0.router_solicitation_interval = 4 net.ipv6.conf.eth0.router_solicitations = 3 net.ipv6.conf.eth0.dad_transmits = 1 net.ipv6.conf.eth0.autoconf = 1 net.ipv6.conf.eth0.accept_redirects = 1 net.ipv6.conf.eth0.accept_ra = 1 net.ipv6.conf.eth0.mtu = 1500 net.ipv6.conf.eth0.hop_limit = 64 net.ipv6.conf.eth0.forwarding = 1 net.ipv6.conf.lo.router_solicitation_delay = 1 net.ipv6.conf.lo.router_solicitation_interval = 4 net.ipv6.conf.lo.router_solicitations = 3 net.ipv6.conf.lo.dad_transmits = 1 net.ipv6.conf.lo.autoconf = 1 net.ipv6.conf.lo.accept_redirects = 1 net.ipv6.conf.lo.accept_ra = 1 net.ipv6.conf.lo.mtu = 16436 net.ipv6.conf.lo.hop_limit = 64 net.ipv6.conf.lo.forwarding = 1 net.ipv6.neigh.sixxs.locktime = 0 net.ipv6.neigh.sixxs.proxy_delay = 80 net.ipv6.neigh.sixxs.anycast_delay = 100 net.ipv6.neigh.sixxs.proxy_qlen = 64 net.ipv6.neigh.sixxs.unres_qlen = 3 net.ipv6.neigh.sixxs.gc_stale_time = 60 net.ipv6.neigh.sixxs.delay_first_probe_time = 5 net.ipv6.neigh.sixxs.base_reachable_time = 30 net.ipv6.neigh.sixxs.retrans_time = 100 net.ipv6.neigh.sixxs.app_solicit = 0 net.ipv6.neigh.sixxs.ucast_solicit = 3 net.ipv6.neigh.sixxs.mcast_solicit = 3 net.ipv6.neigh.wl0.locktime = 0 net.ipv6.neigh.wl0.proxy_delay = 80 net.ipv6.neigh.wl0.anycast_delay = 100 net.ipv6.neigh.wl0.proxy_qlen = 64 net.ipv6.neigh.wl0.unres_qlen = 3 net.ipv6.neigh.wl0.gc_stale_time = 60 net.ipv6.neigh.wl0.delay_first_probe_time = 5 net.ipv6.neigh.wl0.base_reachable_time = 30 net.ipv6.neigh.wl0.retrans_time = 100 net.ipv6.neigh.wl0.app_solicit = 0 net.ipv6.neigh.wl0.ucast_solicit = 3 net.ipv6.neigh.wl0.mcast_solicit = 3 sysctl: error: 'net.ipv6.neigh.eth0.1.locktime' is an unknown key sysctl: error: 'net.ipv6.neigh.eth0.1.proxy_delay' is an unknown key sysctl: error: 'net.ipv6.neigh.eth0.1.anycast_delay' is an unknown key sysctl: error: 'net.ipv6.neigh.eth0.1.proxy_qlen' is an unknown key sysctl: error: 'net.ipv6.neigh.eth0.1.unres_qlen' is an unknown key sysctl: error: 'net.ipv6.neigh.eth0.1.gc_stale_time' is an unknown key sysctl: error: 'net.ipv6.neigh.eth0.1.delay_first_probe_time' is an unknown key sysctl: error: 'net.ipv6.neigh.eth0.1.base_reachable_time' is an unknown key sysctl: error: 'net.ipv6.neigh.eth0.1.retrans_time' is an unknown key sysctl: error: 'net.ipv6.neigh.eth0.1.app_solicit' is an unknown key sysctl: error: 'net.ipv6.neigh.eth0.1.ucast_solicit' is an unknown key sysctl: error: 'net.ipv6.neigh.eth0.1.mcast_solicit' is an unknown key sysctl: error: 'net.ipv6.neigh.eth0.0.locktime' is an unknown key sysctl: error: 'net.ipv6.neigh.eth0.0.proxy_delay' is an unknown key sysctl: error: 'net.ipv6.neigh.eth0.0.anycast_delay' is an unknown key sysctl: error: 'net.ipv6.neigh.eth0.0.proxy_qlen' is an unknown key sysctl: error: 'net.ipv6.neigh.eth0.0.unres_qlen' is an unknown key sysctl: error: 'net.ipv6.neigh.eth0.0.gc_stale_time' is an unknown key sysctl: error: 'net.ipv6.neigh.eth0.0.delay_first_probe_time' is an unknown key sysctl: error: 'net.ipv6.neigh.eth0.0.base_reachable_time' is an unknown key sysctl: error: 'net.ipv6.neigh.eth0.0.retrans_time' is an unknown key sysctl: error: 'net.ipv6.neigh.eth0.0.app_solicit' is an unknown key sysctl: error: 'net.ipv6.neigh.eth0.0.ucast_solicit' is an unknown key sysctl: error: 'net.ipv6.neigh.eth0.0.mcast_solicit' is an unknown key net.ipv6.neigh.br-lan.locktime = 0 net.ipv6.neigh.br-lan.proxy_delay = 80 net.ipv6.neigh.br-lan.anycast_delay = 100 net.ipv6.neigh.br-lan.proxy_qlen = 64 net.ipv6.neigh.br-lan.unres_qlen = 3 net.ipv6.neigh.br-lan.gc_stale_time = 60 net.ipv6.neigh.br-lan.delay_first_probe_time = 5 net.ipv6.neigh.br-lan.base_reachable_time = 30 net.ipv6.neigh.br-lan.retrans_time = 100 net.ipv6.neigh.br-lan.app_solicit = 0 net.ipv6.neigh.br-lan.ucast_solicit = 3 net.ipv6.neigh.br-lan.mcast_solicit = 3 net.ipv6.neigh.eth0.locktime = 0 net.ipv6.neigh.eth0.proxy_delay = 80 net.ipv6.neigh.eth0.anycast_delay = 100 net.ipv6.neigh.eth0.proxy_qlen = 64 net.ipv6.neigh.eth0.unres_qlen = 3 net.ipv6.neigh.eth0.gc_stale_time = 60 net.ipv6.neigh.eth0.delay_first_probe_time = 5 net.ipv6.neigh.eth0.base_reachable_time = 30 net.ipv6.neigh.eth0.retrans_time = 100 net.ipv6.neigh.eth0.app_solicit = 0 net.ipv6.neigh.eth0.ucast_solicit = 3 net.ipv6.neigh.eth0.mcast_solicit = 3 net.ipv6.neigh.lo.locktime = 0 net.ipv6.neigh.lo.proxy_delay = 80 net.ipv6.neigh.lo.anycast_delay = 100 net.ipv6.neigh.lo.proxy_qlen = 64 net.ipv6.neigh.lo.unres_qlen = 3 net.ipv6.neigh.lo.gc_stale_time = 60 net.ipv6.neigh.lo.delay_first_probe_time = 5 net.ipv6.neigh.lo.base_reachable_time = 30 net.ipv6.neigh.lo.retrans_time = 100 net.ipv6.neigh.lo.app_solicit = 0 net.ipv6.neigh.lo.ucast_solicit = 3 net.ipv6.neigh.lo.mcast_solicit = 3 net.ipv6.neigh.default.gc_thresh3 = 1024 net.ipv6.neigh.default.gc_thresh2 = 512 net.ipv6.neigh.default.gc_thresh1 = 128 net.ipv6.neigh.default.gc_interval = 30 net.ipv6.neigh.default.locktime = 0 net.ipv6.neigh.default.proxy_delay = 80 net.ipv6.neigh.default.anycast_delay = 100 net.ipv6.neigh.default.proxy_qlen = 64 net.ipv6.neigh.default.unres_qlen = 3 net.ipv6.neigh.default.gc_stale_time = 60 net.ipv6.neigh.default.delay_first_probe_time = 5 net.ipv6.neigh.default.base_reachable_time = 30 net.ipv6.neigh.default.retrans_time = 100 net.ipv6.neigh.default.app_solicit = 0 net.ipv6.neigh.default.ucast_solicit = 3 net.ipv6.neigh.default.mcast_solicit = 3 net.ipv6.mld_max_msf = 10 net.ipv6.bindv6only = 0 net.ipv6.icmp.ratelimit = 100 net.ipv6.route.min_adv_mss = 12 net.ipv6.route.mtu_expires = 600 net.ipv6.route.gc_elasticity = 0 net.ipv6.route.gc_interval = 30 net.ipv6.route.gc_timeout = 60 net.ipv6.route.gc_min_interval = 0 net.ipv6.route.max_size = 4096 net.ipv6.route.gc_thresh = 1024
Thomas
Subnet Doesn't Work Through Router
[ch] Jeroen Massar SixXS Staff on Saturday, 12 July 2008 10:37:08
root@gehenna:~# cat /etc/radvd.conf # For more examples, see the radvd documentation. interface eth0.0 { AdvSendAdvert on; prefix 2001:41e0:ff42:b00::/64 { }; }; Is the only thing you need for radvd, nothing more, nothing less. (Forwarding enabled of course, and 2000::/3 for stupid kernels, and you have to manually add the local IPv6 address on that interface.)
Subnet Doesn't Work Through Router
[ch] Jeroen Massar SixXS Staff on Saturday, 12 July 2008 10:35:13
It is a little stupid thing in Linux, you will have to also have a 2000::/3 route to the nexthop router (the PoP). (it is mentioned in the FAQ, but it is indeed not something you might think about and guess... but that is where a forum is for ;) Thus add: ip -6 ro add 2000::/3 via 2001:4978:f:173::1
ip -6 addr add 2001:4978:18b::1/64 dev br-lan
ip -6 route add 2001:4978:18b::/64 dev br-lan
The first one is enough there btw. If you check the routing list you see two entries, you only need the first one. I am using OpenWRT/X-WRT very happily btw ;)
Subnet Doesn't Work Through Router
[us] Shadow Hawkins on Saturday, 12 July 2008 22:21:47
ip -6 ro add 2000::/3 via 2001:4978:f:173::1 does nothing. (I didn't think it would seeing as ::/0 via 2001:4978:f:173::1 was already in the routing table.) traceroute6 on a routed computer gives me:
traceroute to ipv6.google.com (2001:4860:0:2001::68), 30 hops max, 40 byte packets send failed: Operation not permitted send failed: Operation not permitted send failed: Operation not permitted send failed: Operation not permitted send failed: Operation not permitted send failed: Operation not permitted send failed: Operation not permitted send failed: Operation not permitted send failed: Operation not permitted send failed: Operation not permitted send failed: Operation not permitted send failed: Operation not permitted send failed: Operation not permitted send failed: Operation not permitted send failed: Operation not permitted send failed: Operation not permitted send failed: Operation not permitted send failed: Operation not permitted
The problem must be my router because ping6 2001:4978:18b::1 (the router) does not work.
Subnet Doesn't Work Through Router
[ch] Jeroen Massar SixXS Staff on Saturday, 12 July 2008 23:00:44
ip -6 ro add 2000::/3 via 2001:4978:f:173::1 does nothing.
(I didn't think it would seeing as ::/0 via 2001:4978:f:173::1 was
already in the routing table.)
Due to the Linux networking folks thinking that ::/0 was not a good thing for a default route as it might forward link-locals, site-locals and other such addresses, for some kernels (fixed in 2.6's), when you enable IPv6 forwarding, ::/0 is not a default for forwarded packets, and one has to use 2000::/3. On the kernel used in OpenWRT Kamikaze this problem is the case.
traceroute6 on a routed computer gives me:
traceroute to ipv6.google.com (2001:4860:0:2001::68), 30 hops max, 40 byte
packets
send failed: Operation not permitted
Check 'ip6tables' if you are blocking yourself, that is most likely the only thing which can cause that error message.

Please note Posting is only allowed when you are logged in.

Static Sunset Edition of SixXS
©2001-2017 SixXS - IPv6 Deployment & Tunnel Broker