なぜ片方からはTimed Outになるか

 サブネット・マスクとサブネットがきちんとわかると,実験2でなぜ双方のマシンの結果が違ってしまったのかが見えてくる。

図7 Aからping を送るとタイムアウトになるのはなぜか
IPアドレスとサブネット・マスクの組み合わせで所属するサブネットが決まるので,サブネット・マスクが異なるとお互いが認識するサブネットの範囲が違ってしまう。Aから見るとBは同じサブネットに属する。そのためAはBにIPパケットを送れるが,Bは返答できないのでタイムアウトになる。一方,BからみるとAは別のサブネットに属するので,最初から通信できない。このためAに対するpingを実行すると「Unreachable」という結果になる。
 実験2ではコンピュータBのサブネット・マスクを「255.255.255.248」に変えてみた。ネットワーク部の長さを28ビットから29ビットに変更したわけだ。これによって,(1)ネットワーク・アドレスは「192.168.4.16/28」から「192.168.4.24/29」になり,(2)サブネットを構成するホストに設定可能なアドレス範囲も192.168.4.25~192.168 .4.30と小さくなった(図7[拡大表示])。

 この設定変更により,コンピュータBにはコンピュータA(192.168.4.20)が別のサブネットに所属しているように見えてしまう。Bはデフォルト・ゲートウエイを探そうとするが,そのIPアドレスが登録されていないのでARP要求を送信できない。結局,実験1同様,「Destination Unreachable」(到達不可能なあて先)という結果になる。

 一方のコンピュータAはサブネット・マスクが/28のままなので,コンピュータB(192.168.4.30)は自分のサブネットにいると判断する。AからBにはpingメッセージを送れる。

 ただし,ping要求を受け取ったコンピュータBは返信できない。コンピュータAが自分のサブネットにいないと思っているからだ。

 結局コンピュータAには,Bからのping応答メッセージが戻ってこない。こうしてコンピュータAの画面には,「Request timed out」(時間内に返答がなかった)と表示されたのである。