ルーターが2台あり、ルーターAはインターネットに接続されており、ルーターBはルーターAのLANポートに接続されています。
ルーターA:192.168.1.1サブネット255.255.255.0
ルーターB:ルーターAからリースされたIP:192.168.1.2独自のIP:192.168.0.1サブネット255.255.255.0
マシンCをip 192.168.1.3でルーターAに接続し、マシンDをip 192.168.0.199でルーターBに接続しています。
マシンCからマシンDにアクセスしたいのですが、これを行うにはどの設定を変更する必要がありますか?
ルータAは、192.168.0.0/24ネットワークに到達するために使用するルートを知る必要があります。
最初に、192.168.1.2経由で192.168.0.0/24に到達できることを示す静的ルートを追加してみます。
IOSを実行しているCiscoルーターでは
ip route 192.168.0.0 255.255.255.0 192.168.1.2
ルーターの指定されていないメーカーとモデルでは、Webインターフェースを使用するか、マニュアルを読んで同等のものを見つける必要があります。
ネットワークが図のように単純で、NAT=驚きがない場合は、192.168.1.2を指す192.168.0.0/255.255.255.0の静的ルートが必要です。このルートはルーターAまたはマシンCのいずれかに配置します。後者は前者よりも制限が厳しくなります。
これらが4つのLANポートを備えた標準の住宅用「ルーター」である場合、実際にはルーターとスイッチを組み合わせたデバイスがあります。 4つのLANポートはスイッチです。これに接続されたデバイスは、通常DHCPの仕事であるIPアドレスの設定を行う以外に何もすることなく、お互いを認識します。スイッチを「カスケード」することで、問題なく動作します。
自宅の4台以上のデバイスをインターネットに接続するだけの場合は、ルーターBがルーティングやDHCPを実行する必要はなく、機能を無効にする必要があります。 「ルーター」BをルーターAのLANポートに接続し、ルーターBのLANポートに必要なものをすべて接続します。ルーターBがDHCPなどを実行していない限り、問題なく機能します。
ネットワークアドレス変換 を2回実行しており、おそらく中程度/厳密な設定に設定されています。したがって、ルーターBは、ルーターBのサブネット外から開始された接続からプライベートアドレスを隠し、その逆も同様です。これは、接続されているネットワークがWAN=ポートはパブリックWebであると想定しているためです。通常、これは問題ありません。プライベートネットワーク内から接続が確立された場合、ルーターは着信の送信先を知っているためです。トラフィックは戻ってきます。しかし、あなたの場合、両方の側がNATを実行しているため、それぞれの側が他の側からプライベートアドレスを隠しています。これが、NATしたがって、ルーターはネットワークの外部から開始された接続をルーティングする場所を認識しています。何が起こっているのかを理解するには、 UDPホールパンチング これは、多くのVNCおよびゲームアプリケーションが外部から接続を開始できるようにするために使用します。
厳密なNATは一般にコンシューマグレードのルーターの制限ですが、より良いもののいくつかはNAT設定を調整することを可能にします。あるいは、DD-WRTを使用することができます、トマト、またはNATの調整を可能にする別のサードパーティのファームウェア他のユーザーが述べたように、ポート転送(少し面倒)を使用することもできます。
192.168.0.1はルーターBで使用されるゲートウェイではなく、LANインターフェイス上の独自のIPであると想定しています。ルータAがDHCPを介してアドレスを提供している場合は、使用するゲートウェイもBに通知しています。これは192.168.1.1である必要があります。 Bのサブネットからインターネットにアクセスできる場合は、これが当てはまります。非常に詳細な説明が必要な非常に偏った設定をしている場合を除きます。
質問に答えるために、マシンCとDは別々のネットワーク上にありますが、DはCとの接続を問題なく開始できます。自身のサブネットでIP 192.168.1.3を見つけることができないため、ターゲットマシンの場所を知っているゲートウェイ(ルーターB)に要求を渡します。
逆の方が難しいです。ホストD自体もそのゲートウェイであるルーターAも、192.168.0.199を対象としたトラフィックがルーターBを通過する必要があることを認識していません。 WANインターフェースからLANインターフェースへのパケットの通過を許可しません。
すべてをLANポートに接続するだけで、ルーターの代わりに「ダム」スイッチとしてBを使用した方がよい場合もありますが、ネットワークトポロジを変更せずにこの問題を回避することは可能です。 192.168.0.0/24ネットワークの外部から発信される通信で使用されるルーターBのポートを転送する必要があります。
たとえば、マシンDがWebサーバーを実行していて、マシンCから通信を開始する必要がある場合、ルーターBがポート80を192.168.0.199に転送するように設定します。または、ルーターがそのような機能をサポートしている場合、マシンDをルーターBのDMZに配置して、他に構成されていない限り、すべてのポートをこのマシンに転送できます。通常、これは安全ではないと見なされる可能性がありますが、この場合、192.168.1.0/24ネットワークが危険にさらされない限り、マシンは引き続きルーターAを介して保護されます。
(ルーターBのWANインターフェースをケーブルルーターのような通常のイーサネットインターフェースにすることができると仮定)
マシンCとDの両方に静的ルートを設定する必要があります。DHCPを実行する基本的なもの以上のものがあり、マシンCとDがDCHPからアドレスを取得する場合、ルートをすべてのDHCPクライアントに自動的にプッシュできます。
それ以外の場合は、次のようにルートを設定できます。
Windows
マシンC
route -p ADD 192.168.0.0 MASK 255.255.255.0 192.168.1.1 METRIC 1
マシンD
route -p ADD 192.168.1.0 MASK 255.255.255.0 192.168.0.1 METRIC 1
Linux(ネットワークインターフェイス設定に追加)
マシンC
route add -net 192.168.0.0/24 gw 192.168.1.1
マシンD
route add -net 192.168.1.0/24 gw 192.168.0.1