IPアドレス|つまづきやすいポイントと攻略法 徹底解説!


2026-02-24 更新

この連載は、基本情報技術者試験の受験者を対象としたものです。
毎回1つのテーマにしぼって、多くの受験者がつまづきやすいポイントと攻略法を解説します。

今回のテーマはIPアドレスです。

IPアドレスの仕組み

「IPアドレス」は、IP(Internet Protocol)を使った通信、つまりインターネットで、コンピュータやルータなどの通信機器に割り当てられる識別番号です。
IPアドレスには、従来から使われている「IPv4(version 4)アドレス」と、新たに使えるようになった「IPv6(version 6)アドレス」があります。
試験には、IPv4アドレスに関する問題がよく出るので、これ以降ではIPv4アドレスだけを取り上げ、単にIPアドレスと呼びます。

IPアドレスは、全体で32ビットの2進数なのですが、32個も0と1を並べたのではわかりにくいので、32ビットを8ビットずつ4つの部分に分け、それぞれの部分を10進数にして、ドット(.)でつなぐ、という表記で示します。

【例】
01101110111010001100010011101001というIPアドレス
→8ビットずつ01101110、11101000、11000100、11101001という4つの部分に分け、それぞれを10進数の110、232、196、233にして、ドットでつないだ110.232.196.233という表記で示します。

インターネットは、ネットワークとネットワークの間をつなぐものです。
ここで、ネットワークとは、企業内、オフィス内、家庭内などのLAN(Local Area Network)を意味します。
IPアドレスは、上位桁がネットワークを識別する「ネットワークアドレス」になっていて、下位桁がホスト(コンピュータやルータなどの通信機器)を識別する「ホストアドレス」になっています。
同じネットワーク内にあるホストのIPアドレスは、上位桁が同じで、下位桁が異なります。IPアドレスの上位桁と下位桁の区切りを示す方法は、すぐ後で説明します。

サブネットマスクの役割

IPアドレスの上位桁と下位桁の区切りを示す方法として「サブネットマスク」があります。

サブネットとは、LAN全体もしくは、LANの中をいくつかのネットワークに区切ったものを意味します。
サブネットマスクも、32ビットの2進数であり、IPアドレスと同様に、255.255.255.0のように表記します。
サブネットマスクを2進数で示すと、11111111111111111111111100000000のように1の並びの後に0が並んだものになり、1が並んだ部分が上位桁(ネットワークアドレス)であり、0が並んだ部分が下位桁(ホストアドレス)であることを示します。

11111111111111111111111100000000は、上位24ビットがネットワークアドレスであり、下位8ビットがホストアドレスであることを示します。

たとえば、IPアドレスが110.232.196.233で、サブネットマスクが255.255.255.0なら、110.232.196までがネットワークアドレスで、残りの233がホストアドレスということになります。
ただし、慣例として、ネットワークアドレスは、110.232.196.0のように、ホストアドレスの部分を0にして示します。

IPアドレスの上位桁と下位桁の区切りを示す別の方法として「CIDR(Classless Inter Domain Routing、サイダー)表記」もあります。
これは、110.232.196.0/24のように、IPアドレスの末尾に「/上位桁数」を付加するという表記です。
110.232.196.0/24は、上位24ビットがネットワークアドレスであることを示します。
IPアドレスは、全体で32ビットなので、残りの32 ー 24 = 8ビットがホストアドレスです。

ホストに割り当てられないアドレス

IPアドレスの下位桁は、ホストを識別するホストアドレスなのですが、2進数で示したときに、すべてが0になるアドレスと、すべてが1になるアドレスは、用途が決められているので、ホストに割り当てられません。

たとえば、ホストアドレスが8ビットなら、すべてが0の00000000(10進数で0)というアドレスと、すべてが1の11111111(10進数で255)というアドレスは、ホストに割り当てられません。

すべてが0のホストアドレスは、ネットワークアドレスを示すために使います。これは、先ほど「慣例として」と説明したことです。
すべてが1のホストアドレスは、「ブロードキャストアドレス」を示すために使います。「ブロードキャスト(broadcast、一斉同報)」とは、同じネットワーク内にあるすべてのホストに同じデータを送ることです。ネットワークでは、ブロードキャストを行う場面がよくあるのです。

たとえば、IPアドレスが110.232.196.233で、サブネットマスクが255.255.255.0なら、110.232.196.0がネットワークアドレスを示し、110.232.196.255がブロードキャストアドレスを示します。
8ビットで表せるアドレスは、全部で256通りありますが、それらの中でホストに割り当てられるのは、ネットワークアドレスとブロードキャストアドレスを除いた、256ー2=254通りです。

IPアドレスに関する問題の攻略法(1)

IPアドレスに関する問題を見てみましょう。
以下は、2つのIPアドレスが同一のサブネットかどうかを判断する問題(出典:H28秋問33)です。

問題(出典:H28秋問33)

