DHCP(dhclientを使用)を介してIPを受信する2つのipv6インターフェイス(eth1とeth2)がありますが、パスはこれらのインターフェイスが接続されているスイッチからRAメッセージを介して受信されます。 RAメッセージはルーティングメトリックを提供しないため(そしてメトリックはスイッチ側で設定しないでください)、カーネルのすべてのデフォルトメトリック1024が割り当てられます。 「ip -6 パスの表示」結果では、パスは次のようになります。
default via fe80::fe33:4201:546:66e0 dev eth2 proto ra metric 1024 expires 56sec hoplimit 64 pref medium
default via fe80::fe33:4201:546:66e0 dev eth1 proto ra metric 1024 expires 56sec hoplimit 64 pref medium
したがって、eth1のデフォルトメトリックを設定して、eth1がeht2よりも高い優先順位を持つようにする必要があります。問題は、デバイス内部でこれを行う方法です。
私はいくつかの方法を試しましたが、制限のために私の場合はすべて機能しません。
netlinkソリューションは新しいパスを削除して追加できますが、RA経由で追加するにはカーネルが必要です。
古いカーネル(4.9.248-1.21pre)を使用しているため、net.ipv6.conf.eth0.net.ipv6.conf.eth0.ra_defrtr_metricを使用してデフォルトの指標を設定することはできません。
RAを介してパスを受信する必要があるため、他のDHCPクライアント(DHCPCDなど)を使用することはできません。したがって、RAの非活性化を考慮する他のすべての方法を除外するには
インターフェイスは手動で無視されるため、/etc/network/interfacesで指標を設定できません。
auto ethx
iface ethx inet manual