二重デフォルトゲートウェイ Ubuntu サーバー

二重デフォルトゲートウェイ Ubuntu サーバー

EEEBoxにUbuntuサーバ9.10をインストールしました。これは私の/etc/network/interfacesです。

# The loopback network interface 
auto lo
iface lo inet loopback

auto wlan0 iface wlan0 inet static 
address 192.168.48.16 
netmask 255.255.248.0 
wireless-essid mynet

auto eth0
iface eth0 inet static
address xx.xx.xx.xx
netmask 255.255.255.224
gateway xx.xx.yy.yy

再起動すると/etc/init.d/networking、インターネットから eth0 IP アドレスにアクセスでき、WiFi ネットワーク mynet 内のマシンに ping を実行できます。すべて正常に動作し、デフォルト ゲートウェイが 1 つあります。

しかし、しばらくしてルートを再度確認すると、デフォルト ゲートウェイが 2 つ見つかります。1 つは正しく、以前のものですが、もう 1 つは Wi-Fi ネットワークのものです。

私のサーバーがある mynet の信号はかなり弱く、Wi-Fi が切断されてから再接続されることがあります。これは問題になる可能性があり、Wi-Fi ネットの DHCP は再接続時にデフォルト ゲートウェイも追加すると思います。この問題を解決する方法について何かアイデアはありますか?

答え1

から:http://www.linuxhorizo​​n.ro/iproute2.html

次のようなことを試してください:

echo "1 admin" >> /etc/iproute2/rt_tables
ip route add 192.168.48.16/24 dev wlan0 src 192.168.48.16 table admin
ip route add default via 192.168.48.16 dev wlan0 table admin
ip rule add from xx.xx.xx.xx/32 table admin
ip rule add to xx.xx.xx.xx/32 table admin

ip rule add from 192.168.48.16/32 table admin
ip rule add to xx.xx.xx.xx/32 table admin

警告、未テスト。ただし、インターフェイス X に着信するトラフィックがインターフェイス X から発信されることも確認する必要があります。

答え2

私が信じる何が起こっているかというと、DHCP クライアントがどこかから生成され、2 番目のデフォルト ルートを取得しているということです。

この 2 番目のデフォルト ルートを避けて、それが由来した地獄の底に捨てるのではなく、有線ネットワークがなくなった場合に限り、それを保持するのはどうでしょうか。

これを実現するために、接続のインターフェース メトリックを設定し、有線イーサネットがワイヤレス (稼働中の場合) よりも優先されるようにします。

メトリックを「コスト」として考えてください。オペレーティング システムは、メトリックが最も低いネットワーク アダプターを最初に使用します。

OS は、より低いメトリックのインターフェースが存在しない場合にのみ、このより高いメトリックのインターフェースを使用します。

# The loopback network interface 
auto lo
iface lo inet loopback

auto wlan0 
iface wlan0 inet static 
address 192.168.48.16 
netmask 255.255.248.0 
wireless-essid mynet
metric 100

auto eth0
iface eth0 inet static
address xx.xx.xx.xx
netmask 255.255.255.224
gateway xx.xx.yy.yy
metric 50

答え3

斬新な答えをいくつか挙げます。

  • 使用していないときは Wi-Fi を無効にします。

  • 有線接続の場合に常に有線のデフォルト ルートが優先されるように、DHCP サーバーを設定して、より高いメトリック (2 など) を持つデフォルト ルートを発行します。

関連情報