2台のPCにIPv4アドレスを割り振りたい。サブネットマスクが 255.255.255.240 のとき、両PCのIPv4アドレスが同一サブネットに所属する組合せはどれか。

 ア  192.168.1.14 と 192.168.1.17
 イ  192.168.1.17 と 192.168.1.29
 ウ  192.168.1.29 と 192.168.1.33
 エ  192.168.1.33 と 192.168.1.49

この問題を攻略するには、IPアドレスの仕組みを知っていることはもちろんですが、10進数を2進数に変換する方法を知っていなければなりません。「10進数を2で割って余りを求めることを、商が0になるまで繰り返すと、変換後の2進数が下位桁から得られる」という方法がよく知られていますが、時間がかかるので面倒でしょう。
IPアドレスのドットで区切られた個々の10進数は、2進数に変換すると8ビットになります。8ビット程度なら「8ビットの2進数の桁の重みを、変換前の10進数と同じ値になるまで上位桁から順に足していき、足した桁を1にして、足さなかった桁を0にすれば、変換後の2進数が得られる」という方法の方が、時間がかからないでしょう。8ビットの2進数の桁の重みは、「128 64 32 16 8 4 2 1」です。

実際にやってみましょう。

まず、255.255.255.240というサブネットマスクを2進数に変換します。

255は、128+64+32+16+8+4+2+1=255なので、すべての桁が1の11111111です。
サブネットマスクで255はよく出てくるので、「255は11111111だ」と覚えておくとよいでしょう。

240は、128+64+32+16=240になるので、「128 64 32 16」の桁を1にして、「8 4 2 1」の桁を0にした11110000です。

以上のことから、255.255.255.240というサブネットマスクを2進数に変換すると11111111111111111111111111110000になるので、上位28ビットがネットワークアドレスで下位4ビットがホストアドレスだとわかります

この問題では、選択肢に示された2つのIPアドレスが同一サブネットに所属するものを答えます。
同一サブネットに所属するなら、ネットワークアドレスが同じなので、上位28ビットが同じであるものを答えます。
どの選択に示されたIPアドレスも192.168.1まで(上位24ビットまで)が同じなので、残りの部分の上位4ビットが同じものを答えればよいのです。
10進数を2進数に変換して上位4ビットを比べてみましょう。

選択肢アの14と17は、14が8+4+2=14なので00001110であり、17が16+1=17なので00010001であり、両者の上位4ビットが異なります。
選択肢イの17と29は、17が16+1=17なので00010001であり、29が16+8+4+1=29なので00011101であり、両者の上位4ビットが同じです。したがって、選択肢イが正解です。

念のため、他の選択肢も確認しておきましょう。

選択肢ウの29と33は、29が16+8+4+1=29なので00011101であり、33が32+1=33なので00100001であり、両者の上位4ビットが異なります。
選択肢エの33と49は、33が32+1=33なので00100001であり、49が32+16+1=49なので00110001であり、両者の上位4ビットが異なります。

IPアドレスに関する問題の攻略法(2)

IPアドレスに関する問題を、もう1つ見てみましょう。
以下は、接続可能なホストの数を求める問題(出典:H31春問32)です。

問題(出典:H31春問32)

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

ア 23      イ 24      ウ 254      エ 510   

この問題を攻略するには、ここでもIPアドレスの仕組みを知っていることはもちろんですが、2進数のビット数に応じて何通りのパターンを表現できるかを判断できなければなりません。

1ビットで表せるのは「0」「1」の2通りです。
2ビットで表せるのは「00」「01」「10」「11」の4通りです。
3ビットで表せるのは「000」「001」「010」「011」「100」「101」「110」「111」の8通りです。
このように、2進数で表せるパターンは、1ビット増えると2倍になります。

問題に示されたCIDR表記は、192.168.0.0/23なので、32ビットのIPアドレスの上位23ビットがネットワークアドレスであり、残りの32-23=9ビットがホストアドレスです。
9ビットで表せるのは、2×2×2×2×2×2×2×2×2=512通りです。

これらの中で、すべてが0の000000000(ネットワークアドレスを示す)と、すべてが1の111111111(ブロードキャストアドレスを示す)の2通りはホストに割り当てられないので、それらを引いた512-2=510通りが使えます。

したがって、選択肢エが正解です。


今回は、「IPアドレス」のポイントと攻略法を解説しました。
このテーマが苦手だった受験者の参考になれば幸いです。

それでは、またお会いしましょう!

label 関連タグ
科目A試験は、
免除できます。
独習ゼミで科目A試験を1年間免除して、科目B試験だけに集中しましょう。
免除試験を受けた 74.9% の方が、
科目A免除資格を得ています。
※独習ゼミは、受験ナビ運営のSEプラスによる試験対策eラーニングです。
科目A免除試験 最大 2 回の
受験チャンス !
info_outline
科目A免除試験 最大 2 回の
受験チャンス !
詳しく見てみるplay_circle_filled
label これまでの『徹底解説!つまづきやすいポイントと攻略法』の連載一覧 label 著者