私は、DHCP で設定された 2 つのインターフェースを持つ Debian マシンを持っています。
allow-hotplug eth0
iface eth0 inet dhcp
allow-hotplug eth1
iface eth1 inet dhcp
起動時に、eth1 にデフォルト ルートが追加されます。
0.0.0.0 10.200.10.253 0.0.0.0 UG 0 0 0 eth1
10.0.2.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
10.200.10.0 0.0.0.0 255.255.255.0 U 0 0 0 eth1
しかし、デフォルト ルートを eth0 のゲートウェイにする必要があります。デフォルト ルートを削除し、起動後に dhclient を実行すると、次のように動作します。
$ sudo route del default
$ sudo dhclient -v eth0
これを に装着できることはわかっていますrc.local
が、もっと「クリーン」な方法はありますか?
静的アドレスは使用できません。
答え1
私には、生成された両方の DHCP クライアントが、それぞれ対応する iface でデフォルト ゲートウェイを取得して競合しているように見えます。このようにして、eth1
(何らかの理由で) オンになっているクライアントが確実に勝利します。
解決策は設定によって異なるため、明らかではないようです。論理的には、DHCP を使用してデフォルトの GW を取得するということは、その場所を気にする必要がないことを意味します。
interface eth1 {
supersede routers ""
}
に/etc/dhcp/dhclient.conf
何が起こるか見てみましょう。アイデアは、DHCP サーバーによって提供されたsupersede
何も経由せずに到達することです。routers
eth1