第4章 IPアドレスとサブネットマスク
IPアドレスとは
今回出てくる用語
・IPアドレスとは
◆ IPアドレス
IPアドレスとは、インターネットやLANなどのIPネットワークに接続されたコンピュータなどに割り
振られる識別番号のことです。IPアドレスは、IPネットワーク上の住所または電話番号のようなもの。
IPアドレスは、コンピュータ内部では2進数で処理されることから、32ビットの整数値で表されます。
しかし、人には2進数はわかりにくいため、分かりやすくするために32ビットの整数値を8ビットずつ
4つに分割して10進数でIPアドレスを表します。では、どのように10進数で表記されるのかを見ます。
※ IPアドレスは32ビットの2進数なので、2の32乗ということで 4,294,967,296 (約43億) の数があることが分かります。
今、この瞬間、あなたのPCとわたしのWebサーバとが通信していますが、それはIPアドレスによって
お互いの場所を識別しているから通信が成立します。IPアドレスと電話番号を比較した図解は以下です。
◆ 2種類のIPアドレス – IPv4アドレス、IPv6アドレス
IPアドレスには、IPv4(Internet Protocol v4)と IPv6(Internet Protocol v6)の2種類があります。
IPアドレスといえば一般的にIPv4(Internet Protocol version 4)アドレスのことを指しており、IPv6
をさす場合はIPv6アドレスと言います。IPv4アドレスは世界的に利用者が急増したことにより割り当てる
IPアドレスがなくなってきており、それを解消するために開発されたのがIPv6です。現在、家庭や企業で
最も使用されているIPアドレスはIPv4アドレスであり、IPv6アドレスの普及にはまだ時間がかかります。
◆ 自分が現在使用しているIPアドレス
現在、自分が使用しているIPアドレスを確認するためには、Windowsの場合は以下手順を実行します。
スタートボタン ⇒「プログラムとファイルの検索」でcmdと入力 ⇒ 開いた画面上で ipconfig と入力。
例えば、現在当方が使用しているIPアドレスは「192.168.0.1」のIPアドレスであることが分かります。
◆ IPアドレスの構成
32ビットのIPアドレスは、ネットワーク部とホスト部の2つによって構成されます。ネットワーク部は、
各ホストが所属するネットワークを示します。ホスト部は、ネットワークに所属する各ホストを示します。
例えば “192.168.2.1/24” のIPアドレスでは “/24” は24 ビットがネットワーク部という意味となるので
”192.168.2″ までがネットワーク部であることを示して、残りの”1″がホスト部であることを示しています。
◆ IPアドレスのクラス
IPアドレスは、クラスA、クラスB、クラスC、クラスD、クラスEの5つのアドレスクラスに分類されます。
これらのクラスでは、IPアドレスのネットワーク部とホスト部がどの部分に該当するのかを定義しており
また、各クラスにおいて使用できるアドレス範囲、そして、各クラスにおける用途などを定義しています。
クラス | アドレス範囲 | 定義 | 用途 |
クラスA | 0.0.0.0 ~ 127.255.255.255 | ネットワーク部 (8bit) ホスト部 (24bit ) | 大規模ネットワークでの使用 |
クラスB | 128.0.0.0 ~ 191.255.255.255 | ネットワーク部 (16bit) ホスト部 (16bit) | 中規模ネットワークでの使用 |
クラスC | 192.0.0.0 ~ 223.255.255.255 | ネットワーク部 (24bit) ホスト部 (8bit) | 小規模ネットワークでの使用 |
クラスD | 224.0.0.0 ~ 239.255.255.255 | 下位28bitがマルチキャストグループID | マルチキャスト用のアドレス |
クラスE | 240.0.0.0 ~ 255.255.255.255 | 現在、割り当てが定義されていない | 実験用のアドレス |
クラスAでは、第1オクテット (8bit) がネットワーク部であるので、残りの3つのオクテット (24bit) が
ホスト部となります。つまりクラスAでは1つのネットワーク (セグメント) で割り当てられるホスト部の
アドレスは16,777,214個 (2の24乗 -2) となります。この”-2″は、各ネットワーク部で予約されている
ネットワークアドレスとブロードキャストアドレスのことであり、これらはホストに割り当てられません。
クラスBでは、第2オクテット (16bit) までネットワーク部であるので、残りの2つのオクテット(16bit) が
ホスト部となります。つまり、クラスBでは1つのネットワーク (セグメント) で割り当てられるホスト部の
アドレスは 65534個( 2の16乗 -2 )となります。この “-2” は各ネットワーク部において予約されている
ネットワークアドレスとブロードキャストアドレスのことであり、これらはホストに割り当てられません。
クラスCでは、第3オクテット(24bit) までネットワーク部であるので、残りの1つのオクテット(8bit) が
ホスト部となります。つまり、クラスCでは1つのネットワーク(セグメント)で割り当てられるホスト部の
アドレスは 254個( 2の8乗 -2 )となります。この “-2” は、各ネットワーク部において予約されている
ネットワークアドレスとブロードキャストアドレスのことであり、これらはホストに割り当てられません。
各クラスのアドレス範囲を10進数で暗記するのは大変かもしれませんが、2進数で暗記すれば簡単です。
また、その際に各アドレス範囲の”始まり”部分だけを暗記すればOKです。終わりは始まりの一つ前です。
クラス | アドレス範囲のはじまり ( 10進数 ) | アドレス範囲のはじまり ( 2進数 ) |
クラスA | 0.0.0.0 ~ | 00000000 ~ |
クラスB | 128.0.0.0 ~ | 10000000 ~ |
クラスC | 192.0.0.0 ~ | 11000000 ~ |
クラスD | 224.0.0.0 ~ | 11100000 ~ |
クラスE | 240.0.0.0 ~ | 11110000 ~ |
まとめ
・IPアドレスとは
インターネットやLANなどのIPネットワークに接続されたコンピュータなどに割り振られる識別番号のこと
IPアドレス – ネットワークアドレス & ブロードキャストアドレス
今回出てくる用語
・ネットワークアドレスとは
・ブロードキャストアドレスとは
◆ 予約済みIPアドレス
IPアドレスには、コンピュータなどのホストに割り当てられない、特別な用途で使用するものがあります。
具体的に、ネットワークアドレス、ブロードキャストアドレス、ループバックアドレスが予約済みIPです。
ネットワークアドレスは、ホスト部の2進数のビットが全て 0 のアドレスです。ネットワークアドレスは
ネットワーク自体を指すアドレスとして使用されます。以下はネットワークアドレスの例を示しています。
ブロードキャストアドレスはホスト部のビットが全て 1 のアドレスです。ブロードキャストアドレスは
あるセグメントに接続されている全てのホストにパケットを送信するためのアドレスとして使用されます。
ループバックアドレスですが、ネットワークアドレスとしても使用禁止とされているネットワークの
127.0.0.0/8のネットワークで、127.0.0.1のアドレスのことをループバックアドレスと呼んでいます。
ループバックアドレスは、自分自身を示す仮想的なIPアドレスです。例えば、パソコン上のコマンド
プロンプトで ping 127.0.0.1 と実行し応答があれば、TCP/IPが正常に動作している事を意味します。
※ 紛らわしい例として「172.16.1.0/16」は一見ネットワークアドレスのように見えますが、ホスト部のビットが全て 0 では
ないことから、このIPアドレスはネットワークアドレスではありません。従って、PCにこのIPアドレスを割り当てることが可能。
◆ ブロードキャストアドレスの種類
ブロードキャストアドレスにはローカルブロードキャストアドレスとダイレクトブロードキャストアドレス
の2種類があります。ローカルブロードキャストは、自身が接続しているネットワークのブロードキャストの
ことです。例えば 172.16.0.0/16 のローカルブロードキャストアドレスは「172.16.255.255」となります。
ダイレクトブロードキャストアドレスは自身が接続していないネットワークへのブロードキャストのことです。
例えば、自身は「172.16.0.0/16」のセグメントに接続していながらも、例えば「172.17.0.0/16」の異なる
セグメントに対し送出するブロードキャストのことです。以下では「172.17.255.255」がそれに該当します。
ダイレクトブロードキャストについては、セキュリティ上の問題があることから、IPネットワークにおける
経路制御装置であるルータにおいて、転送されないようにデフォルトで設定されているのが一般的です。
Cisco製品のルータでも、IOS12.0以降はデフォルトではダイレクトブロードキャストを転送しないように
設定されています。ただし、リモートネットワークなどから WoL (Wake on LAN) パケットを転送したい
場合などは、ダイレクトブロードキャストを転送するようにCiscoルータではI/F上で以下の通り設定します。
Cisco(config-if)# ip directed-broadcast |
まとめ
・ネットワークアドレスとは
→ホスト部の2進数のビットが全て 0 のアドレスです。ネットワークアドレスはネットワーク自体を指すアドレスとして使用されます。
・ブロードキャストアドレスとは
→ホスト部のビットが全て 1 のアドレスです。ブロードキャストアドレスはあるセグメントに接続されている全てのホストにパケットを送信するためのアドレスとして使用されます。
IPアドレス – グローバルIPアドレス & プライベートIPアドレス
・グローバルIPアドレスとは
・プライベートIPアドレスとは
◆ IPアドレス – グローバルIPアドレス
IPアドレスは大きく2種類あります。1つはグローバルIPアドレス、もう1つはプライベートIPアドレス。
グローバルIPアドレスとは、インターネットに接続された機器に一意に割り当てられるIPアドレスであり、
世界的にはICANN、日本ではJPNICという機関で管理しています。ICANNはIANAの後継組織となります。
グローバルIPアドレスの範囲 | |
クラス | アドレス範囲 |
クラスA | 1.0.0.0 ~ 9.255.255.255 |
11.0.0.0 ~ 126.255.255.255 | |
クラスB | 128.0.0.0 ~ 172.15.255.255 |
172.32.0.0 ~ 191.255.255.255 | |
クラスC | 192.0.0.0 ~ 192.167.255.255 |
192.169.0.0 ~ 223.255.255.255 |
今、この瞬間、みなさんは自分のPCをインターネット接続して「ネットワークエンジニアとして」の
Webサイトを閲覧しているので、みなさんのPCには上記のグローバルIPアドレスが付与されています。
※ NATやNAPTなどのアドレス変換技術をルータなどで使用している場合は、プライベートIPアドレスがPCに付与されます。
◆ IPアドレス – プライベートIPアドレス
プライベートIPアドレスは、会社や家庭などの組織内(ローカル)で一意に割り当てられるIPアドレス。
このIPアドレスはJPNICなどの機関に申請する必要はなく自由に使えます。自由に使用できるとはいえ
組織内で一意でない場合は、宛先を混同して正常に通信できないので一意に割り当てる必要があります。
また、このIPアドレスが割り当てられた機器はインターネットでは通信を行えないため、インターネット
通信を行うためには、アドレス変換技術などでグローバルIPを持つ機器に中継してもらう必要があります。
プライベートIPアドレスの範囲 | |
クラス | アドレス範囲 |
クラスA | 10.0.0.0 ~ 10.255.255.255 |
クラスB | 172.16.0.0 ~ 172.31.255.255 |
クラスC | 192.168.0.0 ~ 192.168.255.255 |
※ プライベートIPアドレスの情報だけを暗記して、プライベートIP以外がグローバルIPアドレスと覚える方が効率的です。
まとめ
・グローバルIPアドレスとは
→インターネットに接続された機器に一意に割り当てられるIPアドレスであり、
世界的にはICANN、日本ではJPNICという機関で管理しています。
・プライベートIPアドレスとは
→会社や家庭などの組織内(ローカル)で一意に割り当てられるIPアドレス。
IPアドレス – サブネットマスク & サブネット
今回出てくる用語
・サブネットマスクとは
・サブネットとは
◆ IPアドレス – サブネットマスク
IPアドレスのクラスが分かれば、ネットワーク部が何ビットであるのか分かります。クラスAでは「8bit」
クラスBでは「16bit」クラスCでは「24bit」がネットワーク部です。この情報をもとにネットワーク部の
示す範囲は以下の通り。ビット「1」がネットワークアドレス、ビット「0」がホストアドレスを示す範囲。
例えば「192.168.1.1」はクラスCのIPアドレスであるから、サブネットマスクが「255.255.255.0」である
ことが分かります。このようにサブネットマスクは、IPアドレスの32ビットのうち何ビットをネットワーク
アドレスに使うのかを定義するための32ビットの数値のことです。サブネットマスクには、2つの表記方法が
あります。今回の場合、1つは「192.168.1.0/24」もう1つは「192.168.1.0 255.255.255.0」となります。
◆ IPアドレス – サブネット
サブネットは、クラスA、B、Cのネットワークを複数の小さなネットワークに分割したネットワークのこと。
IPアドレスを構成するネットワーク部とホスト部のうち、ホスト部のビットをサブネット部として使用する
ことにより、ホスト部のビットをどれだけサブネット部として使用するのかは、NW管理者で自由に決めます。
例えば、1つのネットワークに400台のホストを接続したいとします。クラスCでは1つのネットワークに
最大「254台」までのホストしか接続できないので、クラスBのネットワークを採用する必要があります。
しかしクラスBの場合、1つのネットワークに最大「65534」のホストを接続できますが、400台のホスト
を接続するのにクラスBのアドレスを使用するのはかなりIPアドレスの無駄です。そこでサブネットの出番。
今回の場合、先ずクラスCでは要件を満たせないのでクラスBを使用します。次に、クラスBの場合、1つの
ネットワークが大きいのでサブネット化をします。ホスト部が 8 ビットである場合、28 により 256 です。
ホスト部が 9 ビットである場合 29 により512です。ネットワークアドレスとブロードキャストアドレスを
差し引いて(-2)、ホスト部が9ビットなら最大「510台」のホストを接続できますし、無駄もありません。9
現在の日本国内の社内ネットワークなどで最も使用されているサブネット化は、クラスAまたはクラスBの
ネットワークで「ホスト部を 8 ビットだけにする」というパターンです。つまり、1つのネットワークに
最大254台のホスト数が、ブロードキャストの分割、IPアドレス計画、ルーティング設計、セキュリティの
観点から最も都合が良いからです。また、クラスCではネットワークアドレス数が最大 256 と拡張性がない
ことから大企業でのクラスC採用は少なく、またクラスCのサブネット化についてもあまりないのが実情です。
まとめ
・サブネットマスクとは
→IPアドレスの32ビットのうち何ビットをネットワークアドレスに使うのかを定義するための32ビットの数値のこと。
・サブネットとは
→クラスA、B、Cのネットワークを複数の小さなネットワークに分割したネットワークのこと。
IPアドレス – サブネット数/アドレス数の算出方法
・サブネット数とは
・アドレス数の算出方法とは
◆ IPアドレス – サブネット数の算出方法
サブネットは、ホスト部のビットを使用することで作成できます。クラスA、B、Cに関係なく算出方法は
以下の通りです。例えばホスト部を 4 ビット使用すれば、そのクラスでは最大16のサブネットができます。
サブネット数の算出 | ||
ホスト部を消費するビット数 | 2の乗数 | サブネット数 |
1 bit | 21 = 2 | 2 |
2 bit | 22 = 4 | 4 |
3 bit | 23 = 8 | 8 |
4 bit | 24 = 16 | 16 |
5 bit | 25 = 32 | 32 |
6 bit | 26 = 64 | 64 |
7 bit | 27 = 128 | 128 |
8 bit | 28 = 256 | 256 |
9 bit | 29 = 512 | 512 |
10 bit | 210 = 1024 | 1024 |
11 bit | 211 = 2048 | 2048 |
12 bit | 212 = 4096 | 4096 |
: | : | : |
◆ IPアドレス – ホストアドレス数の算出方法
ホストアドレス数は各ネットワークでブロードキャストアドレスとネットワークアドレスを差し引いた数。
例えば、ホスト部が 4 ビットあれば、1つのネットワークで使用できるホストアドレス数は最大 14 です。
ホストアドレス数の算出 | ||
ホスト部のビット数 | 2の乗数 | ホストアドレス数 ( 2の乗数 -2 ) |
1 bit | 21 = 2 | 0 |
2 bit | 22 = 4 | 2 |
3 bit | 23 = 8 | 6 |
4 bit | 24 = 16 | 14 |
5 bit | 25 = 32 | 30 |
6 bit | 26 = 64 | 62 |
7 bit | 27 = 128 | 126 |
8 bit | 28 = 256 | 254 |
9 bit | 29 = 512 | 510 |
10 bit | 210 = 1024 | 1022 |
11 bit | 211 = 2048 | 2046 |
12 bit | 212 = 4096 | 4094 |
: | : | : |
◆ IPアドレス – サブネットマスクの算出方法
クラスCの以下のサブネットマスクの算出方法を暗記できれば、クラスAもBも考え方は同じとなります。
例えば「 /16 」のサブネットマスクは 255.255.0.0 ですが、「 /17 」 は 255.255.128.0 となります。
続いて「 /18 」は「 255.255.192.0 」となるので「 128→192→224→240 ・・」の増え方は同じです。
サブネットマスクの算出方法 | ||
CIDR表記 | 10進数表記 | 2進数表記 |
/24 | 255.255.255.0 | 11111111.11111111.11111111.00000000 |
/25 | 255.255.255.128 | 11111111.11111111.11111111.10000000 |
/26 | 255.255.255.192 | 11111111.11111111.11111111.11000000 |
/27 | 255.255.255.224 | 11111111.11111111.11111111.11100000 |
/28 | 255.255.255.240 | 11111111.11111111.11111111.11110000 |
/29 | 255.255.255.248 | 11111111.11111111.11111111.11111000 |
/30 | 255.255.255.252 | 11111111.11111111.11111111.11111100 |
/31 | 255.255.255.254 | 11111111.11111111.11111111.11111110 |
/32 | 255.255.255.255 | 11111111.11111111.11111111.11111111 |
◆ IPアドレス – ネットワークアドレスとブロードキャストアドレスの算出方法
デフォルトのクラスA、B、Cアドレスにおける、ネットワークアドレスとブロードキャストアドレスの場合、
ホスト部のビットを全て「0」にしたものがネットワークアドレス、ホスト部のオクテットを全て「1」に
したものがブロードキャストアドレスであることから、オクテット単位で迷いなく算出することができます。
ネットワークアドレス & ブロードキャストアドレスの算出方法 | ||
IPアドレスの例 | ネットワークアドレス | ブロードキャストアドレス |
10.40.1.19/8 | 10.0.0.0 | 10.255.255.255 |
172.16.20.101/16 | 172.16.0.0 | 172.16.255.255 |
192.168.1.90/24 | 192.168.1.0 | 192.168.1.255 |
クラス A、B、C の概念で、ホスト部をネットワークアドレスなら「 0 」、ブロードキャストアドレスなら
「255」以外にあり得なく、深く考える必要がないのです。それではサブネット化した場合はどうでしょうか。
多くの人は、10進数のIPアドレス情報を2進数へ変換して、ネットワーク部とホスト部にそれを分離してから
ホスト部にあたるものを全て「0」ビットにしたものがネットワークアドレス、全て「1」ビットにしたものが
ブロードキャストアドレスというやり方で算出すると思います。しかしシンプルで高速な算出方法があります。
ネットワークアドレス & ブロードキャストアドレスの算出方法 | ||
IPアドレスの例 | ネットワークアドレス | ブロードキャストアドレス |
10.40.1.19/12 | 10.32.0.0 | 10.47.255.255 |
172.16.20.101/21 | 172.16.16.0 | 172.16.23.255 |
192.168.1.90/27 | 192.168.1.64 | 192.168.1.95 |
以下のステップにより簡単に算出できますし、2進数への変換も必要ありません。例を読めば分かります。
① サブネットマスクの算出
② 256からサブネットマスク値をマイナス
③ ②の値を 0 から加算していく(この結果がネットワークアドレス)
④ ネットワークアドレスから -1 としたものがブロードキャストアドレス。
例えば「192.168.1.90/27」のサブネットマスクは「255.255.255.224」です。256 – 224 =「32」となり、
192.168.1.0/27 → 192.168.1.32/27 → 192.168.1.64/27 → 192.168.1.96/27がネットワークアドレスで
あることが分かります。 例えば「192.168.1.90/27」は 64 ~ 96 間のアドレスであることから、その結果、
ネットワークアドレスが「192.168.1.64」、ブロードキャストアドレスが「192.168.1.95」だと分かります。
例えば「172.16.20.101/21」のサブネットマスクは「255.255.248.0」です。256 – 248 =「8」となり、
172.16.0.0/21 → 172.16.8.0/21 → 172.16.16.0/21 → 172.16.24.0/21・・・がネットワークアドレスで
あることが分かります。 例えば 「172.16.20.101/21」 は 16 ~ 24 の間のアドレスであることから、結果、
ネットワークアドレスが「172.16.16.0」、ブロードキャストアドレスが「172.16.23.255」だと分かります。
まとめ
・サブネット数とは
→ホスト部のビットを使用することで作成できます。
・アドレス数の算出方法とは
→ホストアドレス数は各ネットワークでブロードキャストアドレスとネットワークアドレスを差し引いた数。
IPアドレス – VLSMとは & CIDRとは & ゼロサブネットとは
今回出てくる用語
・VLSMとは
・CIDRとは
・ゼロサブネットとは
◆ IPアドレス – VLSM とは
VLSM( Variable Length Subnet Mask )とは、1つのIPネットワークをサブネットに分割する際に、
複数の長さのサブネットマスクを利用する技術です。VLSMは可変長サブネットマスクとも呼ばれます。
ネットワークを分割する時に例えば「 /27 と /30 」の異なるサブネットを同時に利用する構成のこと。
このように、VLSMはクラスの概念にとらわれないクラスレスアドレッシングの手法の1つと言えます。
VLSMを利用することで、効率的なIPアドレッシングが実現できるのですが、VLSMを対応していない
クラスフルルーティングプロトコル(RIPv1)が稼動しているネットワークではVLSMは使用できません。
◆ IPアドレス – CIDR とは
CIDR(Classless InterDomain Routing)とは、IPネットワークの経路情報を集約する際にクラスの概念を
なくした技術のことです。CIDRにより複数のクラスCアドレスを1つのネットワークに集約することができ、
集約したネットワークは SuperNet(元のクラスのナチュラルマスクよりも短いマスクの経路)と言います。
CIDRによって、例えば「200.0.0.0/24」~「200.0.7.0/24」の8つのネットワークを、1つのネットワークに
集約をして「 200.0.0.0/21 」として扱うことができます。例えばインターネット上である組織がクラスCの
ネットワークではIPアドレスが足らないことからクラスBのネットワークを取得を希望した場合に、クラスBの
ネットワークを付与するのではなく、必要としているIPアドレスの数と同じくらいの数となるよう、連続する
複数のクラスCのネットワークを、1つのネットワークとして割り当てればIPアドレス空間を有効利用できます。
※ ルータは8つのルートを処理するのではなく、CIDRにより1つのルートを処理すればいいのでルータの負荷軽減となります。
これがCIDRの本来の意味なのですが、広義ではクラスを使用しないIPアドレッシングのことでもあります。
ただし、CIDRについては間違った解説が非常に多いので注意が必要です。
VLSMの場合は複数の異なるサブネットを作成していく時に「ホスト部のビット」を消費していくのに対し
CIDRの場合は複数のネットワークを1つのネットワークにする時に、「ネットワーク部」のビットを消費
していきます。CIDRでは、1つの大きなネットワークを作成するためにホスト部のビットを増やしてます。
◆ IPアドレス – ゼロサブネットとは
ゼロサブネットとは、サブネット部が全て 0 bitのネットワークのことです。例えば「 172.16.10.0/24 」
の場合ではサブネット部が全て 0bit になりませんが、「 172.16.0.0/24 」の場合はサブネット部が全て
0bit になります。このようなサブネットをゼロサブネットと言います。従来のサブネット計画においては、
このゼロサブネットと、サブネット部が全て「 1bit 」のネットワークの使用は推奨されていませんでした。
詳細は以下で確認頂きたいのですが、サブネットが全て「0bit」である「172.16.0.0/24」のサブネットは
もとのネットワーク「 172.16.0.0/16 」とネットワークアドレスが同じで混同してしまいます。また、
サブネットが全て「1bit」の「172.16.255.0/24」のサブネットはもとのネットワーク「172.16.0.0/16」
とブロードキャストアドレスが同じであるため混同してしまいます。しかし、現在のネットワーク機器では
これらの問題が解決しておりサブネット計画で全て 0 ビットのサブネット、全て 1 ビットのサブネットは
使用することが可能です。
サブネットが全て 「 0bit 」 の場合 | ||
IPアドレスの例 | ネットワークアドレス | ブロードキャストアドレス |
172.16.0.0/24 | 172.16.0.0 | 172.16.0.255 |
172.16.0.0/16 | 172.16.0.0 | 172.16.255.255 |
サブネットが全て 「 1bit 」 の場合 | ||
IPアドレスの例 | ネットワークアドレス | ブロードキャストアドレス |
172.16.255.0/24 | 172.16.255.0 | 172.16.255.255 |
172.16.0.0/16 | 172.16.0.0 | 172.16.255.255 |
Ciscoルータでも、IOS12.0以降では、ip subnet-zeroというコマンドがデフォルトで有効になっているので
デフォルトで全て0ビットのサブネット、全て1ビットのサブネットは使用できます。逆に、 ip subnet-zero
が有効でない機器ではゼロサブネットなどは使えないので、サブネット計算で算出結果から「-2」が必要です。
Cisco(config)# ip subnet-zero |
まとめ
・VLSMとは
→1つのIPネットワークをサブネットに分割する際に、複数の長さのサブネットマスクを利用する技術です
・CIDRとは
→IPネットワークの経路情報を集約する際にクラスの概念をなくした技術のこと。
・ゼロサブネットとは
→サブネット部が全て 0 bitのネットワークのことです。
IPアドレス / サブネット数 / アドレス数の算出問題 for CCNA
◆ ホスト数からサブネットマスクを算出 – Part1
下図のネットワークで「172.16.0.0/16」のネットワークを、サブネッティングすることを考えています。
各セグメントでホスト数は「最大50台」にする事を考えています。また、最大限多くのセグメントを作成
できるサブネッティングを考えています。以上の要件で、サブネットマスクはどの値にすべきでしょうか。
ホスト部のビットが「5bit」なら最大で 30 のホストアドレスを割り当てられ、ホスト部のビットが「6bit」
なら、最大で 62 のホストアドレスが割り当てれます。従って最低でもホスト部が「6bit」必要だと分かる。
最大限多くのセグメントを作成したい要件から、ホスト部は「6bit」だけとして残りをサブネット部で使用
するサブネッティングが適切なので今回は「255.255.255.192」=「/26」が正解です。下図はその例です。
※ 前提として、L2スイッチを束ねているL3スイッチではip subnet-zeroが設定されておりゼロサブネットなどが使えること。
◆ ホスト数からサブネットマスクを算出 – Part2
下図のネットワークで「192.168.1.0/24」のネットワークをサブネッティングすることを考えています。
下図で示されているホストアドレス数に対する適正なサブネットをサブネットの一覧から選択しましょう。
例えば「ホスト数:100台」は最低でもホスト部で「7bit」必要です。つまり、サブネット一覧のなかで
ホスト部が7bit確保できている「 192.168.1.0/25 」を選択する必要があります。「/26」のセグメントは
ホスト部が6bitとなりホストアドレスに割り当てられる数は最大で「 62台 」であり100台分はありません。
「 /25 」とすればホストアドレスとして最大で「126台」割り当てられます。その他も同じように考えます。
◆ ホストのIPアドレスからネットワークアドレスを算出
下図ネットワークでは、3つのホストのIPアドレスと1つのネットワーク機器のIPアドレスを表示しています。
それぞれのIPアドレスが所属しているネットワークアドレスがどのような値になるのかを考えてみましょう。
ネットワークアドレスとブロードキャストアドレスの算出方法についてはIPアドレス計算をご参照下さい。
ここで紹介している「ネットワークアドレスとブロードキャストアドレスの算出方法」を読み理解できれば
素早く該当するIPアドレスのネットワークアドレスとブロードキャストアドレスを算出することができます。
これらのアドレス計算については「IPアドレス計算・サブネット計算」ツールで色々と試してみましょう。
アドレス計算の上で最もベースの知識である上図の10進数の基準値は、常に頭の中でイメージできるよう
にしましょう。上図は「 2進数と10進数の変換 」で詳細に解説しているので、ご参考頂ければと思います。
IPアドレス – NATとは
今回出てくる用語
・NATとは
◆ NATとは
NAT(Network Address Translation)はIPアドレスを変換する技術です。一般的には、プライベート
IPアドレスをグローバルIPアドレスに変換する技術とされています。インターネットでは、グローバル
IPアドレスを使用して構築したネットワークですが、企業ネットワークでは、プライベートIPアドレス
を使用して構築されたネットワークなので、企業LANネットワークのクライアントPCがインターネット
接続する場合、プライベートIPアドレスをグローバルIPアドレスに変換(NAT)をする必要があります。
◆ NATの特徴
NATでは一般的にIPパケットのヘッダ内にある送信元IPアドレスを変換します。企業ネットワークでは
送信元IPアドレスがプライベートIPアドレスなので、NATによってグローバルIPアドレスに変換します。
NATでは、企業内LANのクライアントPCに割り当てられたIPアドレスを変換してインターネット通信が
行われることから、セキュリティが向上する利点がある一方、アプリケーションによりNAT変換による
通信では正常に動作しない問題点もあります。※ L3ではなくL7のデータ部にもIP情報がある場合です。
NATでは内部(企業内LAN)ネットワークから外部(インターネット)ネットワークへ、パケットが送信
される時は、IPパケットのヘッダ内にある送信元IPアドレスが変換されるが、下図のように外部から内部
へパケット(サーバからの返信パケット)が送信される時は宛先IPアドレスが変換されることになります。
◆ CiscoにおけるNAT用語
シスコではNATの用語を以下のように定義しています。以下の用語がCiscoルータなどのNAT変換を
行う機器において実際のステータス情報として出力されるので、正しく理解しておく必要があります。
NAT用語 | Ciscoでの出力表示 | 内容 |
内部ローカルアドレス | Inside local | 内部ネットワークのホストに割り当てられるIPアドレス (一般的には、企業LANで割り当てられるプライベートIPアドレス) |
内部グローバルアドレス | Inside global | 外部ネットワークから見た、内部ネットワークのホストのIPアドレス。 (一般的には、ISPから割り当てられるグローバルIPアドレス) |
外部ローカルアドレス | Outside local | 内部ネットワークから見た、外部ネットワークのホストのIPアドレス。 (一般的には、グローバルIPアドレス) |
外部グローバルアドレス | Outside global | 外部ネットワークのホストに割り当てられるIPアドレス。 (一般的には、グローバルIPアドレス) |
一般的には、内部ネットワークとは企業LANネットワーク側で、外部ネットワークとはインターネット側と
なりますが、実際にはCiscoのNATルータでip nat insideと設定したネットワークが内部ネットワークとなり
ip nat outsideと設定したネットワークが外部ネットワークとなります。この説明内容に例外はありません。
ローカルアドレスとはネットワーク内部で表現されるアドレス、グローバルアドレスとはネットワーク外部で表現されるアドレス。
NATには色々なアドレス変換方法がありますが、NATやNAPTでは送信元アドレスの変換をさせるケースが
多いです。その場合は、下図のとおり意識すべきは「内部ローカルアドレス」、「内部グローバルアドレス」
「外部グローバルアドレス」の3つ。送信元アドレス変換では「外部ローカルアドレス」と「外部グローバル
アドレス」の変換が行われないので、Cisco機器のステータスでもこれらには同じIPアドレスが表示されます。
まとめ
・NATとは
IPアドレスを変換する技術です。一般的には、プライベートIPアドレスをグローバルIPアドレスに変換する技術とされています。
IPアドレス – NATの仕組み (スタティックNATとダイナミックNAT)
今回出てくる用語
・スタティックNATとは
・ダイナミックNATとは
◆ NATの仕組み
ここでは送信元アドレス変換を行うNATの仕組みを紹介します。下図は内部ネットワークのクライアント
PCからインターネット上のサーバへパケットを送信している様子です。①から③の順で処理していきます。
次にサーバからの戻りのパケットです。送信元アドレス変換を行うNATルータがパケットを送信して
その戻りのパケットがNATルータに着信すると、NATルータはNAT変換したアドレスを元に戻します。
戻りのパケットは送信元アドレス変換でなくて、もとに戻すために宛先アドレス変換を行います。
◆ スタティックNATとダイナミックNAT
NATは、1対1のIPアドレス変換の技術ですが、その1対1の変換方法には、大きく2つの種類があります。
1つはスタティックNATです。スタティックNATは、システム管理者があらかじめNATルータに1対1の
変換エントリを設定しておくNAT。「内部ローカルアドレスと内部グローバルアドレス」を1対1で定義。
例えば「192.168.0.1」は「100.1.1.1」に変換、「192.168.0.2」は「100.1.1.2」に変換と事前設定。
もう1つはダイナミックNATです。ダイナミックNATでは、NAT変換で使用するIPアドレスのプールを
設定しておくことで、外部への通信が発生した時にそのプール内のIPアドレスを1つ使用してNAT変換。
ダイナミックNATではプール内の小さい値のIPアドレスから順に割り当てていきます。1つのルータで
ダイナミックNATとスタティックNATの両方が設定されている場合は、スタティックNATの設定が優先。
実際にクライアントPCからインターネット通信をする場合、スタティックNATやダイナミックNATを利用
するのではなくて、以下で紹介するPATという技術を使用してインターネット通信を行うのが極めて一般的。
まとめ
・スタティックNATとは
→システム管理者があらかじめNATルータに1対1の変換エントリを設定しておくNAT。
・ダイナミックNATとは
→NAT変換で使用するIPアドレスのプールを設定しておくことで、外部への通信が発生した時にそのプール内のIPアドレスを1つ使用してNAT変換。
IPアドレス – PATの仕組み
今回出てくる用語
・PATとは
◆ PAT
PAT (Port Address Translation) とは、1つのIPアドレスを複数のコンピュータで共有する技術のことです。
PATはシスコ用語で、一般的にはNAPT(Network Address Port Translation)、またはIPマスカレードと
いいます。企業LAN、大学LAN、自宅LANからインターネット通信する時に一般的に使用している技術です。
NATでは、スタティックNATでもダイナミックNATでもIPアドレス変換が1対1で行われるので、100台が
インターネット通信を同時に行いたい場合、100個のグローバルIPアドレスが必要となります。グローバル
IPアドレスが枯渇している現在では現実的な通信方式ではありません。PATではこの問題点を解決します。
PATではIPアドレスの他にTCP/UDPのポート番号も動的変換して、NATテーブルに変換エントリを登録する
ことで識別しています。IPが同じでも送信元ポート番号が異なるので、各通信を識別することができるのです。
理解すべき点は次のとおりです。PATではIPアドレス以外にポート番号もNAT変換エントリに登録しますが
NATと同じように、IPアドレスは送信元IPアドレスを変換します。NAT変換エントリにポート番号の情報が
追加される以外、NATの仕組みとほとんど同じです。また、PATはNATテーブルで「外部ローカルアドレス」
と「外部グローバルアドレス」の変換エントリが表示されますがこの宛先アドレスは変換されたりしません。
◆ PATの仕組み
PATでもNATと同様に送信元アドレスの変換を行います。また、NAT変換エントリとしてIPアドレスだけで
なくてポート番号も登録します。ここでは、インターネット上のサーバはHTTPサーバであると仮定します。
NATの場合、⑤の処理が「内部グローバルアドレス」情報をもとにNATテーブルの検索を行っていましたが
PATの場合、⑤の処理が「内部グローバルアドレス+ポート番号」「外部グローバルアドレス+ポート番号」
の4つの情報をもとにNATテーブル上の検索を行って、NATエントリに合致すると変換されることになります。
まとめ
・PATとは
→1つのIPアドレスを複数のコンピュータで共有する技術のことです。
Unnumbered ( アンナンバード ) とは
今回出てくる用語
・Unnumbered ( アンナンバード ) とは
◆ Unnumbered(アンナンバード)とは
アンナンバードとは、ルータのWAN側ポートにIPアドレスを割り当てることなく、LAN側だけに
IPアドレスを割り当てることで、2台のルータをまるで1台のルータのように扱える技術のことです。
この「アンナンバード」の技術を使用することで割り当てるIPアドレスを節約することができます。
具体的に見ていきましょう。WAN側に「 192.168.254.0/30 」のセグメントを割り振っています。
これをUnnumbered(アンナンバード)によるアドレッシングをすると192.168.254.0/30のセグメントを
割り当てることなく、R1とR2のLAN間で通信することが可能です。例えば、Ciscoルータでは以下のように
設定します。ip unnumbered の後はそのルータの送信元となるIPアドレスのインターフェースを指定します。
◆ Unnumbered(アンナンバード)のイメージ図
Unnumberedがなぜ2台のルータを1台のように見せる技術かというと、Unnumberedを設定することで
論理的には下図と同じ状態になるからです。ただし、シリアル接続時のWANセグメントのIPセグメントが
もったいないからUnnumberedを使用するのではなく、一般的にはPPPoE接続で使用することが多いです。
◆ Unnumbered を使用する PPPoE LAN型接続
Unnumberedは、PPPoEによるインターネット接続する際にとても役立ちます。先に紹介した構成では
プライベートIPアドレスを利用してネットワークを構成できますが、PPPoEによるインターネット接続では
グローバルIPアドレスが付与されるので、WAN側(インターネット接続側)に割り振られるIPアドレスを
なし(unnumbered)にして、グローバルIPアドレスを節約した構成を組むことが非常に重要になります。
PPPoE接続のLAN型接続の場合は、1つのグローバルIPセグメントが割り振られるので unnumbered を
実装できないルータではWAN側(インターネット接続側)だけにこのグローバルIPセグメントが割り当て
られるだけで、複数のグローバルIPアドレスを割り当てられても利用できない状態になってしまいます。
また、機種や構成によりそもそも動作しない場合もあり、ISPのいわゆる「グローバル8IP」の契約では、
Unnumbered対応のルータが必要と注釈としてあります。CiscoルータはもちろんUnnnumbered対応です。
【 参考情報 1 】
PPPoE接続には、端末型接続(端末払い出し)とLAN型接続(LAN型払い出し)の大きく2方式があります。
端末型接続の場合、1つのPPPoEセッションに対して、1つのグローバルIPアドレスを動的に払いだす方式。
LAN型接続では、1つのPPPoEセッションに対して、1つのグローバルIPセグメントを動的に払いだす方式。
Unnumbered を使用したPPPoE LAN接続のCiscoルータの設定例もご参考頂ければ理解しやすくなります。
【 参考情報 2 】
このUnnumberedにより、「グローバルIPアドレスを払いだす方式」は、一般的にはPPPoEのみとなります。
PPPoE以外の方式によって、キャリアから例えば「 /28 」のグローバルIPを払いだす場合、Internet接続用
リンク(WANリンク)に/30のグローバルIPアドレスを使用し、キャリアルータ、顧客ルータがそのポイント
ツーポイントでそのグローバルIPアドレスを使用します。キャリアルータは顧客ルータに払いだす「/28」の
ネットワークを宛先としたスタティックルートを定義しており、顧客ルータはデフォルトルートを設定します。
まとめ
・Unnumbered ( アンナンバード ) とは
→ルータのWAN側ポートにIPアドレスを割り当てることなく、LAN側だけにIPアドレスを割り当てることで、2台のルータをまるで1台のルータのように扱える技術のことです。
※最新の情報の取得・更新に努めておりますが、掲載内容については、その正確性、完全性、有用性、最新性等についていかなる保証もするものではありません。