#19262: odhcp6c does not set default route (r44918 / ar71xx)
----------------------+------------------------
Reporter: risa2000 | Owner: developers
Type: defect | Status: new
Priority: normal | Milestone:
Component: packages | Version: Trunk
Keywords: odhcp6c |
----------------------+------------------------
The previous build which has been working correctly in the same
environment
was r44232. When it got broken I do not know. I am running TL-WR1043NDv2.
My network configuration is
following.
/etc/config/network excerpt
{{{
config interface lan
option ifname eth1
option type bridge
option proto static
option ipaddr 192.168.6.10
option netmask 255.255.255.0
option ip6addr 2a01:x:y:z::6/64
config interface wan
option ifname eth0
option proto dhcp
config interface wan6
option ifname eth0
option proto dhcpv6
}}}
/etc/config/dhcp excerpt
{{{
config dhcp 'lan'
option interface 'lan'
option start '100'
option limit '150'
option leasetime '12h'
list dhcp_option 'vendor:MSFT,1,2i'
list dhcp_option 'vendor:MSFT,2,1i'
list dhcp_option 'option:ntp-server,0.0.0.0'
list dhcp_option '252,"\n"'
option ra 'server'
option ndp 'relay'
config dhcp 'wan6'
option interface 'wan6'
option master '1'
option ndp 'relay'
config odhcpd 'odhcpd'
option maindhcp '0'
option leasefile '/tmp/hosts/odhcpd'
option leasetrigger '/usr/sbin/odhcpd-update'
}}}
This leads to following IP configuration:
{{{
root@risa-wrt:~# ip -6 addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qlen 1000
inet6 2a01:x:y:z:12fe:edff:fee6:5da9/64 scope global dynamic
valid_lft 85842sec preferred_lft 85842sec
inet6 fe80::12fe:edff:fee6:5da9/64 scope link
valid_lft forever preferred_lft forever
5: br-lan: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500
inet6 2a01:x:y:z:12fe:edff:fee6:5da9/64 scope global dynamic
valid_lft 85842sec preferred_lft 85842sec
inet6 2a01:x:y:z::6/64 scope global
valid_lft forever preferred_lft forever
inet6 fe80::12fe:edff:fee6:5da8/64 scope link
valid_lft forever preferred_lft forever
6: wlan0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qlen 1000
inet6 fe80::12fe:edff:fee6:5da8/64 scope link
valid_lft forever preferred_lft forever
}}}
My ISP modem provides 2a01:x:y:z::/64 subnet to my router on eth0 using
SLAAC:
{{{
root@risa-wrt:~# tcpdump -i eth0 -n v -f icmp6
16:55:16.385001 IP6 (hlim 255, next-header ICMPv6 (58) payload length:
104) fe80::207:cbff:fe96:d1de > ff02::1: [icmp6 sum ok] ICMP6, router
advertisement, length 104
hop limit 64, Flags [none], pref medium, router lifetime 1800s, reachable
time 0s, retrans time 0s
prefix info option (3), length 32 (4): 2a01:x:y:z::/64, Flags [onlink,
auto], valid time 86400s, pref. time 86400s
rdnss option (25), length 40 (5): lifetime 600s, addr: 2a01:e00::2
addr: 2a01:e00::1
mtu option (5), length 8 (1): 1480
source link-address option (1), length 8 (1): 00:07:cb:96:d1:de
16:55:17.588245 IP6 (hlim 255, next-header ICMPv6 (58) payload length: 32)
fe80::12fe:edff:fee6:5da9 > ff02::1:ff00:6: [icmp6 sum ok] ICMP6, neighbor
solicitation, length 32, who has 2a01:x:y:z::6
source link-address option (1), length 8 (1): 10:fe:ed:e6:5d:a9
16:55:18.584165 IP6 (hlim 255, next-header ICMPv6 (58) payload length: 32)
fe80::12fe:edff:fee6:5da9 > ff02::1:ff00:6: [icmp6 sum ok] ICMP6, neighbor
solicitation, length 32, who has 2a01:x:y:z::6
source link-address option (1), length 8 (1): 10:fe:ed:e6:5d:a9
16:55:19.584157 IP6 (hlim 255, next-header ICMPv6 (58) payload length: 32)
fe80::12fe:edff:fee6:5da9 > ff02::1:ff00:6: [icmp6 sum ok] ICMP6, neighbor
solicitation, length 32, who has 2a01:x:y:z::6
source link-address option (1), length 8 (1): 10:fe:ed:e6:5d:a9
}}}
What is strange here are following "neighbour solicitation" packets
originated
on eth0 interface and requesting br-lan interface. But the remote DNS has
been
resolved correctly:
{{{
cat /tmp/resolv.conf.auto
# Interface wan
nameserver 212.27.40.240
nameserver 212.27.40.241
# Interface wan6
nameserver 2a01:e00::2
nameserver 2a01:e00::1
}}}
As confirms also ping to google:
{{{
root@risa-wrt:~# ping -6 www.google.com
PING www.google.com (2a00:1450:4002:803::1014): 56 data bytes
ping: sendto: Permission denied
}}}
It is just the default route which is missing:
{{{
root@risa-wrt:~# ip -6 route
2a01:x:y:z::6 dev br-lan proto static metric 1024
2a01:x:y:z:12fe:edff:fee6:5da9 dev br-lan proto static metric 1024
2a01:x:y:z:80f2:8dc9:cae3:7925 dev br-lan proto static metric 1024
2a01:x:y:z:c71b:460e:f24a:4947 dev br-lan proto static metric 1024
2a01:x:y:z::/64 dev eth0 proto static metric 256
2a01:x:y:z::/64 dev br-lan proto kernel metric 256 expires 86348sec
fe80::/64 dev br-lan proto kernel metric 256
fe80::/64 dev eth0 proto kernel metric 256
fe80::/64 dev wlan0 proto kernel metric 256
}}}
Adding the route manually (using address from the router advertisement)
fixes
the problem:
{{{
root@risa-wrt:~# ip -6 route add default via fe80::207:cbff:fe96:d1de dev
eth0
root@risa-wrt:~# ip -6 route
2a01:x:y:z::6 dev br-lan proto static metric 1024
2a01:x:y:z:12fe:edff:fee6:5da9 dev br-lan proto static metric 1024
2a01:x:y:z:80f2:8dc9:cae3:7925 dev br-lan proto static metric 1024
2a01:x:y:z:c71b:460e:f24a:4947 dev br-lan proto static metric 1024
2a01:x:y:z::/64 dev eth0 proto static metric 256
2a01:x:y:z::/64 dev br-lan proto kernel metric 256 expires 86190sec
fe80::/64 dev br-lan proto kernel metric 256
fe80::/64 dev eth0 proto kernel metric 256
fe80::/64 dev wlan0 proto kernel metric 256
default via fe80::207:cbff:fe96:d1de dev eth0 metric 1024
root@risa-wrt:~# ping -6 www.google.com
PING www.google.com (2a00:1450:400b:c01::93): 56 data bytes
64 bytes from 2a00:1450:400b:c01::93: seq=0 ttl=55 time=47.169 ms
64 bytes from 2a00:1450:400b:c01::93: seq=1 ttl=55 time=47.222 ms
64 bytes from 2a00:1450:400b:c01::93: seq=2 ttl=55 time=47.780 ms
^C
--- www.google.com ping statistics ---
3 packets transmitted, 3 packets received, 0% packet loss
}}}
--
Ticket URL: <https://dev.openwrt.org/ticket/19262>
OpenWrt <http://openwrt.org>
Opensource Wireless Router Technology
_______________________________________________
openwrt-tickets mailing list
[email protected]
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-tickets