6

と の 2 つのインターフェイスを備えたシステムがeth0ありeth1ます。

  • eth0192.168.0.250あり、ゲートウェイに接続されています192.168.0.2
  • eth1192.123.123.10スイッチ経由で接続されます。

192.123.123.10からゲートウェイにパケットをルーティングしようとして192.168.0.2います。つまり、インターフェイスに着信する192.123.123.xパケットをeth1インターフェイス経由でルーティングする必要がありeth0ます。

ip_forwardファイルをに設定しました1。このコマンドを実行しました:

route add -net 192.123.0.0 netmask 255.255.255.0 dev eth0
route add default gw 192.168.0.2

129.123.123.10からにping できますが192.168.0.250、 に ping できません。192.168.0.2 パケットが に転送されていないようeth0です。

私のルーティングテーブルは次のようになります。

gteway Genmask Flags Ref Iface
192.123.123.0 * 255.255.255.0 U eth1
192.168.0.0 * 255.255.255.0 U eth0
192.123.0.0 * 255.255.255.0 U eth0
default 192.168.0.2 0.0.0.0 UG eth0

何が欠けているのか誰にも教えてもらえますか? 前もって感謝します。

4

3 に答える 3

6

バックパスルートがありません。ホスト192.168.0.2は、192.123.123.10からのパケットを確認しますが、リターンルートがないため、応答パケットをルーティングする方法がわかりません。あなたは2つのことをすることができます:

1- 192.123.123.0/24に向けられたトラフィックを処理するために、192.168.0.2マシン上にルートを作成します

2-以下のコマンドを使用して、192.168.0.250ホストでNATを実行します。

iptables -t nat -A POSTROUTING -s 129.123.123.0/24 -j SNAT --to-source 192.168.0.250
于 2012-04-06T15:40:59.533 に答える
2

心配する必要があるのは、このシステムのルーティング テーブルではありません。他のシステムのルーティング テーブルです。192.168.0.2 は、192.123.XX ネットワークが 192.168.0.250 にルーティングされていることを認識していません。同様に、192.123.XX 上のホストは、192.168.XX ネットワークを 192.123.123.10 にルーティングする必要があります。

于 2012-04-06T12:15:59.173 に答える
0

これは、iptablesとポート転送ルールを使用して実現できると確信しています。インターフェイス間でパケットを転送する方法については、 http://www.revsys.com/writings/quicktips/nat.htmlに詳細があります。

于 2012-04-06T15:28:53.123 に答える