綾小路龍之介の素人思考

[network] サブネットマスクアドレスの設定ミスでパケットが届かなくなる IP アドレス

シゴタノ! の記事でわからんことがあったので。もう少し技術的な話。

設定 1、間違った設定。

IP        192.168.025.100 11000000.10101000.00011001.01100100
Subnet    255.255.255.000 11111111.11111111.11111111.00000000
Gateway   192.168.025.001 11000000.10101000.00011001.00000001
Network   192.168.025.000 11000000.10101000.00011001.00000000
Broadcast 192.168.025.255 11000000.10101000.00011001.11111111

設定 2、正しい設定。

IP        192.168.025.100 11000000.10101000.00011001.01100100
Subnet    255.255.254.000 11111111.11111111.11111110.00000000
Gateway   192.168.025.001 11000000.10101000.00011001.00000001
Network   192.168.024.000 11000000.10101000.00011000.00000000
Broadcast 192.168.024.255 11000000.10101000.00011000.11111111

問題: この設定の間違いでパケットが届かなくなる IP アドレスは?

Subnet の違いで、自分のいるネットワークセグメントのサイズが変わる。自分のいる内側のネットワークセグメントは arp を使って MAC アドレス通信。外側のネットワークセグメントは Gateway を使って IP アドレス通信。Gateway を使って内側セグメントの IP アドレスと通信は出来ないので、答えは 192.168.24.0 から 192.168.24.255 までだと思うんだけど、間違ってる? 間違ってそうな気がする。

IP アドレス
からまで間違い正解
********.********.********.********11000000.10101000.00010111.11111111
11000000.10101000.00011000.0000000011000000.10101000.00011000.11111111
11000000.10101000.00011001.0000000011000000.10101000.00011001.11111111
11000000.10101000.00011010.00000000********.********.********.********
IP アドレス
からまで間違い正解
***.***.***.***192.168.023.255
192.168.024.000192.168.024.255
192.168.025.000192.168.025.255
192.168.026.000***.***.***.***

間違っているかどうかは実際にネットワーク内に間違った設定のノードを作ってみればいいのだけど、その前にそのノードから通信する思考実験。確実に割り振られている IP アドレスに対する ping は成功するはず。

$ ping 192.168.25.100
$ ping 192.168.25.1

設定が間違っている場合も正解の場合も、自分と同じネットワークセグメントとしてオーバーラップしている IP アドレスに対する ping は成功するはず。

$ for i in `seq 1 254`; do ping -c 10 192.168.25.$i; done;

設定が間違っている場合に、自分のネットワークの外側になる IP アドレスに対する ping は失敗するはず。

$ for i in `seq 1 254`; do ping -c 10 192.168.24.$i; done;

リファレンス

  1. シゴタノ! — クラウド時代のメモ術・ノート術入門/ビギナーズ・ハック第1回
  2. IPアドレス - Wikipedia
  3. IPv4 - Wikipedia
  4. ping manpage - Google 検索
  5. Manpage of PING
  6. for manpage - Google 検索
  7. Manpage of BASH
  8. for 文の使用方法 - UNIX & Linux コマンド・シェルスクリプト リファレンス
  9. シェルスクリプト for 文 - Google 検索
  10. ブロードキャストアドレスへping - その他(インターネット接続) - 教えて!goo
  11. ping ブロードキャスト - Google 検索
  12. UJP - 技術情報(dotforward.jp)
  13. IP アドレス 255 特殊 - Google 検索
  14. arp - Google 検索
  15. ARP

ソーシャルブックマーク

  1. はてなブックマーク
  2. Google Bookmarks
  3. del.icio.us

ChangeLog

  1. Posted: 2009-06-13T20:58:02+09:00
  2. Modified: 2009-06-13T20:58:02+09:00
  3. Generated: 2017-08-22T23:09:31+09:00