web-dev-qa-db-ja.com

ルーター設定にアクセスせずに2つのネットワークを接続するにはどうすればよいですか?

異なるサブネットにある2つのデバイスを接続しようとしています。

Device 1:
IP address: 172.20.35.1
netmask: 255.255.0.0
gateway: 172.20.1.1

Device 2:
IP address: 172.20.100.100
netmask: 255.255.255.0
gateway: 172.20.100.1

ルーターのIPアドレスは172.20.1.1です。

デバイス1からデバイス2にUDPデータグラムを送信すると、ゲートウェイIPアドレス(デバイス2)が間違っているため、デバイス2はそれを受信しますが、応答できません。

しかし、ここに示すように、ルーターはこれら2つのネットワークを相互に接続できないはずです http://www.eventhelix.com/realtimemantra/networking/ip_routing.htm#.VMo5Sx3n5Qs ?ルートを手動で構成する必要がありますか?

また、以下に示すようにdevice 2のネットワーク構成を変更するとどうなりますか?

Device 1:
IP address: 172.20.35.1
netmask: 255.255.0.0
gateway: 172.20.1.1

Device 2:
IP address: 192.168.170.100
netmask: 255.255.255.0
gateway: 192.168.170.1

このネットワーク構成では、device 2はUDPデータグラムを受信しません。何故ですか?

編集:

明確にするために。私は実際には初心者ではありません。私のクライアントの多くは、上記の方法でデバイスを構成する傾向があり、TELNETごとにデバイスに到達できなくなるため、説明されている問題は私に知られています。 multicast tunnelを実装することでこの問題を解決し、ユーザーが上記のように構成を台無しにするたびに、multicast UDP protocolを使用してリモートデバイスのネットワーク構成を変更できるようにしました。とにかく、私は会社で電話インタビューをしました、そしてマネージャーはそのようなデバイス間のトラフィックは常に可能であると言いました、なぜならそれがルーターのためのものだからです。私は個人面接に招待されましたが、この質問が再び出てくることを知っています。そこで、より良い答えを作成するために、この質問をここに投稿しました。

3
H_squared

異なるサブネットにある2つのデバイスを接続しようとしています。

デバイス1:IPアドレス:172.20.35.1ネットマスク:255.255.0.0ゲートウェイ:172.20.1.1

デバイス2:IPアドレス:172.20.100.100ネットマスク:255.255.255.0ゲートウェイ:172.20.100.1

ルーターのIPアドレスは172.20.1.1です。デバイス1からデバイス2にUDPデータグラムを送信すると、ゲートウェイIPアドレス(デバイス2)が間違っているため、デバイス2はそれを受信しますが、応答できません。

本当の問題は、172.20.1.1のルーターインターフェイスにプロキシARPがないことと組み合わされた、サブネットの重複です。

172.20.35.1のホストは、172.20.1.1が同じサブネット上にあると見なすため、172.20.35.1ARPは172.20.1.100に直接対応します。ただし、172.20.0.0/16サブネットには応答するものはありません。

問題を解決するためのいくつかの選択肢があります。

  1. (短期ハック)172.20.1.1でproxy-arpを有効にします。 172.20.1.1に172.20.35.0/24へのルートがある限り、172.20.1.1は独自のMACアドレスを使用して172.20.1.100のARPに応答し、他の問題がないと仮定すると、これらのサブネット間で双方向通信が可能になります。

  2. (長期)サブネットを重複させずにネットワークを再編成します。これには、ホストのアドレス変更が必要です。潜在的に多くのホスト。

  3. 172.20.35.0/24でNATを実行して、他のものと同じサブネットのように見えないようにします。NATソリューションのサポートは段階的に難しくなる可能性がありますが、プロキシARPの必要性を回避します。

また、以下に示すようにdevice 2のネットワーク構成を変更するとどうなりますか。

このネットワーク構成では、device 2はUDPデータグラムを受信しません。何故ですか?

192.168.170.0/24へのルートが必要なようです

2
Mike Pennington

実際にはいくつか問題があると思います。最初のものはこれです:

ルーター設定にアクセスせずに

Mikeが提案するすべてのアクションでは、ルーター構成を変更する必要があります。

2番目の問題はこれです:

ルーターのIPアドレスは172.20.1.1です。

サブネットAとサブネットBの間でトラフィックを転送(つまりルーティング)できるのは、ルーターの両方のサブネットにIPインターフェースがある場合のみです。ルーターのIPインターフェースはIPアドレスであるため、ルーターのIPアドレスが1つしかない場合、ルーティングはできません。

「ルーター」の正確な意味を明確にしていませんが、たとえば、平均的なDSLルーターはこのように機能します。内部ネットワークで使用されるIPアドレスは1つだけで、ISPからDSL回線を介して他のIPアドレスを取得します。したがって、最終的に2つのIPになり、これら2つのサブネット間でトラフィックをルーティングできるようになります。通常、LAN側でより多くのサブネットを持つために新しいVLANを作成するオプションさえありません。

ここに少し好奇心があります。/16サブネット(マスク255.255.0.0)のIPアドレスを使用してクライアント1を構成しました。サブネット172.20.0.0/16のIPアドレス範囲は172.20.0.1-172.20.255.255で、最後の1つがブロードキャストアドレスです。ルーターのIPは通常、サブネット内で最低または最高なので、172.20.0.1または172.20.255.254と予想されます。これはルールではなく、通常の方法です。

ルーターのサブネットが実際に/ 16の場合、最初の問題を非常に簡単に解決できます。サブネットマスク255.255.0.0を使用して2番目のデバイスを構成し、デフォルトゲートウェイとして172.20.1.1を使用します。これにより、デバイス1と同じサブネットに配置され、トラフィックが流れます。これはルーティングではなく、L2スイッチングです。

デバイス1からデバイス2にUDPデータグラムを送信しますが、ゲートウェイIPアドレス(デバイス2)が間違っているため、デバイス2はそれを受信しますが、応答できません。

これは必ずしもゲートウェイアドレスとは関係ありません。 UDPは一方向のプロトコルです。プロトコル自体には、応答または確認応答を送信するメカニズムは含まれていません。デバイス2がUDPデータグラムに応答するようにするには、パケットが受信されたときに応答するアプリケーションを実行する必要があります。接続をテストする場合は、この目的のために開発されたpingを使用してください。 ICMPはTCPプロトコルであるため、双方向です。デバイス1はICMPエコー要求(つまり、pingパケット)をデバイス2に送信し、デバイス2はICMP応答で応答します。

このネットワーク構成では、デバイス2はUDPデータグラムを受信しません。何故ですか?

ここで、IPインターフェースに戻ります。マイクが言うように、このネットワークへのルートが必要なので、ルーターのIPアドレスは192.168.170.1/24である必要があります。

質問のタイトルに戻ります。ルーターを構成できない場合は、上記のようにデバイス2のサブネットとゲートウェイを構成するだけで、ルーターのサブネットが/ 16の場合にのみ機能します。これまでに提示された他のすべてのソリューションでは、ルーター構成にアクセスする必要があります。

2
Peregrino69