ラズパイでWiFiドングルを刺したときに、WiFiドングルの方で優先して通信するようにしたい。
ただし、WiFiドングルが刺さってないときは、ラズパイオンボードのWiFiモジュールを使うようにしたい。
こんな時に使える方法です。
やること
やるべきことは2つ。
-
/etc/dhcpcd.conf
に優先度情報を記述 -
/etc/udev/rules.d/70-persistent-net.rules
でNICのデバイス名(wlan0, wlan1とか)を固定
/etc/dhcpcd.conf
に優先度情報を記述
今回は、wlan0をオンボードのWiFiモジュール、wlan1をUSBドングルのWiFiとします。
ファイルの末尾に次のような行を追記して保存してください。
metricの値が小さいほうが優先されます。
interface wlan1
metric 201
interface wlan0
metric 202
interface eth0
metric 300
/etc/udev/rules.d/70-persistent-net.rules
でNICのデバイス名(wlan0, wlan1とか)を固定
次に、/etc/udev/rules.d/70-persistent-net.rules
を新規作成し、次のようにします。
SUBSYSTEM=="net",ACTION=="add",ATTR{address}=="XX:XX:XX:XX:XX:XX",NAME="wlan0"
SUBSYSTEM=="net",ACTION=="add",ATTR{address}=="YY:YY:YY:YY:YY:YY",NAME="wlan1"
ここで、wlan0は、USBドングルを抜いてifconfig -a
をした時のwlanのetherを、wlan1にはUSBを刺した時に追記されるwlanのetherを指定してください。
あとは再起動すれば設定が反映されています。
参考
https://raspberry-projects.com/pi/pi-operating-systems/raspbian/network-settings/routing-table
https://qiita.com/gm_kou/items/e4ec250557628958a6b4