のばさん,こんにちわ。
>内容はごくごく初歩的なものですがご勘弁を。
いえいえ,初歩的な質問歓迎です。
さて,質問の件ですが, 答えを説明する前に,まず,パケット送信動作を復習しておきましょう。
1 パケットを渡す相手のIPアドレスを調べる 1-1 宛先が送信元と同一サブネットにあるときは,宛先のIPアドレス 1-1 宛先が他のサブネットにあるときは,デフォルトゲートウェイのIPアドレス 2 そのIPアドレスに対応するMACアドレスを調べる 2-1 ARPキャッシュに登録されていたら,ARPキャッシュのMACアドレスを採用する 2-2 ARPキャッシュになかったら,ARPリクエストをブロードキャストして応答をもらう 3 調べたMACアドレスにパケットを送信(ユニキャスト)
この動作を頭にいれて,質問のケースでの動作を追いかけてみましょう。 まず,AからBに送信するときは, Aは,Bが同一サブネットだと思いますから,直接Bにパケットを送ります。 多分,このケースでは,Bにパケットが届くと思います。 そして,次にBからAにパケットを送り返しますが,そのとき, Bは,Aが異なるサブネットに居ると思いますから, デフォルトゲートウェイにパケットを送るはずです。 そのとき,デフォルトゲートウェイが存在しなければ, パケットは相手に届きません。 一方,デフォルトゲートウェイが存在して,それが正しく設定されていれば, (Aにパケットを届く状態になっていれば,ということ) パケットはAに届くはずです。
ここまで説明すれば,だいたい答えは見えてくるでしょう。 答えのポイントはARPのことだけ考えるのではなくて, その前の動作,つまり,送信元のPCが最初にどのIPアドレス宛てにパケットを渡すか, というところにあります。 つまり,宛先が他のサブネットに存在する場合には, 宛先にARPするのではなく,ルータにARPするっていうことですね。 だから,サブネットをまたがって通信するときはルータが必要なんです。
More information about text formats
ARPする相手は誰か
のばさん,こんにちわ。
>内容はごくごく初歩的なものですがご勘弁を。
いえいえ,初歩的な質問歓迎です。
さて,質問の件ですが,
答えを説明する前に,まず,パケット送信動作を復習しておきましょう。
1 パケットを渡す相手のIPアドレスを調べる
1-1 宛先が送信元と同一サブネットにあるときは,宛先のIPアドレス
1-1 宛先が他のサブネットにあるときは,デフォルトゲートウェイのIPアドレス
2 そのIPアドレスに対応するMACアドレスを調べる
2-1 ARPキャッシュに登録されていたら,ARPキャッシュのMACアドレスを採用する
2-2 ARPキャッシュになかったら,ARPリクエストをブロードキャストして応答をもらう
3 調べたMACアドレスにパケットを送信(ユニキャスト)
この動作を頭にいれて,質問のケースでの動作を追いかけてみましょう。
まず,AからBに送信するときは,
Aは,Bが同一サブネットだと思いますから,直接Bにパケットを送ります。
多分,このケースでは,Bにパケットが届くと思います。
そして,次にBからAにパケットを送り返しますが,そのとき,
Bは,Aが異なるサブネットに居ると思いますから,
デフォルトゲートウェイにパケットを送るはずです。
そのとき,デフォルトゲートウェイが存在しなければ,
パケットは相手に届きません。
一方,デフォルトゲートウェイが存在して,それが正しく設定されていれば,
(Aにパケットを届く状態になっていれば,ということ)
パケットはAに届くはずです。
ここまで説明すれば,だいたい答えは見えてくるでしょう。
答えのポイントはARPのことだけ考えるのではなくて,
その前の動作,つまり,送信元のPCが最初にどのIPアドレス宛てにパケットを渡すか,
というところにあります。
つまり,宛先が他のサブネットに存在する場合には,
宛先にARPするのではなく,ルータにARPするっていうことですね。
だから,サブネットをまたがって通信するときはルータが必要なんです。