#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

Reply via email to