
私は、OpenWrt を実行しているルーターと、Yocto で構築された組み込み Linux を搭載したマシンを持っています。C アプリケーションでリースの更新を検出する必要があります。ルーターでリース時間を 30 秒に減らします。Linux を OpenWrt ネットワークにログオンして DHCPv6 アドレスを取得すると、Linux からルーターに ping を実行できます (DHCPv6 サーバーによって割り当てられたアドレスから)。しかし、アドレスが更新されるたびに、ping は何も表示しなくなります。エラーはなく、ネットワークが到達不能であるという情報もなく、ただ何も表示されません。この時点で、tcpdump は ICMP6 エコー要求と ICMP6 エコー再生をまだ表示しています。アドレスを更新した後、ping が何も表示しないのはなぜでしょうか。
これは私のルーターの設定です/etc/config/dhcp
:
config dhcp 'lan'
option interface 'lan'
option start '100'
option limit '50'
option leastime '30s'
option dhcpv6 'server'
option ra 'server'
option ra_useleasetime '1'
option ra_lifetime '30'
編集
でテストを 3 回繰り返しましたip -6 route
が、変更されたメトリックのエントリは取得されませんでした。変更されたのは有効期限のみです。pingip -6 route
が機能する場合:
fd33:a242:c52a::581 dev wlan0 proto kernel metric 256 pref medium
fd33:a242:c52a::/64 dev wlan0 proto kernel metric 256 expires 53sec pref medium
fe80::/64 dev eth0 proto kernel metric 256 pref medium
fe80::/64 dev wlan0 proto kernel metric 256 pref medium
ff00::/8 dev eth0 metric 256 pref medium
ff00::/8 dev wlan0 metric 256 pref medium
ping が機能しない場合:
fd33:a242:c52a::581 dev wlan0 proto kernel metric 256 pref medium
fd33:a242:c52a::/64 dev wlan0 proto kernel metric 256 expires 51sec pref medium
fe80::/64 dev eth0 proto kernel metric 256 pref medium
fe80::/64 dev wlan0 proto kernel metric 256 pref medium
ff00::/8 dev eth0 metric 256 pref medium
ff00::/8 dev wlan0 metric 256 pref medium