ネットワーク・セキュリティのテーマ一覧へ

基礎科目・ネットワーク・セキュリティ

IPアドレスの数と表記

高校◎取りやすい

3問H23・H28・R4

IPv4(32ビット)とIPv6(128ビット)で表せるアドレスの数の比と、2進数で書かれたIPv4アドレスの10進表記が出ます。

よく出る形

  • IPv6(128ビット)と IPv4(32ビット)で表せるアドレスの数が,何倍違うかを選ぶ
  • 32ビットの2進数で書かれた IPv4 アドレスを,ドット付きの10進表記に直す
  • 同じ問いがほぼ同じ形で繰り返される。ビット数から数を出す力と,2進数から10進数への変換が土台になる

覚えること

  • IPv4 アドレスは 32 ビット:8 ビットずつ4つに分け,それぞれを10進数(0〜255)にして,ピリオドでつなぐ
  • IPv6 アドレスは 128 ビット:16 ビットずつ8つに分け,それぞれを16進数にして,コロンでつなぐ
  • MACアドレスは 48 ビット:8 ビットごとに6つに分け,それぞれを2桁の16進数で書く
  • n ビットで表せる組合せは 2n 通り。ビットが1つ増えるごとに2倍になる
  • IPv4 は 232 個(約43億個),IPv6 は 2128 個
  • 指数の割り算は肩の数を引く:2a ÷ 2b = 2a−b
  • 210 ≒ 1,000(千),220 ≒ 100万,230 ≒ 10億,232 ≒ 43億
  • 8ビットの重みは左から 128,64,32,16,8,4,2,1
  • 16進数は4ビットで1桁(0〜9,A〜F)。重みは左から 8,4,2,1 で,10〜15 が A〜F

解き方

  • 何倍かの問題は,ビット数からアドレスの数を出して割り算する。答えは肩の数の差になる
  • 例:2128 ÷ 232 = 296 なので,IPv6 は IPv4 の 296 倍
  • 必要な個数から求める時は,ビットを1つずつ増やして 2n が目標以上になる最初の n を探す。210 ≒ 1,000 で見積もる
  • 10進表記の問題は,32ビットを左から8ビットずつ4つに区切る
  • 区切った8ビットは,1が立っている桁の重みを足して10進数にする
  • 例:11000000 は 128 + 64 = 192,10101000 は 128 + 32 + 8 = 168
  • 16進表記は4ビットずつに区切って1桁にする。16進の2桁がそのまま10進表記の1区切りに当たるので,確かめに使える

ひっかけ

  • ビット数の比(128÷32 = 4)をそのまま肩に乗せて 24 倍としない。ビット数の差を肩に乗せる
  • 1区切りのビット数(8や16)や,一方のアドレス数そのものを答えにした選択肢がまぎれる
  • 何進数で書くか,何で区切るかは,アドレスの数とは関係ない
  • 8ビットを右から読まない。左の桁が 128 の重み
  • 16進で4ビットの組の順を入れ替えない(AC を CA にしない)
このテーマの想定問題を解く

想定問題:1・2・3

このテーマの過去問(このサイトに解説がある 1問)

平成に出た同じテーマ(2問)

このサイトにはまだ解説がありません。年度と題だけです。