使用GNS3進行NAT配置
一、NAT
1、概念
NAT:網路地址轉換
- 實現將內網私有IP地址轉換為公網IP地址
- 解決公網IP地址數目不足的問題
- 可保護內網IP地址的私密性,起到一定的安全性
- 還可實現企業內多個私有IP網段重疊問題
2、NAT分類
靜態NAT:唯一的私有IP------對映------唯一的公網IP(對映關係確定,永久儲存)
動態NAT:多個私有IP------對映------多個公網IP(對映關係不確定,向外訪問時建立對映關係)
埠複用:區域網中多個或全部私有IP------對映------1個公網IP(對映關係不確定,向外訪問時建立 對映關係)
私有IP地址:
A類:10.0.0.0--10.255.255.255
B類:172.16.0.0--172.31.255.255
C類:492.168.0.0--192.168.255.255
169.254.0.0--169.254.255.255(主機從DHCP伺服器獲取IP地址失敗、或IP地址發生衝突後自動生成)
3、NAT配置命令
靜態NAT:
R3(config)#ip nat inside source static 內部私有IP地址 公網地址
動態NAT:
1)建立允許內網IP網段進行NAT轉換的ACL:
R3(config)#access-list 標準ACL編號 permit 內網IP網段 萬用字元掩碼
2)建立公網IP地址池:
R3(config)#ip nat pool 地址池名稱 起始公網地址 結束公網地址 netmask 子網掩碼
3)建立動態NAT:
R3(config)#ip nat inside source list ACL編號 pool 公網地址池名稱
埠複用:
1)建立允許內網IP網段進行NAT轉換的ACL:
R3(config)#access-list 標準ACL編號 permit 內網IP網段 萬用字元掩碼
2)建立埠複用NAT:
R3(config)#ip nat inside source list ACL編號 interface 外網介面 overload
內部、外部埠定義:
R3(config)#interface 內網介面
R3(config-if)#ip nat inside
R3(config)#interface 外網介面
R3(config-if)#ip nat outside
二、案例
拓撲圖
三、案例配置
1、R1路由器的基本網路配置
configure terminal
interface f0/0
ip address 192.168.10.254 255.255.255.0
no shutdown
interface f1/0
ip address 202.100.10.1 255.255.255.0
no shutdown
exit
ip route 0.0.0.0 0.0.0.0 202.100.10.2
exit
write
2、R2路由器的基本網路配置
configure terminal
interface f0/0
ip address 202.100.10.2 255.255.255.0
no shutdown
interface f1/0
ip address 202.100.20.1 255.255.255.0
no shutdown
exit
exit
write
3、R3路由器的基本網路配置
configure terminal
interface f0/0
ip address 192.168.20.254 255.255.255.0
no shutdown
interface f1/0
ip address 202.100.20.2 255.255.255.0
no shutdown
exit
ip route 0.0.0.0 0.0.0.0 202.100.20.1
4、PC1(R4)的基本配置
configure terminal
hostname PC1
interface f0/0
ip address 192.168.10.1 255.255.255.0
no shutdown
exit
ip route 0.0.0.0 0.0.0.0 192.168.10.254
5、PC2(R5)的基本配置
configure terminal
hostname PC2
interface f0/0
ip address 192.168.20.1 255.255.255.0
no shutdown
exit
ip route 0.0.0.0 0.0.0.0 192.168.20.254
6、連通性測試:(R1、R3未做NAT配置前)
R1#ping 202.100.20.2(通)
R1#ping 192.168.20.1(不通,R2無私網IP網段的路由)
R3#ping 202.100.10.1(通)
R3#ping 192.168.10.1(不通,R2無私網IP網段的路由)
PC1#ping 202.100.10.1(通,自己閘道器的外網介面)
PC1#ping 202.100.10.2(不通,R2路由器無回去的私有網段路由)
PC1#ping 202.100.20.1(不通,理由同上)
PC1#ping 202.100.20.2(不通,理由同上)
PC1#ping 192.168.20.1(不通,理由同上)
PC2#ping 202.100.20.2(通,自己閘道器的外網介面)
PC2#ping 202.100.20.1(不通,R2路由器無回去的私有網段路由)
PC2#ping 202.100.10.2(不通,理由同上)
PC2#ping 202.100.10.1(不通,理由同上)
PC2#ping 192.168.10.1(不通,理由同上)
7、靜態NAT配置(R1、R3路由器上分別完成)
1>配置
R1(config)#ip nat inside source static 192.168.10.1 202.100.10.10
R1(config)#interface f1/0
R1(config-if)#ip nat outside
R1(config-if)#interface f0/0
R1(config-if)#ip nat inside
R1(config-if)#exit
R1(config)#exit
R1#show ip nat translation(可看到2條NAT記錄)
R3(config)#ip nat inside source static 192.168.20.1 202.100.20.10
R3(config)#interface f1/0
R3(config-if)#ip nat outside
R3(config-if)#interface f0/0
R3(config-if)#ip nat inside
R3(config-if)#exit
R3(config)#exit
R3#show ip nat translation(可看到2條NAT記錄,此NAT表中的靜態記錄永久存在)
2>連通性測試
PC1#ping 202.100.10.2 (通,實現靜態NAT後)
PC1#ping 202.100.20.1(通,實現靜態NAT後)
PC1#ping 202.100.20.2(通,實現靜態NAT後)
PC1#ping 202.100.20.10(通,實現靜態NAT後,訪問202.100.20.10就是在訪問192.168.20.1),原本202.100.20.10地址並不存在,只是做了靜態對映後,該地址就存在了,只是它對映的是192.168.20.1
PC2#ping 202.100.20.1 (通,理由同上)
PC2#ping 202.100.10.2(通,理由同上)
PC2#ping 202.100.10.1(通,理由同上)
PC2#ping 202.100.10.10(通,實現靜態NAT後,訪問202.100.10.10就是在訪問192.168.10.1),原本202.100.10.10地址並不存在,只是做了靜態對映後,該地址就存在了,只是它對映的是192.168.10.1
8、動態NAT配置
1>配置
R3(config)#access-list 2 permit 192.168.20.0 0.0.0.255
R3(config)#no ip nat inside source static 192.168.20.1 202.100.20.10(刪除靜態對映)
R3(config)#ip nat pool caiwubu 202.100.20.20 202.100.20.25 netmask 255.255.255.0
R3(config)#ip nat inside source list 2 pool caiwubu
R3(config)#exit
R3#show ip nat translation(看不到動態對映的NAT記錄,因為:內網未向外訪問,動態對映不能建立)
內部、外部埠前面已經定義
2>連通性測試
R1#ping 202.100.20.20(不通,R3路由器的動態NAT對映未建立,外網不能主動訪問內網主機)
PC2#ping 202.100.10.1
R3#show ip nat translation(動態對映建立,可看到ICMP包的轉換記錄,源地址192.168.20.1,轉換為公網IP:202.100.20.20)
9、埠複用
1>配置
ACL前面已經建立
R3(config)#no ip nat pool caiwubu 202.100.20.20 202.100.20.25 netmask 255.255.255.0
R3(config)#ip nat inside source list 2 interface f0/0 overload
R3(config)#exit
R3#show ip nat translation(看不到埠複用的NAT記錄,因為:內網未向外訪問,動態對映不能建立)
內部、外部埠前面已經定義
2>連通性測試
PC2#ping 202.100.10.1
R3#show ip nat translation
(動態對映建立,可看到ICMP包的轉換記錄,源地址192.168.20.1,轉換為外網介面IP:202.100.20.2)
10、埠複用+靜態對映
開啟PC2的Telnet功能
PC2(config)#line vty 0 4
PC2(config-line)#pass 123
PC2(config-line)#login
PC2(config-line)#exit
PC2(config)#enable password abc
PC2(config)#exit
PC2#write
靜態對映前telnet連線測試
PC1#telnet 202.100.20.2(失敗,未建立23號埠的靜態對映)
在R3上配置埠複用+靜態對映(ACL前面已經建立)
R3(config)#ip nat inside source static tcp 192.168.20.1 23 interface f1/0 23
R3(config)#exit
R3#show ip nat translation(可以看到一條23號埠的永久對映記錄已經建立)
Telnet連線測試---成功
PC1#telnet 202.100.20.2
輸入Telnet登入密碼:123
PC2>enable
輸入特權模式密碼:abc
PC2#enable