李雨江
摘要:為使學(xué)生更好地掌握地址轉(zhuǎn)換技術(shù),闡述了該技術(shù)的原理和分類,利用Packet Tracer仿真軟件設(shè)計(jì)、實(shí)現(xiàn)和驗(yàn)證了基于網(wǎng)絡(luò)地址端口轉(zhuǎn)換的實(shí)驗(yàn)方案。實(shí)踐證明,引入Packet Tracer 的教學(xué)方式能促進(jìn)學(xué)生對(duì)地址轉(zhuǎn)換技術(shù)原理的理解和掌握,有助于培養(yǎng)學(xué)生的動(dòng)手能力,增強(qiáng)了課程的教學(xué)效果。
關(guān)鍵詞:地址轉(zhuǎn)換技術(shù);Packet Tracer;網(wǎng)絡(luò)地址端口轉(zhuǎn)換;仿真;教學(xué)
中圖分類號(hào):TP393 ? ? ? ? 文獻(xiàn)標(biāo)識(shí)碼:A
文章編號(hào):1009-3044(2020)28-0222-03
Abstract:In order to enable students to better master the address conversion technology, this paper describes the principle and classification of the technology, designs,realizes and verifies the experimental scheme based on NAPT by Packet Tracer. It has been proved that the introduction of Packet Tracer in teaching can promote students to understand and master the principle of NAT, which helps to cultivate students' practical ability and enhance the teaching effect of the course.
Key words: NAT; Packet Tracer; NAPT; Simulation; Teaching
計(jì)算機(jī)網(wǎng)絡(luò)課程是信息技術(shù)專業(yè)的必修課程,是理論與實(shí)踐并重的課程[1-4]。實(shí)驗(yàn)教學(xué)在整個(gè)教學(xué)過(guò)程中發(fā)揮著不可替代的作用。在現(xiàn)實(shí)情況中,由于經(jīng)費(fèi)、場(chǎng)地、設(shè)備等因素的限制,很難直接開展真實(shí)的網(wǎng)絡(luò)實(shí)驗(yàn)教學(xué),直接影響著計(jì)算機(jī)網(wǎng)絡(luò)課程的教學(xué)效果[4-7]。
Packet Tracer是Cisco公司針對(duì)CCNA認(rèn)證開發(fā)的一款網(wǎng)絡(luò)模擬平臺(tái),利用該平臺(tái)可以進(jìn)行網(wǎng)絡(luò)和通信仿真實(shí)驗(yàn)。目前該平臺(tái)已經(jīng)廣泛應(yīng)用在計(jì)算機(jī)網(wǎng)絡(luò)課程的實(shí)驗(yàn)教學(xué)中,取得了良好的教學(xué)效果[8-14]。本文基于Packet Tracer 7.2.2版本,設(shè)計(jì)并實(shí)現(xiàn)了NAT仿真實(shí)驗(yàn),旨在加深學(xué)生對(duì)NAT原理的理解和掌握,培養(yǎng)學(xué)生的實(shí)踐動(dòng)手能力。
1 NAT地址轉(zhuǎn)換技術(shù)
1.1 原理
NAT是一種將內(nèi)部網(wǎng)絡(luò)的私有IP地址轉(zhuǎn)換為全球唯一的公網(wǎng)IP地址的技術(shù)。路由器、防火墻、核心三層交換機(jī)、各種軟件代理服務(wù)器等都是具有NAT功能的設(shè)備,但大多數(shù)企業(yè)都選用路由器作為首選的NAT設(shè)備[15]。
NAT技術(shù)將整個(gè)網(wǎng)絡(luò)分成內(nèi)部網(wǎng)絡(luò)和外部網(wǎng)絡(luò),網(wǎng)絡(luò)地址相應(yīng)地分為內(nèi)部地址和外部地址兩大部分,內(nèi)部地址又分為內(nèi)部私有地址、內(nèi)部公網(wǎng)地址,外部地址也分為外部私有地址、外部公網(wǎng)地址[15]。內(nèi)部私有地址是內(nèi)網(wǎng)設(shè)備所使用的IP地址,通常為私有地址,如192.168.0.0/16、10.0.0.0/8;內(nèi)部公網(wǎng)地址是由網(wǎng)絡(luò)信息中心或服務(wù)商提供的可在Internet上傳輸?shù)暮戏üW(wǎng)IP地址,即內(nèi)部私有地址進(jìn)行地址轉(zhuǎn)換后的公網(wǎng)地址;外部私有地址是外部網(wǎng)絡(luò)的設(shè)備在其局域網(wǎng)內(nèi)所具有的內(nèi)部地址,不一定是合法的IP地址;外部公網(wǎng)地址是外部網(wǎng)絡(luò)設(shè)備的內(nèi)部地址所對(duì)應(yīng)的公網(wǎng)地址,是合法的IP地址。
Internet上轉(zhuǎn)發(fā)的數(shù)據(jù)包在通過(guò)NAT設(shè)備時(shí),將根據(jù)該設(shè)備所記錄的NAT地址轉(zhuǎn)換表進(jìn)行相應(yīng)的地址轉(zhuǎn)換,具體實(shí)現(xiàn)過(guò)程如圖1所示。
在圖1中,內(nèi)網(wǎng)中的主機(jī)PC1具有內(nèi)部私有地址A,當(dāng)PC1要訪問(wèn)Internet上的主機(jī)PC2時(shí),NAT設(shè)備根據(jù)NAT 地址轉(zhuǎn)換表,將源地址由PC1的地址A轉(zhuǎn)換為可在Internet使用的公網(wǎng)地址C,當(dāng)PC2向PC1發(fā)送數(shù)據(jù)包時(shí)時(shí),NAT設(shè)備也根據(jù)NAT地址轉(zhuǎn)換表,將目的地址C轉(zhuǎn)換為PC1的內(nèi)部私有地址A。
借助NAT技術(shù),內(nèi)部網(wǎng)絡(luò)不用改變其私有IP地址就能訪問(wèn)互聯(lián)網(wǎng),節(jié)省了寶貴的公網(wǎng)地址空間,且隱藏了內(nèi)部網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu),有助于增強(qiáng)網(wǎng)絡(luò)的安全性。
1.2分類
NAT主要分為靜態(tài)NAT、動(dòng)態(tài)地址池NAT和網(wǎng)絡(luò)地址端口轉(zhuǎn)換NAPT三種。
靜態(tài)NAT是最簡(jiǎn)單和最容易實(shí)現(xiàn)的一種技術(shù),常用于內(nèi)網(wǎng)服務(wù)器的安全配置中,它將內(nèi)部網(wǎng)絡(luò)中的私有IP地址一對(duì)一地、固定不變地轉(zhuǎn)換為公有IP地址。這種方式要求機(jī)構(gòu)能申請(qǐng)到足夠多的公有IP地址。當(dāng)機(jī)構(gòu)申請(qǐng)到的公有IP地址有限,而內(nèi)網(wǎng)主機(jī)的數(shù)量多于已經(jīng)申請(qǐng)到的公有IP地址的數(shù)量,且這些內(nèi)網(wǎng)主機(jī)都有與外網(wǎng)通信的需求時(shí),可以考慮動(dòng)態(tài)地址池NAT和網(wǎng)絡(luò)地址端口轉(zhuǎn)換NAPT。
動(dòng)態(tài)地址池NAT將申請(qǐng)到的多個(gè)公有IP地址,使用動(dòng)態(tài)分配的方法映射到內(nèi)網(wǎng)所有的私有地址上。在這種情況下,所有被授權(quán)訪問(wèn)Internet的內(nèi)網(wǎng)私有IP地址可以隨機(jī)轉(zhuǎn)換為任何指定的公有IP地址。在撥號(hào)網(wǎng)絡(luò)接入中,對(duì)于頻繁變換的遠(yuǎn)程連接,電信接入端一般會(huì)采用動(dòng)態(tài)地址池NAT配置[16]。
網(wǎng)絡(luò)地址端口轉(zhuǎn)換NAPT將內(nèi)網(wǎng)中若干主機(jī)的私有IP地址,連接映射到一個(gè)公有IP地址的不同端口上,當(dāng)內(nèi)網(wǎng)中的多臺(tái)主機(jī)同時(shí)使用該公有IP地址時(shí),由不同的端口號(hào)區(qū)分不同的主機(jī)。這種技術(shù)在小型辦公網(wǎng)內(nèi)非常實(shí)用,對(duì)于從ISP處只能申請(qǐng)到有限的一個(gè)公有IP地址的小型辦公網(wǎng)來(lái)說(shuō),該技術(shù)能使內(nèi)網(wǎng)中的多臺(tái)主機(jī)通過(guò)多個(gè)私有IP地址共享一個(gè)公有IP地址訪問(wèn)Internet,從而節(jié)省了網(wǎng)絡(luò)建設(shè)和接入費(fèi)用[16]。下面以NAPT為例,闡述基于Packet Tracer的實(shí)驗(yàn)方案的設(shè)計(jì)和實(shí)現(xiàn)。
2實(shí)驗(yàn)方案設(shè)計(jì)
2.1 實(shí)驗(yàn)?zāi)康?/p>
通過(guò)該實(shí)驗(yàn),要求學(xué)生掌握NAPT的原理和配置,熟悉源地址轉(zhuǎn)換和目的地址轉(zhuǎn)換的過(guò)程,熟悉該技術(shù)實(shí)施的應(yīng)用環(huán)境。
2.2 實(shí)驗(yàn)內(nèi)容
由于條件限制,某小型局域網(wǎng)內(nèi)部的四臺(tái)主機(jī)需要共用一個(gè)公有的IP地址訪問(wèn)外網(wǎng)的web服務(wù)器,具體的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)、IP地址配置情況分別如圖2、表1所示。
3 實(shí)驗(yàn)方案實(shí)現(xiàn)
3.1 終端設(shè)備配置
PC0、PC1、Laptop0、Laptop1和Web的IP地址配置都采取圖形化界面的方式配置,即在“Desktop”菜單下的“IP Configuration”中直接輸入相關(guān)信息,如圖3所示為PC0的IP地址配置情況。
3.2 路由器配置
InsideRouter的具體配置命令如下:
//依次進(jìn)入特權(quán)模式、配置模式
Router>enable
Router#configure terminal
//將路由器名字改為InsideRouter
Router(config)#hostname InsideRouter
//配置接口FastEthernet0/0的IP地址
InsideRouter(config)#interface FastEthernet0/0
InsideRouter(config-if)#ip address 192.168.1.1 255.255.255.0
InsideRouter(config-if)#no shutdown
InsideRouter(config-if)#exit
//配置接口Serial0/3/0的IP地址
InsideRouter(config)#interface Serial0/3/0
InsideRouter(config-if)#ip address 220.1.1.1 255.255.255.0
InsideRouter(config-if)#no shutdown
InsideRouter(config-if)#exit
//定義fastEthernet 0/0連接內(nèi)部網(wǎng)絡(luò)
InsideRouter(config)#interface fastEthernet 0/0
InsideRouter(config-if)#ip nat inside
InsideRouter(config-if)#exit
//定義serial 0/3/0連接外部網(wǎng)絡(luò)
InsideRouter(config)#interface serial 0/3/0
InsideRouter(config-if)#ip nat outside
InsideRouter(config-if)#exit
//定義訪問(wèn)控制列表
InsideRouter(config)#access-list 10 perimit 192.168.1.0 0.0.0.255
//定義地址池
InsideRouter(config)#ip nat pool toWeb 220.1.1.1 220.1.1.1 netmask 255.255.255.0
//指定轉(zhuǎn)換
InsideRouter(config)#ip nat inside source list 10 pool toWeb overload
//配置默認(rèn)路由
InsideRouter(config)#ip route 0.0.0.0 0.0.0.0 220.1.1.2
OutsideRouter的具體配置命令如下:
//依次進(jìn)入特權(quán)模式、配置模式
Router>enable
Router#configure terminal
//將路由器名字改為OutsideRouter
Router(config)#hostname OutsideRouter
//設(shè)置時(shí)鐘頻率
OutsideRouter(config)#interface Serial0/3/0
OutsideRouter(config-if)#clock rate 64000
OutsideRouter(config-if)#exit
//配置接口FastEthernet0/0的IP地址
OutsideRouter(config)#interface
OutsideRouter(config-if)#ip address 220.2.2.1 255.255.255.0
OutsideRouter(config-if)#no shutdown
OutsideRouter(config-if)#exit
//配置接口Serial0/3/0的IP地址
OutsideRouter(config)#interface Serial0/3/0
OutsideRouter(config-if)#ip address 220.1.1.2 255.255.255.0
OutsideRouter(config-if)#no shutdown