目的:了解各種NAT的作用和并學會如何配置NAT
說明:
NAT(網(wǎng)絡地址轉(zhuǎn)換)是將私有IP地址轉(zhuǎn)化為合法IP的轉(zhuǎn)換技術(shù),它被廣泛應用于各種類型Internet接入方式和各種類型的網(wǎng)絡中。NAT不僅完美地解決了lP地址不足的題,而且還能夠有效地避免來自網(wǎng)絡外部的攻擊,隱藏并保護網(wǎng)絡內(nèi)部的計算機。 NAT有五種方式:靜態(tài)Nat、動態(tài)Nat 、超載NAT、NAT的TCP負載均衡(只對TCP協(xié)議流量)、重疊網(wǎng)絡的NAT。
注意NAT中的幾個術(shù)語:
- 內(nèi)部本地:是由專用網(wǎng)絡使用的私有IP地址。
- 內(nèi)部全球:是公共IP地址,是內(nèi)部本地地址將轉(zhuǎn)換為的注冊IP。
- 外部全球:是外部主機的實際IP地址
- 外部本地:是用來對外部全球IP地址進行轉(zhuǎn)換的IP地址
實驗A、(靜態(tài)NAT)PacketTracert創(chuàng)建如下拓撲:

配置R0:
Router>en
Router#conf t
Router(config)#host R0
R0(config)#int fa0/0
R0(config-if)#ip add 192.168.80.254 255.255.255.0
R0(config-if)#ip nat inside
R0(config-if)#no sh
R0(config-if)#exit
R0(config)#int fa0/1
R0(config-if)# ip add 192.168.21.254 255.255.255.0
R0(config-if)#ip nat inside
R0(config-if)#no sh
R0(config-if)#exit
R0(config)#int s0/0
R0(config-if)#ip add 202.168.12.1 255.255.255.0
R0(config-if)#ip nat outside
R0(config-if)#clock rate 64000
R0(config-if)#no sh
R0(config-if)#exit
R0(config)#ip nat inside source static 192.168.80.80 202.168.12.3
R0(config)#ip nat inside source static tcp 192.168.21.21 21 202.168.12.1 21
R0(config)#ip route 0.0.0.0 0.0.0.0 202.168.12.2
配置R1:
Router>en
Router#conf t
Router(config)#host R1
R1(config)#int fa0/0
R1(config-if)#ip add 192.168.1.254 255.255.255.0
R1(config-if)#no sh
R1(config-if)#exit
R1(config)#int s0/0
R1(config-if)#ip add 202.168.12.2 255.255.255.0
R1(config-if)#no sh
R1(config-if)#exit
測試NAT效果:



實驗B、(動態(tài)NAT)PacketTracert 創(chuàng)建如下拓撲:

配置R0:
Router>en
Router#conf t
Router(config)#host R0
R0(config)#int fa0/0
R0(config-if)#ip add 192.168.80.254 255.255.255.0
R0(config-if)#no sh
R0(config-if)#exit
R0(config)#int s0/0
R0(config-if)#ip add 202.168.12.1 255.255.255.0
R0(config-if)#no sh
配置R1:
Router>en
Router#conf t
Router(config)#host R1
R1(config)#int fa 0/0
R1(config-if)#ip add 192.168.0.254 255.255.255.0
R1(config-if)#ip nat inside
R1(config-if)#no sh
R1(config-if)#exit
R1(config)#int fa0/1
R1(config-if)#ip add 192.168.1.254 255.255.255.0
R1(config-if)#ip nat inside
R1(config-if)#no sh
R1(config-if)#exit
R1(config)#int s0/0
R1(config-if)#ip add 202.168.12.2 255.255.255.0
R1(config-if)#clock rate 64000
R1(config-if)#ip nat outside
R1(config-if)#no sh
R1(config-if)#exit
R1(config)#access-list 1 deny 192.168.0.0 0.0.0.255
R1(config)#access-list 1 permit 192.168.1.0 0.0.0.255
R1(config)#ip nat pool InternetPool 202.168.12.3 202.168.12.10 netmask 255.255.255.0
R1(config)#ip nat inside source list 1 pool InternetPool
R1(config)#ip route 0.0.0.0 0.0.0.0 202.168.12.1
測試NAT效果:



實驗C、(超載NAT)PacketTracert創(chuàng)建拓撲:

配置R0:
Router>en
Router#conf t
Router(config)#host R0
R0(config)#int fa0/0
R0(config-if)#ip add 192.168.80.254 255.255.255.0
R0(config-if)#no sh
R0(config-if)#exit
R0(config)#int s0/0
R0(config-if)#ip add 202.168.12.1 255.255.255.0
R0(config-if)#clock rate 64000
R0(config-if)#no sh
R0(config-if)#exit
配置R1:
Router>en
Router#conf t
Router(config)#int fa0/0
Router(config-if)#exit
Router(config)#host R1
R1(config)#int fa0/0
R1(config-if)#ip add 192.168.0.254 255.255.255.0
R1(config-if)#ip nat inside
R1(config-if)#no sh
R1(config-if)#exit
R1(config)#int fa0/1
R1(config-if)#ip add 192.168.1.254 255.255.255.0
R1(config-if)#ip nat inside
R1(config-if)#no sh
R1(config-if)#exit
R1(config)#int s0/0
R1(config-if)#ip add 202.168.12.2 255.255.255.0
R1(config-if)#ip nat outside
R1(config-if)#no sh
R1(config-if)#exit
R1(config)#access-list 1 deny 192.168.0.0 0.0.0.255
R1(config)#access-list 1 permit 192.168.1.0 0.0.0.255
R1(config)#ip nat inside source list 1 int s0/0 overload
R1(config)#ip route 0.0.0.0 0.0.0.0 192.168.12.1
測試NAT效果:



實驗D、(NAT的TCP負載均衡)GNS與Vmware workstation7.1.2結(jié)合創(chuàng)建如下拓撲:

說明:
(1)兩臺安裝好的windows 2003 虛擬機FTP1 和FTP2,并搭建FTP服務器
(2)FTP1與FTP2 關聯(lián)到VMware workstation的vmnet1網(wǎng)卡,并按圖配置IP。
(3)PC關聯(lián)到物理電腦的Loopback 0網(wǎng)卡,并按圖配置IP
(4)注意:NAT 的TCP負載分配只針對TCP流量,其它的流量不能實現(xiàn)
配置R1:
Router>en
Router#conf t
Router(config)#host R0
R1(config)#int e0/3
R1(config-if)#ip add 192.168.21.254 255.255.255.0
R1(config-if)#ip nat inside
R1(config-if)#no sh
R1(config-if)#exit
R1(config)#int e0/2
R1(config-if)#ip add 202.168.12.1 255.255.255.0
R1(config-if)#ip nat outside
R1(config-if)#no sh
R1(config-if)#exit
R1(config)#access-list 1 permit host 202.168.12.21