私には 2 つのネットワークがあります: 192.168.13.0/24 (青) と 192.168.15.0/24 (緑)。
コンピュータ A は 13-net にのみ接続されています。コンピュータ B には 2 つのインターフェイスがあり、各ネットワークに 1 つずつあります。
ルーターのように動作し、13-net を 15-net に接続している 3 台目のコンピュータがあります (この方向のみ)。
さて、私は192.168.15.100にpingするコンピュータ A から B へ。残念ながら応答がありません。ただし、スイッチの代わりにハブを使用すると動作します。
私の考えでは、ping パケットはスイッチを経由してルーター (A のデフォルト ルート/ゲートウェイ) に送られます。ルーターはパケットをスイッチから B に送り返します。おそらく B は 15 ネット インターフェイスでパケットを受信しますが、15 番目のインターフェイスで応答するのでしょうか。これはあり得ることでしょうか。
問題は、B にはゲートウェイ 192.168.13.50 しかない可能性があるということですが、私はよくわかりません (B は構成の可能性が限られている組み込みシステムです)。
ここで何が起こっているのか誰か説明できますか? ありがとうございます!
答え1
どちらの場合も、ping はarp
ルーターの MAC アドレスを取得する要求によって開始されます。次に、ping メッセージはルーターを宛先とするレイヤー 2 パケットにラップされます。
を使用すると何が起きますかhub
:
- pingはすべてのクライアント(B x 2とルータ)にブロードキャストされます。
- B.13.100インターフェースはパケットをドロップします。
- しかし、15.100インターフェースは、おそらくプロミスキャスモード(MACターゲットを無視)でそれを取得します。
- したがって、B は 13.100 インターフェースで A に直接応答します。
を使ってswitch
、
- Bはパケットを直接受信しません。スイッチ知っているA パケットは (宛先 MAC アドレスにより) ルーターに向けられ、他のポートには影響しません。
- ルータは通常、13.50インターフェースでパケットを受信するはずです。
- そして、それを 15.50 インターフェイス経由で B に転送する必要があります。
- Bは15.100インターフェースでそれを取得し、13.100インターフェースから応答する。
- A はそれを直接取得するはずですが、そうではありません。
おそらくルーターに何らかの問題があると思われます。スイッチを使用して A からコマンドを
試してください。traceroute
答え2
おそらく次のような画面が表示されます:
- パケットはAのインターフェースから送信されます(13.10)
- ルータ経由で B にルーティングされます (ルータ経由の 15.100)
- Bに受信される (15.100)
- B は返信して「ああ、私も同じネットワーク上にいるよ!」と言います。
- パケットはBのインターフェースから出ていきます(13.100)
- A に受信される (13.10)
- Aは13.100ドロップのパケットからこれを期待していないと言う
これを確認するには、ping を送信しながら A と B でパケット トレースを実行し、ヘッダーを調べて送信元アドレスと宛先アドレスを確認します。
これを解決する唯一の現実的な方法は、ホスト B に /32 ルーティング エントリを追加してパケットを 15.100 から強制的に送信することですが、これでは拡張性がありません。
答え3
a)tracert
コンピュータ A からコンピュータ B に a を実行すると、どのようなホップが使用されているかがわかります
。 b) コンピュータ B に設定されているデフォルト ゲートウェイは何ですか?
c) スイッチの種類は何ですか? レイヤー 2、レイヤー 3 ですか?
d) コンピュータ B の 13.100 NIC を完全に無効にしてから、そのマシンを再起動して ping を実行して、機能するかどうかを確認してください。