web-dev-qa-db-ja.com

デフォルトのルートとしてwlan dhcpインターフェースを優先するルーティングテーブルを設定する方法は?

eth0には、静的IPが/etc/interfacesに設定されています

wlan0は動的にIPを取得します

どうすればルーティングテーブルを変更できますか。また、インターネットアクセスが機能するように、wlan0を常にデフォルトルートにするコマンドをどこに配置すればよいですか。現在、eth0またはwlan0のいずれかを使用してsshでボックスに入ることができますが、インターネットアクセスは常に機能しないeth0経由でルーティングされます。

また、自動とホットプラグの許可は矛盾するオプションですか?

Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
default         192.168.20.1    0.0.0.0         UG    0      0        0 eth0
192.168.10.0    *               255.255.255.0   U     0      0        0 wlan0
192.168.20.0    *               255.255.255.0   U     0      0        0 eth0

source-directory /etc/network/interfaces.d
auto lo
iface lo inet loopback
auto eth0
allow-hotplug eth0
iface eth0 inet static
        address 192.168.20.2
        netmask 255.255.255.0
        gateway 192.168.20.1
allow-hotplug wlan0
iface wlan0 inet dhcp
    wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf
allow-hotplug wlan1
iface wlan1 inet dhcp
    wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf
6
dpetican

優先インターフェースを定義するには、インターフェースでmetricディレクティブを使用します。値が高いほど、優先度は低くなります。

allow-hotplug eth0
iface eth0 inet static
    address 192.168.20.2
    netmask 255.255.255.0
    gateway 192.168.20.1
    metric 30
allow-hotplug wlan0
iface wlan0 inet dhcp
    wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf
    metric 10

次に、次のコマンドでネットワークサービスを再起動します。

service networking restart

From Debian Reference-Chapter 5. Network setup から

Ifmetricパッケージを使用すると、DHCPの場合でも、事後的にルートのメトリックを操作できます。

以下は、eth0インターフェースをwlan0インターフェースよりも優先するように設定します。

Ifmetricパッケージをインストールします。

"/ etc/network/interfaces"の "iface eth0 inet dhcp"行のすぐ下に "metric 0"のオプション行を追加します。

「/ etc/network/interfaces」の「iface wlan0 inet dhcp」行のすぐ下に「metric 1」のオプション行を追加します。

メトリック0は最も優先度の高いルートを意味し、デフォルトのルートです。メトリック値が大きいほど、優先度の低いルートを意味します。最も低いメトリック値を持つアクティブなインターフェースのIPアドレスが、発信元のIPアドレスになります。 ifmetric(8)を参照してください。

7
Rui F Ribeiro