A型システムエンジニアの勉強メモ

情報処理試験の午前問題をネタにして、解説をじっくり書きながら勉強しています。基礎は大事。

広告

基本情報技術者試験 平成31年度 春期 午前 問32

サブネットマスク、ホストアドレスについての問題。

 

--------------------

基本情報技術者試験

平成31年度 春期 午前 問32

 

192.168.0.0/23(サブネットマスク 255.255.254.0)の IPv4 ネットワークにおいて、ホストとして使用できるアドレスの個数の上限はどれか。

 

ア 23

イ 24

ウ 254

エ 510

--------------------------

解説

 

IP アドレスとサブネットマスク

 

192.168.0.0 はシステム管理してるとよく見かける。

(イチクニイチロッパ、と読む人が多い。)

 

よく見るアドレスというと 127.0.0.1 もポートフォワードとかを利用してると頻繁に打つ。これは 127.0.0.2 とかでも実は同じ。

127.0.0.0/8 のアドレスは全てループパックで自分自身を指す。localhost127.0.0.1 と同じ(実装に依るかも)。

ダン・ブラウンのラングドンシリーズであるオリジンの中で、127.0.0.1 が意味あり気にでてくるあたりに反応しちゃうのが IT エンジニア。

[商品価格に関しましては、リンクが作成された時点と現時点で情報が変更されている場合がございます。]

オリジン 上 (角川文庫) [ ダン・ブラウン ]
価格:792円(税込、送料無料) (2021/8/8時点)

楽天で購入

 

 

 

問題に戻り、サブネットマスクとはをまずは説明。

  • 192.168.0.0/23
  • 192.168.0.0/255.255.254.0

上の二つは同じ意味。

サブネットマスク 255.255.254.0 を 2 進数で書くと

11111111  11111111  11111110 00000000

となり、1 が 23 個となる。なので /23 とも書かれている。

 

同じように /24 の場合は

11111111  11111111  11111111  00000000

で 255.255.255.0 となる。こちらの方が区切りがいいのでよく見かけるかもしれない。

 

サブネットマスクは必ずある位置より左は全て 1、その右は全て 0 になる。

1 の部分をネットワークアドレス、0 の部分をホストアドレスと呼ぶ。

ネットワークアドレスはそこのネットワーク全体を表すのに使う。

ホストアドレスはそのネットワークの中のいる単一の機器(ホスト)を表すのに使う。

このように IP アドレスをネットワークアドレスとホストアドレスに分割するためにサブネットマスクが使われる。

 

 

具体例で書いていくとわかりやすい。

  • 192.168.1.2/24

二進数で書くと 192.168.1.2 は

11000000 10101000 00000001 00000010

サブネットマスクは 24 なので

11111111  11111111  11111111  00000000

となる。

 

なので、サブネットマスクが 1 になっている部分

11000000  10101000  00000001

がネットワークアドレスとなる。

 

ホストアドレス部分を全て 0 にした

11000000 10101000 00000001 00000000

つまり 192.168.1.0/24 がそこのネットワーク全体を表すネットワークアドレスになる。

 

サブネットマスクが 24 だと、ネットワークアドレスを知りたい場合は最後の数字だけを 0 にすれば良いのでわかりやすい(192.168.1.2 → 192.168.1.0)

上の例ではホストアドレス部分のパターンは

192.168.1.0 〜 192.168.1.255

の 256 通りになる。

 

 

次は問題で使われているアドレスで考える。

  • 192.168.0.0/23

二進数で書くと 192.168.0.0 は

11000000  10101000  00000000  00000000

サブネットマスクは 23 なので

11111111  11111111  11111110  00000000

となる。

 

ホストアドレス部分のあり得るパターンは

11000000  10101000  00000000  00000000 (192.168.0.0)

11000000  10101000  00000001  11111111 (192.168.1.255)

の 512 通りになる。

ホストアドレスが 9 桁あり、各桁は 0 か 1 の 2 通りなので、2⁹ =512 になる。

 

 

問題の選択肢エが 510 で近いが、微妙に異なる。

 

これは 512 通りの中にホストとしては利用できないアドレスが 2 つあるためである。

 

1 つはホストアドレス部分が全て 0 のアドレス。

つまりネットワークアドレス。ネットワークアドレスはネットワーク全体を表すので、個別のホストに利用はできない。

もう 1 つは反対にホストアドレス部分が全て 1 のアドレス。

これはブロードキャストアドレスと呼ばれるもの。これも個別のホストに利用はできない。

 

この 2 つを除いた 510 通りのアドレスがホストに利用できる。なので正解は選択肢エ

 

ブロードキャストアドレスはそのネットワークに繋がる全ての機器に一斉に通信するための特殊なアドレス。同じネットワークの中で自分と同じ IP アドレス使ってるやついないよね?とかの確認に使ったりする。

 

 

前後の問題はこちら。