CCNA4 IPアドレス〜NAT

■クラスフルアドレッシング

クラスの概念

クラスA:第一オクテッド先頭 0
0.*.*.* - 127.*.*.*
※00000000〜01111111

クラスB:第一オクテッド先頭 10
128.*.*.* - 191.*.*.*
※10000000〜10111111

クラスC:第一オクテッド先頭 110
192.*.*.* - 223.*.*.*
※11000000〜11011111 という事


※現在、ICANNではクラスフルは採用されていない。


■使用できないアドレス
クラスDアドレス・クラスEアドレス

クラスAのネットワーク番号0のアドレス(0.0.0.0〜0.255.255.255)

クラスAのネットワーク番号127のアドレス(127.0.0.0〜127.255.255.255)
※ループバック

255.255.255.255
※ローカルブロードキャストアドレス

ホストのビットが全て0
※ネットワークアドレス

ホストのビットが全て1
※ブロードキャストアドレス


■CIDR
CIDR(Classless Inter-Domain Routing)は広義の意味では
クラスレスアドレッシングそのものを指す。
/20 などの表記



■VLSM

VLSM(Variable-Length Subnet Mask:可変長サブネットマスク)はクラスレスアドレッシングの1つで,同一ネットワーク内でさまざまな長さのサブネットマスクを使用できる。

これにより,IPアドレスの効率的な使用が可能。



(例)

イメージ的には/27で分割したサブネットのうち,192.168.128.0/27をさらに小さく/30で分割した感じになります。

特に/30(255.255.255.252)というプレフィックス長のサブネットは2個の

IPアドレスだけが使用可能なサブネットで,ルータ間サブネットによく

利用されます




IPアドレスの分類

プライベートIPアドレス

クラスA・・・ 10.0.0.0/8

クラスB・・・ 172.16.0.0/12

クラスC・・・ 192.168.0.0/16

上記のクラスAで1つ,クラスBで16,クラスCで256のネットワークが

ローカルな使用を前提とした「プライベートIPアドレス



■NATで使うIPアドレス

NATで使うIPアドレスを以下の4つに分類しています。

内部ローカルアドレス

・・・ 内部ネットワークのホストに与えられたアドレス。通常はプライベート  IPアドレスが使われる



内部グローバルアドレス

・・・ 外部ネットワーク(インターネットなど)で使用可能なアドレス。通常  はグローバルIPアドレスが使われる



外部ローカルアドレス

・・・ 外部ネットワークに存在するホストを,内部ネットワークのホストが識  別するためのアドレス。グローバルIPアドレスである必要はない



外部グローバルアドレス

・・・ 外部ネットワークに存在するホストに付けるアドレス。通常はグローバ  ルIPアドレスが使われる




■動的NATと静的NAT

静的NATは変換する内部ローカルとそれに対応する内部グローバルを

事前にNATテーブルに記述しておく必要がある。

一方の動的NATは,変換される内部グローバルアドレスは複数のIPアドレス(アドレスプール)になる。

そのアドレスプールの中から任意に選んだ1つに変換される。



■PAT(NAPT)の基本動作

PATはNATのアドレス変換に加えて「ポート番号の変換」実施。

これにより,複数の内部ローカルアドレスを1つの外部グローバルアドレスに変換することができる。

※NATは外部への接続数分だけ内部グローバルIPアドレスが必要




■NATの設定

①:内部向け・外部向けポートの選別



(config)# interface serial 0

(config-if)# ip nat outside

(config-if)# exit

***serial 0へ外部向け設定***

(config)# interface fa 0/1

(config-if)# ip nat inside

(config-if)# exit

***fast ethernet0 へ内部向け設定***



②:外部向けに変換する内部アドレスの設定

※いずれも(config)で設定するので注意

★静的NATの場合

(config)# ip nat inside source static [内部ローカルアドレス] [内部グローバルIPアドレス]

※内部グローバルIPアドレスが複数ある場合、複数回設定を行う。





★動的NATの場合

アドレスプール設定

(config)# ip nat pool [プール名] [最初のアドレス] [最後のアドレス] netmask [サブネットマスク]



動的NATは指定した範囲の内部ローカルアドレスを,アドレスプール(複数の内部グローバルアドレス)内のアドレスに変換。

そのため,アドレスプールと,変換される内部ローカルアドレスを設定する必要があります。まず,アドレスプールの設定は次のようになります。



※[プール名]アドレスプール名。任意

※[最初/最後のアドレス] 内部グローバルの範囲の最初と最後のアドレス

※[サブネットマスク] 変換後のアドレスのサブネットマスク




変換される内部ローカルアドレスの範囲は,アクセスリストで設定。

アドレスプールと,アクセスリストを設定後,動的NATの設定を行います。

(config)# ip nat inside source list [ACL番号] pool [プール名]




(例)

(config)#access-list 10 permit 192.168.0.0 0.0.255.255

※内部ローカルアドレスの範囲決め

(config)#ip nat pool testpool 10.0.0.1 10.0.0.5 netmask 255.255.255.0

※プール名と内部グローバルアドレスの範囲決め

(config)#ip nat inside source list 10 pool testpool

※内部のアドレス(ACL)と外部のアドレス(プール)を設定





■PATの設定

PATの設定は,動的NATの設定と基本的には同じ。

アドレスプールと変換される内部ローカルアドレスACLで設定します。

最後にoverloadというキーワードを入れる



(config)# ip nat inside source list [ACL番号] pool [プール名] overload



おさらい

NAT/PAT設定手順としては,次の通り(静的NATの場合,3と4は省略)。

1.ローカルネットワークのインタフェースにip nat inside

2.グローバルネットワークのインタフェースにip nat outside

3.ip nat poolコマンドでアドレスプール設定

4.内部ローカルアドレスACLで範囲設定

5.ip nat inside sourceコマンドで設定





■NATの確認

show ip natコマンドを使用。

show ip natコマンドには2種類あります。

# show ip nat [translations | statistics]

[translations]

NATテーブルの確認

[statistics]

統計情報の確認



※動的NATの場合,NATテーブルは実際にパケットをルータが受け取って,

 アドレスを変換するまで表示されません



アドレスの変換はdebugコマンドでリアルタイムに確認することが可能。

# debug ip nat ・・・ NAT/PATによるアドレス変換の表示