add-routeについて

  • フォーラムは新サイトへ移行しました。
  • このフォーラムではゲスト投稿が禁止されています
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 .2 .3 | 投稿日時 2017-5-6 3:03
netjapan  新米   投稿数: 5
NATのオプション設定のadd-routeについてご質問させてください。

ip nat outside source static 10.1.1.1 192.168.1.1 add-route

上記NAT設定を行った場合、以下スタティックルートが追加されると思います。

S 192.168.1.1/32 [1/0] via 10.1.1.1

このスタティックルートは宛先がNATアドレスで、viaが実アドレスとなっています。viaが実アドレス(10.1.1.1)となっているのが理解できていません。このNAT設定を行っているルータと10.1.1.1のアドレスを持つ機器の間にいくつかの機器があり、セグメントも
分かれているとした場合、via 10.1.1.1 はおかしいのではないかと思っております。inside側から通信した場合、宛先は192.168.1.1になり、このルータでNATされて、宛先は10.1.1.1に変換されるかと思います。変換後の宛先アドレス(10.1.1.1)がviaとなっているという点でも理解ができない状態です。

inside側から通信した場合、ルーティングの観点のみで考えて、このadd-routeオプションがあれば通信可能なのでしょうか?insideへの戻りルーティングは考慮から外して構いません。
それとも実アドレス(10.1.1.1)へのルーティング設定が別途必要なのでしょうか?

viaが実アドレスとなっていることについて、理解できておりません。どなたかご教授頂けますでしょうか。
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2017-5-6 16:25
arashi1977  長老 居住地: 広島  投稿数: 1715
add-routeはCCNAの試験範囲でしたっけ?
公式情報見ても、Ping-tさんの最強WEB問題集でも見当たらないのですが…

取り合えず、以下のURLを一度見てみてはどうでしょうか?
http://www.infraexpert.com/study/natz6.html
前の投稿 - 次の投稿 | 親投稿 - 子投稿なし | 投稿日時 2017-5-6 20:14
netjapan  新米   投稿数: 5
arashi1977さん

ご返信、ありがとうございます。
CCNAの試験範囲ではありませんが、自分で調査したところ、
情報が見つからなかったので、お知恵をお借りしたいと思った次第です。

情報が不足していましたが、ルータよりoutside側(10.1.1.1の実アドレスが存在する側)
のルーティングはOSPFを使用したいと考えています。ルータで10.1.1.1宛てのルーティングをOSPFで受け取ります。
add-routeを使用するのはinside側より192.168.1.1宛ての通信がルータのinsideに着信した際に192.168.1.1宛てのルーティングがないと、
通信不可となるためです。(inside側はルーティング ⇒ NATの処理順序のため。)
この辺が不明なのですが、add-routeを使用すると以下例のようなoutsideインターフェースの先にいる機器をviaとしたスタティックルートと同じ効果となってしまうのでしょうか?

例)S 192.168.1.1/32 [1/0] via XX.XX.XX.XX
 ※ XX.XX.XX.XX → outsideの先にいる機器

もし、そうだとするとスタティックルートで通信することになってしまうため、outside側のルーティングでOSPFを使用する意味がなくなってしまうと考えています。

また、URLの以下部分を確認させていただきましたが、
--------------------------------------------------------
スタティックNATの設定時に「add-route」コマンドを設定することでも、通信ができるようになります。
add-routeにより、ルーティングテーブル上に「S 192.168.1.20/32 [1/0] via 10.1.1.10」が自動設定。

 Cisco(config) # interface GigabitEthernet0/0
 Cisco(config-if) # ip address 10.1.1.254 255.255.255.0
 Cisco(config-if) # ip nat outside
--------------------------------------------------------

この場合は、via10.1.1.10 がGi0/0のセグメントに含まれるから
Gi0/0の先をネクストホップとして認識するということではないでしょうか?(すみません。この辺は知識不足です。)
NAT設定を行っているルータと10.1.1.1のアドレスを持つ機器の間にいくつかの機器があり、セグメントも分かれていたら、add-routeを設定した際のviaはoutsideインターフェースのセグメントには含まれないものになります。
この場合でも通信可能となるのでしょうか?
当方が今、構築中の環境も上記のようにセグメントが分かれているため、add-routeを使用した場合のvia はoutsideインターフェースのセグメントには含まれないものとなります。

長くなってしまいましたが、実現させたいこととしてはルータよりoutside側はOSPFで通信させたいと考えていまして、add-routeはinside側から着信した際に192.168.1.1宛てのルーティングがないと、通信不可となってしまうため、設定しようと考えています。
このやり方に問題はないでしょうか?
前の投稿 - 次の投稿 | 親投稿 - 子投稿なし | 投稿日時 2017-5-7 1:13
ゲスト    投稿数: 0
その設定で問題はないですよ。

add-routeによるStaticNATは出力インターフェイスが特定できないため必ず再帰的ルーティングとなります。

「S 192.168.1.1/32 [1/0] via 10.1.1.1」というルーティングはadd-routeオプションによって作られたものですが、実際のパケットは「10.1.1.1」へ到達するためにもう一度ルーティングテーブルを参照します。そして、「10.1.1.1」への宛先はOSPFでもらっていると思うのでそのNextHopへ転送されます。

OSPFで「10.1.1.1」への経路を学習していなければadd-routeオプションのテーブルすら出てこないはずです。
前の投稿 - 次の投稿 | 親投稿 - 子投稿なし | 投稿日時 2017-5-7 4:06
netjapan  新米   投稿数: 5
uewalddeさん

ご返信、ありがとうございます。
疑問が晴れました!

  >フォーラム検索へ


Copyright (c) 2020 Ping-t All rights reserved.