CCNA實驗之:網絡地址轉換(NAT)實驗

實驗目標

1.在中型企業分支機構網絡中實現和驗證NAT和AC以及排除故障

2.闡述NAT的基本工作原理

3.根據網絡需求配置NAT(包括CLI/sdm)

4.排除NAT故障

關於NAT

要真正瞭解NAT就必須先了解現在IP地址的適用情況,私有 IP 地址是指內部網絡或主機的IP 地址,公有IP 地址是指在因特網上全球唯一的IP 地址。RFC 1918 爲私有網絡預留出了三個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

上述三個範圍內的地址不會在因特網上被分配,因此可以不必向ISP 或註冊中心申請而在公司或企業內部自由使用

隨着接入Internet的計算機數量的不斷猛增,IP地址資源也就愈加顯得捉襟見肘。事實上,除了中國教育和科研計算機(CERNET)外,一般用戶幾乎申請不到整段的C類IP地址。在其他ISP那裏,即使是擁有幾百臺計算機的大型局域網用戶,當他們申請IP地址時,所分配的地址也不過只有幾個或十幾個IP地址。顯然,這樣少的IP地址根本無法滿足網絡用戶的需求,於是也就產生了NAT技術。

雖然NAT可以藉助於某些代理服務器來實現,但考慮到運算成本和網絡性能,很多時候都是在路由器上來實現的。

在什麼情況下使用NAT

  • 需要連接到互聯網

  • 更換的ISP要求對網絡進行重新編址

  • 需要合併兩個使用相同編址方案的內聯網

NAT的優點與缺點

 優點   
缺點
 節省合法的註冊地址地址轉換將增加交換延時
 在地址重疊時提供解決方案導致無法端到端的IP跟蹤
 提供連接到因特網的靈活性   
導致有些應用程序無法運行
 在網絡發生變化時重新編址

NAT的類型

靜態NAT:    在本地地址和全局地址進行一對一的映射.即每臺需要上網的主機都需要一個公網IP

動態NAT:    將未註冊的IP地址映射到註冊IP地址池中的一個地址,即需要足夠的地址池

NAT重載:    也是動態NAT,它利用源端口將多個非註冊IP地址映射到一個IP地址(多對一),也稱爲PAT(端口地址轉換),通過這個只需要一個IP地址即可讓局域網的幾千臺主機上網

NAT工作原理

藉助於NAT,私有(保留)地址的"內部"網絡通過路由器發送數據包時,私有地址被轉換成合法的IP地址,一個局域網只需使用少量IP地址(甚至是1個)即可實現私有地址網絡內所有計算機與Internet的通信需求。

NAT將自動修改IP報文的源IP地址和目的IP地址,Ip地址校驗則在NAT處理過程中自動完成。有些應用程序將源IP地址嵌入到IP報文的數據部分中,所以還需要同時對報文的數據部分進行修改,以匹配IP頭中已經修改過的源IP地址。否則,在報文

數據部分嵌入IP地址的應用程序就不能正常工作。


①client(終端) 的 gateway (網關)設定爲 NAT 主機,所以當要連上 Internet 的時候,該封包就會被送到 NAT 主機,這個時候的封包 Header 之 source IP(源IP) 爲 192.168.1.100 ;

②而透過這個 NAT 主機,它會將 client 的對外聯機封包的 source IP ( 192.168.1.100 ) 僞裝成 ppp0 ( 假設爲撥接情況 )這個接口所具有的公共 IP ,因爲是公共 IP 了,所以這個封包就可以連上 Internet 了,同時 NAT 主機並且會記憶這個聯機的封包是由哪一個 ( 192.168.1.100 ) client 端傳送來的;


③由 Internet 傳送回來的封包,當然由 NAT主機來接收了,這個時候, NAT 主機會去查詢原本記錄的路由信息,並將目標 IP 由 ppp0 上面的公共 IP 改回原來的 192.168.1.100 ;

④最後則由 NAT 主機將該封包傳送給原先發送封包的 Client。

配置靜態NAT

interface Ethernet0/1
 ip address 192.168.1.1 255.255.255.0
 ip nat inside  #指定NAT入口
 half-duplex
!
interface Ethernet0/2
 ip address 192.168.2.1 255.255.255.0
 ip nat outside  #指定NAT出口
 half-duplex
!
ip nat inside source static 192.168.1.1 192.168.2.1 #把192.168.1.1轉換爲192.168.2.1

配置動態NAT

配置動態NAT需要一個地址池,用於內部用戶提供公有IP地址.動態NAT不使用端口號,因此對於同時訪問外網的內部主機,都需要一個公有IP地址.

