網路地址轉換--動態NAT配置
2.1 實驗目的
(1)理解動態NAT和靜態對映的區別;
(2)掌握NAT地址池的配置;
(3)掌握NAT轉換中訪問控制列表的應用;
(4)掌握靜態NAT的配置
2.2 實驗原理
1.動態NAT
動態轉換(亦稱NAT pool)是指不建立內部地址和全域性地址的一對一的固定對應關係。而通過共享NAT地址池的IP地址動態建立NAT的對映關係。當內網主機需要進行NAT地址轉換時,路由器會在NAT地址池中選擇空閒的全域性地址進行對映,每條對映記錄是動態建立的,在連線終止時也被收回。
圖3 動態NAT的工作原理
如圖9-3所示,內網主機A的報文經過邊緣路由器時,路由器會在預先配置好的NAT地址池中選出空閒的內部全域性地址進行對映。如圖9-3所示,NAT地址池中只有202.80.20.2是空閒的,所以路由器選取該地址和172.16.10.10建立對映關係,172.16.10.10ßà202.80.20.2。因此資料包1的源IP地址將會替換為202.80.20.2。資料包從外網返回則替換目的IP地址。
2.動態NAT配置命令
動態NAT的配置過程如表3所示:
表3 動態NAT的配置步驟
配置說明 | 命令 | |
步驟1 | 配置內部介面、和外部介面 | //配置外部介面 Router(config-if)#interface interface-id Router(config-if)#ip nat outside //配置內部介面 Router(config-if)#interface interface-id Router(config-if)#ip nat inside |
步驟2 | 配置轉換地址池 | Router(config)#ip nat poolnamestart-ip end-ip {netmaskx.x.x.x |
步驟3 | 配置需要進行地址轉換源IP訪問控制列表 | Router(config) # access-list numberpermit x.x.x.x(網路號) x.x.x.x (子網掩碼) |
步驟4 | 配置NAT轉換 | Router(config)# ip nat inside source list numberpool pool-name |
步驟4 | 檢查NAT的執行結果 | Router#showip nat translations |
例子:允許內部地址為192.168.20.0/24的網路進行轉換,轉換的地址池為
210.20.20.10~210.20.20.15,子網掩碼為255.255.255.0。配置命令如下:
R1(config)# ip nat pool NAT-POOL 210.20.20.10 210.20.20.15 netmask 255.255.25.0
//主要配置以下引數:
//地址池名稱: TEST_POOL
//地址池開始地址:210.20.20.10
//地址池結束地址:210.20.20.15
//地址池的子網掩碼:255.255.255.0
R1(config)# access-list 1 permit 192.168.20.0
R1(config)# ip nat inside source list 1 pool NAT-POOL
3.動態NAT配置例項
網路拓撲圖如圖4所示:
圖4 動態NAT網路拓撲圖
地址表如表4所示:
表4 動態NAT網路IP地址表
裝置 | 介面 | IP地址 | 子網掩碼 |
R0 | Fa 0/0 | 10.10.10.2 | /24 |
Fa0/1 | 192.168.1.1 | /24 | |
Fa1/0 | 192.168.2.1 | /24 | |
R1 | S2/0 | 210.38.220.1 | /24 |
Fa0/0 | 10.10.10.1 | /24 | |
R2 | S2/0(DCE) | 210.38.220.2 | /24 |
PC1 | NIC | 192.168.1.10 | /24 |
PC2 | NIC | 192.168.1.20 | /24 |
PC3 | NIC | 192.168.2.10 | /24 |
背景說明:對於一些公司,它們可能會一次性申請很多個公網IP來為公司各個部門提供上網服務。我們假設某公司申請了6個公網IP,所屬網段為: 210.38.220.10à 210.38.220.15,子網掩碼為255.255.255.0;合法的公網IP地址不夠每人分配一個,但該公司一般情況下有1/2的人員在外跑業務或做技術支援,在公司的員工也不會一直需要提供網路服務,據此,我們可以通過動態分配全域性地址的地址轉換技術來解決該公司的需要。
配置要求:配置動態NAT,允許轉換IP地址屬於192.168.1.0/24的網段,其他網段不允許進行NAT轉換。
實驗步驟:
步驟1:R0配置
R0(config)# interface f0/0
R0(config-if)# ip address 10.10.10.2 255.255.255.0 //配置介面IP地址
R0(config-if)# no shutdown
R0(config)# interface f0/1
R0(config-if)# ip address 192.168.1.1 255.255.255.0 //配置介面IP地址
R0(config-if)# no shutdown
R0(config)# interface f1/0
R0(config-if)# ip address 192.168.2.1 255.255.255.0 //配置介面IP地址
R0(config-if)# no shutdown
R0(config-if)#ip route 0.0.0.0 0.0.0.0 f0/0//配置R0預設路由。
步驟2:R1的配置。
R1(config)# interface f0/0
R1(config-if)# ip address 10.10.10.1 255.255.255.0 //配置介面IP地址
R1(config-if)#ip nat inside //配置f0/0為內部介面
R1(config-if)# no shutdown
R1(config)# interface s2/0
R1(config-if)# ip address 210.38.220.1 255.255.255.255 //配置介面IP地址
R1(config-if)#ip nat outside//配置s2/0為外部介面
R1(config-if)# no shutdown
R0(config-if)#ip route 0.0.0.0 0.0.0.0 S2/0 //配置預設路由。
R1(config)#access-list 1permit192.168.1.00.0.0.255//配置匹配內網IP地址訪問控制列表
//配置NAT地址池
R1(config)#ip nat pool TEST_POOL 210.38.220.10 210.38.220.15 netmask 255.255.255.0
R1(config)#ip nat inside source list 1 pool TEST_POOL//配置動態NAT轉換
步驟3:R2的配置。
R2(config)#int s2/0
R2(config-if)#ip address210.38.220.2255.255.255.255
R2(config-if)# clock rate 64000
R2(config-if)#no shutdown
步驟4:檢查配置結果與測試
(1)動態NAT的對映關係不是靜態建立的,而是通過資料流觸發建立的,因此每次建立的對映關係可能是不一樣的,在沒有觸發流量的時候,檢視nat對映表。
R2#sh ip nat translations
R2#
可以看到對映表是空的,說明對映關係並沒有建立。
我們分別從PC1、PC2觸發流量,在觀察NAT對映表的情況。
R1#sh ip nat translations
Pro Inside global Inside local Outside local Outside global
icmp 210.38.220.10:21 192.168.1.10:21 210.38.220.2:21 210.38.220.2:21
icmp 210.38.220.10:22 192.168.1.10:22 210.38.220.2:22 210.38.220.2:22
icmp 210.38.220.11:15 192.168.1.20:15 210.38.220.2:15 210.38.220.2:15
icmp 210.38.220.11:16 192.168.1.20:16 210.38.220.2:16 210.38.220.2:16
可以看到192.168.1.10 à210.38.220.10,192.168.1.20 à210.38.220.11,說明地址轉換起到效果。
(2)使用debug命令檢視到的轉換過程。
R1#debug ip nat
IP NAT debugging is on
R1#
NAT: s=192.168.1.10->210.38.220.11, d=210.38.220.2 [21]// s表示源地址轉換
NAT*: s=210.38.220.2, d=210.38.220.11->192.168.1.10 [32]//d表示目的地址轉
NAT: s=192.168.1.10->210.38.220.11, d=210.38.220.2 [22]
NAT*: s=210.38.220.2, d=210.38.220.11->192.168.1.10 [33]
(3) 動態NAT對映表條目存在一定生存時間,時間超過時轉換條目將會被自動刪除。一對一的動態NAT超時時間為10分鐘(600秒);基於埠的動態NAT超時時間為1分鐘(60秒)。
注意事項:
1)不要把inside和outside應用的介面弄錯:
2)如果有條件,儘量不要用outside介面的全域性地址作為內部全域性地址,該介面地址的所有者是網際網路服務提供商(ISP)。當線路變更時地址就會改變,就需要更改DNS記錄了,如果是直接通過IP提供服務,那就更麻煩,而線路的變更是常有的。另外,路由器的outside介面有可能不是可用的地址,而是私有地址等。