- ベストアンサー
iptablesを使った複数のサブネット間ルーティングの方法
- 市販のBBルーターにLinuxを乗っけて遊んでいます。iptablesを使用して、複数のサブネット間でルーティングを行う方法がわかりません。
- 192.168.200.0/24のサブネットに接続されたホストはインターネットに接続できますが、192.168.11.0/24のホストには接続できません。
- 初歩的な質問ですが、この問題に対してご教示いただける技術者の方、よろしくお願いします。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
うう~ん。何も無しか・・・・。なんでだろう。 ANo.1でいう(d)と(c)がRIPでやりとりしている可能性は・・・・無いよなぁ。イマドキそんなプロトコルが何も設定せずに動き出しているとは思えない。 まぁ、とにかくネットがつながるというのは、IPパケットが「行って」「戻ってきている」からで、IPパケットが複数のセグメントをまたがる時は、正しい中間あて先(デフォルト以外のルータ)へ届ける必要があるという大原則と照らし合わせて各状況の理由を考えていただければ。 今回はお役に立てず申し訳ない。(A)と(B)が通信できないのはANo.1の方法を試していただいて、なぜ今のような状況になっているのかがどうしても分からなければ、また別口でもっと凄腕の回答者に質問していただきたい。その時、インターネットから各セグメント(IPサブネット)がどのようにつながっているのか模式図があればなお良いと思います。
その他の回答 (1)
- anmochi
- ベストアンサー率65% (1332/2045)
環境を以下のように仮定する Internet | Inet用BBルータ(d) [254] | (A)192.168.11.0/24-[200] 試験サーバ(a) | [253] LinuxBBルータ(c) [254] | (B)192.168.200.0/24-[200] 試験クライアント(b) 凡例: [IPアドレスの下1つ] (ホストまたはネットワーク) ※大文字がネット、小文字がホスト (b)から(a)に接続できない理由は、(a)が(b)のあて先を知らないからだ。 つまり、 「(b)→(a)パケット」が(b)→(B)→(c)に飛ぶ(これは(b)にとって(c)がデフォルトルータだから) 「(b)→(a)パケット」が(c)→(A)→(a)に飛ぶ(同一セグメントだから) 「(a)→(b)パケット」が・・・・(a)が(B)用のルータが分からないのでデフォルトルータ(d)に飛ばす 「(a)→(b)パケット」を(d)が破棄。 という風に、(a)が(B)へのルーティングには(c)を使わないといけないという事を知らないために、 デフォルトルータである(d)に投げているんだな。 という事で(a)に(B)用のルーティングエントリを追加する。 [root@b /] # route add 192.168.200.0 255.255.255.0 gw 192.168.11.253 これで、(a)→(B)のパケットが(a)→(c)→(B)と飛ぶようになる。 ところで、何か理屈がおかしいような気がする。 私が説明した内容だと、(b)はインターネットもできてはおかしい。 (a)と同様に、(d)も(b)のあて先が分からないからだ。 (c)にこんな設定が無いか確かめて欲しい。コマンドは iptables -t nat -L だ。 [root@c /] # iptables -t nat -L POSTROUTING (hogehoge) in=eth0 out=eth1 dist=!10. !127. !172.16. !192.168. MASQUERADE ↑ こんな風に「eth0から入力されてeth1に出ていくパケットはMASQUERADE」という設定が無いだろうか。 しかもプライベートアドレスに対しては無効にするような。 でないと状況の説明がつかんような気がするんよね。もう少し詳しい状況説明が欲しいな。
お礼
# iptables -t nat -L Chain PREROUTING (policy ACCEPT) target prot opt source destination Chain POSTROUTING (policy ACCEPT) target prot opt source destination Chain OUTPUT (policy ACCEPT) target prot opt source destination こうなっています。
お礼
(c)のWAN側(つまり192.168.11.0/24につながっている側)では、DHCPクライアントが動作していて、そいつが一応、デフォルトゲートウェイのアドレスとして、(d)のアドレスを取得しているのは確かです。関係ありますかねぇ?