劉 金 生
(河北師范大學 數學與信息科學學院,河北 石家莊 050024)
NAT工作原理分析及其實驗設計與仿真
劉 金 生
(河北師范大學 數學與信息科學學院,河北 石家莊 050024)
針對計算機網絡理論和實訓教學中存在的問題,利用Cisco PacketTracer 仿真軟件搭建虛擬網絡實驗平臺,完成靜態(tài)NAT和NAPT網絡實驗.通過模擬局域網內部主機和外網主機之間數據報文的轉發(fā)過程,分析各層協議數據單元格式,以加深學生對NAT工作原理的理解,提高課程的教學質量.
PacketTracer;靜態(tài)NAT;NAPT;私有地址;全局地址
計算機網絡是計算機科學與技術專業(yè)和物聯網專業(yè)學生的一門必修課.此課程培養(yǎng)目標不僅要求學生具有扎實的計算機網絡理論知識,而且還要具有很強的動手實踐能力.在計算機網絡理論知識講授的過程中,由于課程知識點多、理論性強,學生學習起來常常感到抽象枯燥,對課程知識難以理解.隨著高校的擴招,許多高校的網絡設備已經不能滿足眾多學生動手實踐的需求,很多網絡實驗無法進行.筆者在計算機網絡課程的教學過程中,利用Cisco PacketTracer仿真軟件輔助理論教學,搭建虛擬網絡實驗平臺,設計完成了各種網絡實驗.本文以NAT[1](Network Address Translation)實驗為案例,講解NAT的工作原理,通過PacketTracer仿真軟件設計完成靜態(tài)NAT和NAPT(Network Address Port Translation)實驗.
NAT的中文意思是“網絡地址轉換”, 顧名思義就是局域網內部主機和互聯網上主機通訊時,把內部主機使用的私有地址映射成合法IP地址的技術.NAT的工作過程就是局域網內部主機之間使用私有地址(不需要申請IP地址)通訊,而當內部主機要與外部網絡主機進行通訊時,本地NAT路由器從內部接口接收IP數據報,將報文首部中的私有地址替換成全局地址(需要向NIC或ISP申請IP地址),然后通過外部接口路由轉發(fā)出去.反之,本地NAT路由器從外部接口接收來自外網的IP數據報,通過網絡地址轉換,將報文首部中的全局地址替換成分配給內部主機使用的私有地址,然后通過內部接口轉發(fā)到內部主機.
2.1 實驗任務
在本地局域網路由器上配置靜態(tài)NAT和NAPT,并在內部接口和外部接口啟用NAT.內網主機之間使用私有地址彼此通訊.內網所有主機可以共享一個合法的IP地址與Internet上的主機通訊,外網主機可以訪問本地局域網的WWW服務器.
2.2 實驗的網絡拓撲結構圖
根據實驗要求,打開Cisco PacketTracer應用程序,在網絡設備庫中選擇2臺Cisco 2811 路由器、2臺Cisco Catalyst 2960 交換機、4臺PC機和1臺服務器添加到邏輯工作區(qū).點擊路由器圖標打開,關閉電源,從模塊列表中選擇“WIC-1T”模塊添加到空的擴展槽內,打開電源,重啟路由器,為路由器添加一個Serial0/3/0接口.路由器與交換機、交換機與主機都選擇使用直通雙絞線相連.兩臺路由器選擇Serial DCE電纜相連,其中DCE一端要提供時鐘速率.設計好的網絡拓撲結構[2-8]如圖1所示.
圖1 網絡拓撲結構圖
2.3 網絡地址規(guī)劃
本地局域網使用不需要申請的私有地址塊192.168.1.0/24,遠程網絡使用全局地址塊200.100.10.0/24,兩臺路由器之間的共享網段使用全局地址塊201.101.10.0/30,分配給本地局域網WWW Server的全局地址為201.101.10.5.
Router0的內部接口Fa0/0:IP地址192.168.1.1,子網掩碼255.255.255.0;
Router0外部接口ser0/3/0:IP地址201.101.10.1,子網掩碼255.255.255.252.
Router1的內部接口Fa0/0:IP地址200.100.10.1,子網掩碼255.255.255.0;
Router1外部接口ser0/3/0:IP地址201.101.10.2,子網掩碼255.255.255.252.
主機地址配置清單見表1.
表1 主機地址配置清單
2.4 路由器的配置
(1) 在本地路由器Router0上配置靜態(tài)NAT和NAPT,添加訪問外網的默認路由
步驟如下:
Router>enable
Router#configure terminal
Router(config)#interface fa0/0 //配置內網接口fa0/0
Router(config-if)#ip address 192.168.1.1 255.255.255.0
Router(config-if)#no shutdown
Router(config-if)#exit
Router(config)#interface ser0/3/0 //配置外網接口ser0/3/0
Router(config-if)#clock rate 64000
Router(config-if)#ip address 201.101.10.1 255.255.255.252
Router(config-if)#no shutdown
Router(config-if)#exit
Router(config)#ip route 0.0.0.0 0.0.0.0 201.101.10.2//配置訪問外網的默認路由
Router(config)#ip nat inside source static 192.168.1.2 201.101.10.5 //為WWW服務器配置靜態(tài)NAT
Router(config)#access-list 10 permit 192.168.1.0 0.0.0.255 //定義訪問控制列表
Router(config)#ip nat inside source list 10 interface ser0/3/0 overload //為內網主機配置NAPT
Router(config)#interface fa0/0
Router(config-if)#ip nat inside //啟用NAT
Router(config-if)#exit
Router(config)#interface ser0/3/0
Router(config-if)#ip nat outside //啟用NAT
(2) 在遠端路由器Router1上配置接口地址,添加訪問WWW Server的靜態(tài)路由
步驟如下:
Router>enable
Router#configure terminal
Router(config)#interface fa0/0//配置內網接口fa0/0
Router(config-if)#ip address 200.100.10.1 255.255.255.0
Router(config-if)#no shutdown
Router(config-if)#exit
Router(config)#interface ser0/3/0 //配置外網接口ser0/3/0
Router(config-if)#ip address 201.101.10.2 255.255.255.252
Router(config-if)#no shutdown
Router(config-if)#exit
Router(config)#ip route 201.101.10.4 255.255.255.252 201.101.10.1 //配置到內網服務器的靜態(tài)路由
3.1 結果驗證
(1)在主機PC0上,進入命令行,訪問外網主機PC3
在命令提示符下輸入PC>ping 200.100.10.2,發(fā)送4個請求包,收到4個應答包,丟包0個,表明本地局域網主機PC0可以跟外網主機PC3通訊.
(2)在外網主機PC3上,訪問本地局域網的WWW Server
點擊PC3圖標,選擇“browse”打開瀏覽器,在地址欄輸入“http://200.100.10.5”,能夠打開主頁,表明外網主機可以訪問內網WWW Server.
3.2 結果分析
Cisco PacketTracer 仿真軟件提供兩種模式:實時模式和模擬模式.在實時模式下,可以對網絡設備進行配置.在模擬模式下,可以模擬兩臺主機間的通訊過程,分析各層協議數據單元的格式.本文分析模擬模式下內部主機PC0和外網主機PC3的通訊過程.
點擊“simulation”進入模擬模式,點擊“Edit Filter”進行協議選擇,這里只勾選HTTP,ICMP,TCP和 ARP.添加一個復雜協議數據單元(源地址192.168.1.3,目的地址200.100.10.2),點擊“Auto Capture”開始模擬PC0和PC3之間報文的傳輸過程.點擊“Event List”打開事件列表,對協議數據單元進行分析.Router0從內部接口接收報文,把IP數據報首部中的私有地址192.168.1.3替換成分配給Serial0/3/0的合法IP地址201.101.10.1,然后轉發(fā)給Router1,如圖2所示;Router0從外部接口接收報文,把IP數據報中的目的地址201.101.10.1轉換成PC0的私有地址192.168.1.3,通過內部接口Fa0/0發(fā)給PC0,如圖3所示.
圖2 私有地址替換成全局地址示意
圖3 全局地址替換成私有地址示意
使用Cisco PacketTracer仿真軟件搭建虛擬網絡實驗平臺模擬在真實網絡設備上配置NAT的過程,不僅可以讓學生掌握靜態(tài)NAT和NAPT的配置方法,而且可以把抽象枯燥的NAT工作原理,以一種直觀、生動、形象的方式展現在學生面前,讓學生一目了然.
[1] 謝希仁.計算機網絡[M].北京:電子工業(yè)出版社,2013:179-181.
[2] 付承彪,田安紅.兩種動態(tài)路由協議分析及其實驗設計與仿真[J].實驗技術與管理,2016,33(7):140-144.
[3] 高靜,聶利穎,郭峰.擴展IP訪問列表的訪問控制在模擬器Cisco PacketTracer中的仿真設計與實現[J].智能計算機與應用,2016,6(2):82-83,86.
[4] 譚毓銀,王平.PacketTracer軟件在計算機網絡實驗教學中的應用[J].軟件導刊,2015,14(4):169-170.
[5] 高永兵,趙宇紅,趙艷峰.基于PacketTracer的計算機網絡實踐教改方案[J].計算機教育,2015(23):92-94.
[6] 張奎.基于PacketTracer構建三層結構的園區(qū)網[J].喀什師范學院學報,2015,36(6):38-41.
[7] 羅芳瓊.PacketTracer在計算機網絡基礎課程中的應用研究[J].柳州師專學報,2014,29(1):131-133.
[8] 容振邦.基于PacketTracer的計算機網絡原理課程案例教學[J].計算機教育,2011(3):67-70.
責任編輯:金 欣
The working principles of the NAT and its experimental designing and simulation
LIU Jin-sheng
(School of Mathematics and Information, Hebei Normal University, Shijiazhuang, Hebei 050024, China)
In view of the problems existing in the computer network theory and teaching practice, the researcher builds the virtual network experiment platform and completes the static NAT and NAPT network experiment by Cisco PacketTracer simulation software. The simulation data packet forwarding between LAN internal and LAN external hosts enables students to understand the working principle of the NAT.
PacketTracer; static NAT; NAPT; private address; global address
2017-02-24
2015年度河北師范大學教學改革研究項目(2015XJJG022)
劉金生(1973-),男,河北唐山人,河北師范大學副教授,碩士,研究方向:計算機網絡安全、網絡體系結構.
1009-4873(2017)02-0061-04
G642;TP393.04
A