Ubuntu 9.04を実行しているコンピューターに2つのイーサネットインターフェイスがあります。どちらのインターフェースも静的IPを使用しますが、個別のゲートウェイを使用します。私の/etc/network/interfaces
ファイルは次のようになります。
auto eth0 eth1 iface eth0 inet static address 10.0.0.5 netmask 255.255.255.0 gateway 10.0.0.1 iface eth1 inet static address 192.168.2.5 netmask 255.255.255.0 gateway 192.168.2.1
大規模なインターネットへのすべてのトラフィックにeth0
を通過させたいのですが、eth1
を通過させたいようです。代わりにeth0
を介して一般的な送信トラフィックをチャネリングし、サブネットへのトラフィックにeth1
のみを使用する方法はありますか?
答えは永続的でなければなりません。つまり、スーパーユーザーが再起動後にコマンドを実行する必要なく、再起動後も存続するはずです。
[〜#〜] edit [〜#〜]:要求どおり、ここにroute -n
コマンドの出力があります。
カーネルIPルーティングテーブル 宛先ゲートウェイGenmaskフラグメトリックRef Use Iface 10.0.0.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0 192.168.2.0 0.0 .0.0 255.255.255.0 U 0 0 0 eth1 169.254.0.0 0.0.0.0 255.255.0.0 U 1000 0 0 eth1 0.0.0.0 192.168.2.1 0.0.0.0 UG 100 0 0 eth1 0.0.0.0 10.0.0.1 0.0.0.0 UG 100 0 0 eth0
デフォルトゲートウェイは1つだけです。ゲートウェイの行をeth1から削除すると、すべて正常に機能します(ネットワークの再起動後)。
/ etc/network/interfacesのeth1からゲートウェイを削除し、静的ルートとして追加します。
route add -net 192.168.2.0 netmask 255.255.255.0 gw 192.168.2.1
これにより、10.0.0.1がデフォルトゲートウェイになり、eth1は192.168.2.0ネットワークへの接続にのみ使用されます
提案されているようにルーティングテーブルをルーティングで変更すると、これは一時的に修正されますが、次回の起動時に現在の状態に戻ります。
/etc/rc.localまたは他のある種のinitスクリプトでルートルールを設定することは可能ですが、この場合、最も簡単なオプションは、インターフェースファイルのeth1からゲートウェイを削除することです。
そのゲートウェイを削除しても、そのシステムは引き続きeth1をルート192.168.2/24として自動的に使用しますが、他のすべてのトラフィックはeth0経由でルーティングします。
ルートを入力して、現在のルーティングテーブルを確認します。マシンは、ルーティングテーブルにある最初のデフォルトgwを使用します。これは、デフォルトで、または宛先として0.0.0.0で示されます。 eth1のみをローカルの192.168.2.0/24ネットワークに使用する場合は、gatewayコマンドを削除します。これにより、eth1のデフォルトgwが唯一のデフォルトになります。
私はこのソリューションを4年以上使用しており、 Linode wikiで公開 を使用しており、問題なく動作しています。編集/etc/network/interfaces
と一致させます。
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
# The loopback network interface
auto lo
iface lo inet loopback
# The primary network interface
auto eth0
iface eth0 inet static
address <the outbound IP>
netmask <the netmask for the outbound IP, usually 255.255.255.0>
gateway <the gateway for the outbound IP>
up /sbin/ip addr add <the primary IP>/24 dev eth0