netplan でDHCP設定すると metric ばぶっ壊れる件
表題のとおりです。
問題点
RaspberryPi4の、eth0 と wlan0 が接続されたUbuntuシステムで、netplan を設定するとmetric がおかしい。
パケットがすべてWif( wlan 0 ) 経由になってしまう。
原因
eth0 と wlan0 なら、wlan0のほうが接続が遅く、同一DHCPから割り当てると、あとから来たほうが優先されている。
netplan に metric を設定しても無駄。
再現方法
netplan で wifi を接続する
network: version: 2 renderer: networkd wifis: wlan0: dhcp6: false dhcp4: false addresses: [192.168.1.249/24] gateway4: 192.168.1.1 dhcp4-overrides: route-metric: 200 routes: - to: 192.168.1.0/24 via: 192.168.1.1 metric: 200 - to: default via: 192.168.1.1 metric: 200 access-points: "takuya.mywif.local": password: "***********"
networkd で、eth0 を設定する。
[Match] Name=macvlan0 [Network] DHCP=no Address=192.168.1.240/24 Gateway=192.168.1.1 DNS=192.168.1.1 DNS=192.168.1.5 LinkLocalAddressing=no [Route] Destination=192.168.1.0/24 Metric=1
結果
default via 192.168.1.1 dev eth0 proto static default via 192.168.1.1 dev wlan0 proto dhcp src 192.168.2.249 metric 200 192.168.2.0/24 dev wlan0 proto kernel scope link src 192.168.1.249 ### ←おいおい、わたしmetricいれたよな 192.168.2.1 dev wlan0 proto dhcp scope link src 192.168.1.249 metric 200 192.168.2.0/24 dev eth0 proto kernel scope link src 192.168.1.240 192.168.2.0/24 dev eth0 proto static metric 1
結論
netplan の metric はおかしい。
さらに、詳細に調べれば、原因が突き止められるかもしれないが、めんどくさいので netpaln すてて、 netowkrd + wpa_supplicant で Wifi 接続することにする。
netplan 怖いよ。renderer を network-managerに変えようかと思ったけど、もうしんどい。
経路が指定できないので、手動で ip route del / ip route add するのに疲れたのでもう諦める。
どっかで設定間違えたかなぁ。
個人的には、wlan0 とeth0 が共通サブネットとゲートウェイなら、eth0を優先してほしいんだけどなぁ