interface Ethernet0/1
 ip address 192.168.1.1 255.255.255.0
 ip nat inside  #指定NAT入口
 half-duplex
!
interface Ethernet0/2
 ip address 192.168.2.1 255.255.255.0
 ip nat outside  #指定NAT出口
 half-duplex
!
ip nat pool lan 192.168.2.1 192.168.2.254 prefix-length 24  #創建一個NAT地址池
ip nat inside source list 10 pool lan  #使用NAT地址池
access-list 10 permit 192.168.1.1  #利用ACL進行主機過濾

配置PAT(NAT重載)

interface Ethernet0/1
 ip address 192.168.1.1 255.255.255.0
 ip nat inside  #指定NAT入口
 half-duplex
!
interface Ethernet0/2
 ip address 192.168.2.1 255.255.255.0
 ip nat outside  #指定NAT出口
 half-duplex
!
ip nat pool lan 192.168.2.1 192.168.2.1 prefix-length 24  #創建一個PNAT地址,即公網地址(NAT後的地址)
ip nat inside source list 10 pool lan overload #創建PNATaccess-list 10 permit 192.168.1.1  #利用ACL進行主機過濾

相比於前面的動態NAT不同的是PAT的地址池中只有一個IP地址,且命令ip nat inside source末尾包含關鍵字overload

驗證NAT配置

R1#show ip nat statistics      #查看nat狀態
R1#show ip nat translations     #查看nat地址轉換
R1#debug ip nat

NAT實驗

在下圖中,配置的IP地址如圖所示,且支配指了一臺主機,然而需要在LAN中再添加25臺主機,26臺主機都要連接到互聯網.

screenshot.png

在路由器R1中配置DHCP服務器讓LAN中的主機自動獲取IP地址

ip dhcp pool lan
   network 192.168.76.0 255.255.255.0
   default-router 192.168.76.94 
   domain-name lan

在R1路由器配置ACL

access-list 10 permit 192.168.76.0 0.0.0.255

R1路由器配置NAT

ip nat pool lan 192.0.2.29 192.0.2.29 prefix-length 30ip nat inside source list 10 pool lan overload
interface e0/0
ip nat inside
interface s1/0
ip nat outside

在路由器R1和R2上配置靜態路由

R1#ip route 192.0.2.28 255.255.255.252 192.0.2.30
R2#ip route 192.168.76.0 255.255.255.0 192.0.2.29

測試NAT是否成功

用LAN中的主機ping因特網中的192.0.2.30

在路由器R1上查看NAT映射:


R1# show ip nat translations Pro Inside global      Inside local       Outside local      Outside globalicmp 192.0.2.29:30318  192.168.76.2:30318 192.0.2.30:30318   192.0.2.30:30318icmp 192.0.2.29:29294  192.168.76.1:29294 192.0.2.30:29294   192.0.2.30:29294icmp 192.0.2.29:32366  192.168.76.3:32366 192.0.2.30:32366   192.0.2.30:32366icmp 192.0.2.29:30574  192.168.76.2:30574 192.0.2.30:30574   192.0.2.30:30574icmp 192.0.2.29:29550  192.168.76.1:29550 192.0.2.30:29550   192.0.2.30:29550icmp 192.0.2.29:28526  192.168.76.1:28526 192.0.2.30:28526   192.0.2.30:28526icmp 192.0.2.29:32622  192.168.76.3:32622 192.0.2.30:32622   192.0.2.30:32622icmp 192.0.2.29:31854  192.168.76.3:31854 192.0.2.30:31854   192.0.2.30:31854icmp 192.0.2.29:30830  192.168.76.2:30830 192.0.2.30:30830   192.0.2.30:30830icmp 192.0.2.29:28782  192.168.76.1:28782 192.0.2.30:28782   192.0.2.30:28782icmp 192.0.2.29:32878  192.168.76.3:32878 192.0.2.30:32878   192.0.2.30:32878icmp 192.0.2.29:32110  192.168.76.3:32110 192.0.2.30:32110   192.0.2.30:32110icmp 192.0.2.29:31086  192.168.76.2:31086 192.0.2.30:31086   192.0.2.30:31086icmp 192.0.2.29:30062  192.168.76.2:30062 192.0.2.30:30062   192.0.2.30:30062icmp 192.0.2.29:29038  192.168.76.1:29038 192.0.2.30:29038   192.0.2.30:29038

可以看到NAT配置成功,也可以用wireshark捕獲數據包查看

wireshark捕獲數據包:

Selection_017.png

可以看到只有192.0.2.29與192.0.2.30的icmp數據包交換而沒有LAN內的主機與192.0.2.30的icmp數據包

轉自黑影博客:CCNA實驗之:網絡地址轉換(NAT)實驗

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章