一人いることを見たmetric
キーワードdhcpcd.conf
(説明したように、例えばhttps://unix.stackexchange.com/a/413036/47009)これにより、特定のインターフェイスのルート優先順位を設定できます。
しかし、私の考えではただこのインターフェースの接続の指標を設定しますlink-local
(同じインターフェースの異なる接続タイプに異なる指標を使用します)。
可能ですか?それでは、どうすればいいですか?
背景
ネットワークを設定しています(Raspberry Piでは、しかしそれはポイントではありません)dhcpcd
。
簡単な設定(シングル接続)で、DHCP
インターフェイスの内外の接続に非常に効果的です。link-local
eth0
DHCP
wlan0
残念ながら、私の一般的なユースケースには、ユーザーがラップトップとlink-local
RPi(VNCを介したヘッドレスデバイス制御)間の接続を介して接続し、「インターネットアクセス」のためにWiFiを介してRPiを一部のネットワークに接続するデュアル接続設定が含まれます。 。 (ユーザーは技術に精通していないため、接続のためのアップリンク接続を提供するルーターとして機能するようにラップトップを設定することはできません。link-local
)
今私が直面した問題は両方イーサネットlink-local
接続とWiFiDHCP
接続、両方の接続にはパスdefault
が定義されており(それ自体は問題ではありません)、そのlink-local
接続はWiFi接続よりも優先されます。link-local
ピアがルーティングを実行するように設定されていないため、実際にはデバイスがルーティングを実行しないことを意味します。布材 default
ルートなので「インターネットアクセス」はありません。
$ ip route show
default dev eth0 scope link src 169.254.204.108 metric 202
default via 192.168.64.1 dev wlan0 proto dhcp metric 303
169.254.0.0/16 dev eth0 scope link src 169.254.204.108 metric 202
192.168.64.0/21 dev wlan0 proto kernel scope link src 192.168.69.188 metric 303
(metric
低い値が好ましい)
dhcpcd
通常、イーサネット接続はWiFi接続より高速で信頼性が高いため、デフォルトは意味があることがよくあります。
DHCP
だから私はイーサネット接続をWiFi接続よりも高い優先順位に保ちたいのですが、link-local
イーサネット接続の優先順位は最も低いです(最も高いmetric
)。
追加情報
すべてのテストは次のように行われます。
$ dhcpcd --version
dhcpcd 8.1.2
Copyright (c) 2006-2019 Roy Marples
Compiled in features: INET ARP ARPing IPv4LL INET6 DHCPv6 AUTH
のようにコメント、リンクローカル接続にはルーティングがまったくありません(私にとっては大丈夫です)。
したがって、この問題をさらにデバッグするために私が持っているすべてを提供します/etc/dhcpcd.conf
。
hostname
clientid
persistent
option rapid_commit
option domain_name_servers, domain_name, domain_search, host_name
option classless_static_routes
option interface_mtu
option ntp_servers
require dhcp_server_identifier
slaac private
allowinterfaces eth0
ご覧のとおり、dhcpcd
管理のみが可能ですeth0
(すべてのネットワーク接続を管理すると上記でうそをつきました。dhcpcd
実際にWiFi接続はNetworkMangerによって管理されています(そしてunmanaged-devices=interface-name:eth0
NetworkManger設定には行があります)。
NetworkManagerに問題がないかどうかを確認するために一時的に無効にして再起動しました。
ネットワークケーブルを接続すると、ログに以下が表示されます。
Nov 09 17:02:14 mungus dhcpcd[451]: eth0: using IPv4LL address 169.254.204.108
Nov 09 17:02:14 mungus dhcpcd[451]: eth0: adding route to 169.254.0.0/16
Nov 09 17:02:14 mungus dhcpcd[451]: eth0: adding default route
Nov 09 17:02:14 mungus avahi-daemon[532]: Joining mDNS multicast group on interface eth0.IPv4 with address 169.254.204.108.
Nov 09 17:02:14 mungus avahi-daemon[532]: New relevant interface eth0.IPv4 for mDNS.
Nov 09 17:02:14 mungus avahi-daemon[532]: Registering new address record for 169.254.204.108 on eth0.IPv4.