今天來回顧下之前所學(xué)的知識,將它們串聯(lián)起來進(jìn)行鞏固。一開始了解了IP編址進(jìn)行IP設(shè)置和劃分網(wǎng)段;學(xué)習(xí)了二層以太網(wǎng)交換,了解了二層通信基礎(chǔ);學(xué)習(xí)了路由基礎(chǔ)知識,大致了解到了路由是什么?靜態(tài)路由和動態(tài)路由;然后學(xué)習(xí)了VLAN的知識,進(jìn)行虛擬局域網(wǎng)的劃分和VLAN間通過路由器子接口、物理接口、VLANIF接口進(jìn)行三層通信的知識;簡單了解了二層交換機(jī)中為了冗余和備份交換機(jī)線路的STP生成樹協(xié)議。

現(xiàn)在我們可以做到什么了呢?我們應(yīng)該能夠通過VLAN劃分網(wǎng)段,配置網(wǎng)關(guān)以及通過簡單的靜態(tài)或默認(rèn)路由進(jìn)行網(wǎng)絡(luò)互聯(lián),需要能夠做到配置IP,配置網(wǎng)關(guān),配置靜態(tài)路由。但是在實(shí)際工作中一般是電信光貓--出口三層設(shè)備(路由器/防火墻)--核心網(wǎng)關(guān)--終端接入交換機(jī),但是之前有學(xué)習(xí)過IP編址知道IP地址劃分常用有A、B、C類地址,然后在每一類地址劃分了私有地址,這些地址在公網(wǎng)設(shè)備也就是出口設(shè)備上不會進(jìn)行路由轉(zhuǎn)發(fā),那怎么解決呢,使用NAT(Network Address Translation,網(wǎng)絡(luò)地址轉(zhuǎn)換)來實(shí)現(xiàn)地址轉(zhuǎn)換。
一、NAT概述
由全球IP地址分配機(jī)構(gòu),IANA (Internet Assigned Numbers Authority)管理的IPv4地址,于2011年完全用盡。但是需要連接互聯(lián)網(wǎng)必須要IP地址,但是公網(wǎng)地址已經(jīng)沒有了,因此出現(xiàn)了將私網(wǎng)地址轉(zhuǎn)換成公網(wǎng)地址進(jìn)行網(wǎng)絡(luò)訪問的解決方法。
A、B、C類地址中各預(yù)留了一些地址專門作為私有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

簡單講就是一個企業(yè)出口申請從運(yùn)營商申請一個IP地址部署在出口三層網(wǎng)絡(luò)設(shè)備上,內(nèi)部使用私網(wǎng)地址網(wǎng)段,進(jìn)行網(wǎng)絡(luò)訪問時會將內(nèi)網(wǎng)訪問的數(shù)據(jù)包IP地址轉(zhuǎn)換成那個唯一的IP地址。
二、NAT技術(shù)原理
NAT:對IP數(shù)據(jù)報文中的IP地址進(jìn)行轉(zhuǎn)換,是一種在現(xiàn)網(wǎng)中被廣泛部署的技術(shù),一般部署在網(wǎng)絡(luò)出口設(shè)備,例如路由器或防火墻上。
NAT的典型應(yīng)用場景:在私有網(wǎng)絡(luò)內(nèi)部(園區(qū)、家庭)使用私有地址,出口設(shè)備部署NAT,對于“從內(nèi)到外”的流量,網(wǎng)絡(luò)設(shè)備通過NAT將數(shù)據(jù)包的源地址進(jìn)行轉(zhuǎn)換(轉(zhuǎn)換成特定的公有地址),而對于“從外到內(nèi)的”流量,則對數(shù)據(jù)包的目的地址進(jìn)行轉(zhuǎn)換。

這里還要簡單了解一下另外一個概念:端口。之前在網(wǎng)絡(luò)參考模型知道網(wǎng)絡(luò)是分層結(jié)構(gòu),網(wǎng)絡(luò)層是IP協(xié)議,傳輸層有TCP和UDP,使用端口進(jìn)行區(qū)分不同的上層數(shù)據(jù)。實(shí)際訪問網(wǎng)絡(luò)也是通過IP+端口+MAC進(jìn)行區(qū)分目的地的。TCP和UDP的端口號范圍都是0-65535,這意味著每個協(xié)議有65536個端口。端口號小于256的定義為常用端口,服務(wù)器一般通過常用端口號識別。大多數(shù)TCP/IP實(shí)現(xiàn)給臨時端口號分配1024~5000之間的端口號,大于5000的端口是給其他服務(wù)預(yù)留的。常見的端口有FTP的21號端口,HTTP服務(wù)的80端口,SMTP的25端口和HTTPS的443端口。
NAT作用:
1、把內(nèi)網(wǎng)私網(wǎng)IP轉(zhuǎn)換為公網(wǎng)IP
2、隱藏內(nèi)網(wǎng)、起到包含內(nèi)網(wǎng)作用
3、適當(dāng)緩解IPV4地址枯竭
4、解決公網(wǎng)設(shè)備回包路由問題
三、NAT分類
隨著網(wǎng)絡(luò)需要的不同可以有不同的實(shí)現(xiàn)方式。
3.1 靜態(tài)NAT
每個私有地址都有一個與之對應(yīng)固定的公有地址,私有地址和公有地址之間的關(guān)系是一對一映射。支持雙向互訪:私有地址訪問Internet經(jīng)過出口設(shè)備NAT轉(zhuǎn)換時,會被轉(zhuǎn)換成對應(yīng)的公有地址。同時,外部網(wǎng)絡(luò)訪問內(nèi)部網(wǎng)絡(luò)時,其報文中攜帶的公有地址(目的地址)也會被NAT設(shè)備轉(zhuǎn)換成對應(yīng)的私有地址。


適用于有多個公網(wǎng)地址,內(nèi)網(wǎng)主機(jī)較少,能夠?qū)崿F(xiàn)一對一轉(zhuǎn)換的情形。
配置示例:
# 1、接口視圖下配置靜態(tài)NAT
[Huawei-GigabitEthernet0/0/0] nat static global { global-address} inside {host-address }
# 2、也可以在系統(tǒng)視圖下配置靜態(tài)NAT
[Huawei] nat static global { global-address} inside {host-address }
# 還要在接口開啟
[Huawei-GigabitEthernet0/0/0] nat static enable
3.2 動態(tài)NAT
動態(tài)NAT:靜態(tài)NAT嚴(yán)格地一對一進(jìn)行地址映射,這就導(dǎo)致即便內(nèi)網(wǎng)主機(jī)長時間離線或者不發(fā)送數(shù)據(jù)時,與之對應(yīng)的公有地址也處于使用狀態(tài)。為了避免地址浪費(fèi),動態(tài)NAT提出了地址池的概念:所有可用的公有地址組成地址池。
當(dāng)內(nèi)部主機(jī)訪問外部網(wǎng)絡(luò)時臨時分配一個地址池中未使用的地址,并將該地址標(biāo)記為“In Use”。當(dāng)該主機(jī)不再訪問外部網(wǎng)絡(luò)時回收分配的地址,重新標(biāo)記為“Not Use”。


配置示例:
# 創(chuàng)建地址池,配置公有地址范圍,其中g(shù)roup-index為地址池編號,start-address、end-address分別為地址池起始地址、結(jié)束地址
[Huawei] nat address-group group-index start-address end-address
# 創(chuàng)建ACL,只有匹配上ACL才進(jìn)行NAT轉(zhuǎn)換
[Huawei] acl number
[Huawei-acl-basic-number ] rule permit source source-address source-wildcard
# 接口視圖下配置帶地址池的NAT Outbound,no-pat參數(shù)指定不進(jìn)行端口轉(zhuǎn)換
[Huawei-GigabitEthernet0/0/0] nat outbound acl-number address-group group-index [ no-pat ]
# 查看轉(zhuǎn)換信息
dis nat session all
ACL下次進(jìn)行學(xué)習(xí),大概意思就是只有指定主機(jī)才會進(jìn)行轉(zhuǎn)換。
動態(tài)NAT就是將多個可用的公網(wǎng)地址設(shè)置成一個地址池,內(nèi)網(wǎng)主機(jī)需要訪問外網(wǎng)時,選擇一個閑置狀態(tài)的IP地址并生成NAT表項,當(dāng)?shù)刂凡皇褂脮r再釋放。
動態(tài)NAT還是基于地址一對一進(jìn)行轉(zhuǎn)發(fā),要等待連接釋放才能進(jìn)行下一個地址轉(zhuǎn)發(fā),效率較低,比如內(nèi)網(wǎng)主機(jī)100個,公網(wǎng)IP4個,那就效率很低了,雖然實(shí)際轉(zhuǎn)發(fā)速度很快。
3.3 NAPT
動態(tài)NAT選擇地址池中的地址進(jìn)行地址轉(zhuǎn)換時不會轉(zhuǎn)換端口號,即No-PAT(No-Port Address Translation,非端口地址轉(zhuǎn)換),公有地址與私有地址還是1:1的映射關(guān)系,無法提高公有地址利用率。
NAPT(Network Address and Port Translation,網(wǎng)絡(luò)地址端口轉(zhuǎn)換):從地址池中選擇地址進(jìn)行地址轉(zhuǎn)換時不僅轉(zhuǎn)換IP地址,同時也會對端口號進(jìn)行轉(zhuǎn)換,從而實(shí)現(xiàn)公有地址與私有地址的1:n映射,可以有效提高公有地址利用率。
實(shí)際網(wǎng)絡(luò)訪問只需要一個端口或者幾個端口即可進(jìn)行網(wǎng)絡(luò)訪問,因此只需要進(jìn)行端口的轉(zhuǎn)換即可,一個TCP和UDP端口范圍為0-65535,進(jìn)行端口的轉(zhuǎn)發(fā)可以實(shí)現(xiàn)效率的提升。



配置示例:
# 在動態(tài)NAT的配置上不添加--no-pat即可
[R1-GigabitEthernet0/0/1]nat outbound 2000 address-group 1
簡單以訪問百度網(wǎng)頁為例講一下端口通信:
-
主機(jī)從1024-65535之間范圍起一個端口,如55508 -
目的地為百度www.baidu.com,目的端口http:80,https:443 -
出口地址:111.21.8.5,192.168.1.1:55508-->111.21.8.5:62105 --> www.baidu.com:443 -
出口設(shè)備記錄轉(zhuǎn)換表項,百度返回數(shù)據(jù)進(jìn)行對應(yīng)的轉(zhuǎn)換
3.4 Easy IP
Easy IP:實(shí)現(xiàn)原理和NAPT相同,同時轉(zhuǎn)換IP地址、傳輸層端口,區(qū)別在于Easy IP沒有地址池的概念,使用接口地址作為NAT轉(zhuǎn)換的公有地址。
Easy IP適用于不具備固定公網(wǎng)IP地址的場景:如通過DHCP、PPPoE撥號獲取地址的私有網(wǎng)絡(luò)出口,可以直接使用獲取到的動態(tài)地址進(jìn)行轉(zhuǎn)換。
這個實(shí)際才是工作中常見方式,通過電信的光貓自動獲取到一個地址,進(jìn)行源IP和源端口的轉(zhuǎn)換,沒有自己的公網(wǎng)地址。

配置示例:
# 示例,將當(dāng)前接口地址作為公網(wǎng)地址進(jìn)行源ip和端口的映射
[R1-GigabitEthernet0/0/1]nat outbound 2000
3.5 NAT Server
上面的動態(tài)地址轉(zhuǎn)換與端口轉(zhuǎn)換是自動轉(zhuǎn)換端口,不能指定端口的對應(yīng)關(guān)系,這時候如果內(nèi)網(wǎng)有服務(wù)器需要發(fā)布到公網(wǎng)對外就需要使用NAT Server。
NAT Server:指定[公有地址:端口]與[私有地址:端口]的一對一映射關(guān)系,將內(nèi)網(wǎng)服務(wù)器映射到公網(wǎng),當(dāng)私有網(wǎng)絡(luò)中的服務(wù)器需要對公網(wǎng)提供服務(wù)時使用。
外網(wǎng)主機(jī)主動訪問[公有地址:端口]實(shí)現(xiàn)對內(nèi)網(wǎng)服務(wù)器的訪問。


簡單來說就是指定內(nèi)網(wǎng)服務(wù)器地址和端口映射到公網(wǎng)地址的指定端口,供外部訪問公網(wǎng)地址對應(yīng)端口實(shí)現(xiàn)服務(wù)發(fā)布。
配置示例:
# 進(jìn)入對應(yīng)接口
[R1]interface GigabitEthernet0/0/1
# 配置地址
[R1-GigabitEthernet0/0/1]ip address 122.1.2.1 24
# 指定映射TCP/UDP協(xié)議,指定內(nèi)網(wǎng)地址和公網(wǎng)地址和端口
[R1-GigabitEthernet0/0/1]nat server protocol tcp global 202.10.10.1 80 inside 192.168.1.1 8080
一般適用于有固定公網(wǎng)地址,用于對外發(fā)布服務(wù)提供公網(wǎng)訪問,一個公網(wǎng)地址可以映射多個端口。
四、典型網(wǎng)絡(luò)配置實(shí)驗
拓?fù)鋱D如下:
配置示例:
核心交換機(jī)
# 核心交換機(jī)配置VLAN與網(wǎng)關(guān)地址,下聯(lián)交換機(jī)配置trunk,上聯(lián)路由器配置ACCESS VLAN 30
interface Vlanif10
ip address 192.168.10.254 255.255.255.0
#
interface Vlanif20
ip address 192.168.20.254 255.255.255.0
#
interface Vlanif30
ip address 10.0.0.2 255.255.255.252
#
interface MEth0/0/1
#
interface GigabitEthernet0/0/1
port link-type access
port default vlan 30
#
interface GigabitEthernet0/0/2
port link-type trunk
port trunk allow-pass vlan 10 20
#
interface GigabitEthernet0/0/3
port link-type trunk
port trunk allow-pass vlan 10 20
# 配置默認(rèn)路由指向路由器
ip route-static 0.0.0.0 0.0.0.0 10.0.0.1
出口路由器:
# 配置接口地址和NAT
interface GigabitEthernet0/0/0
ip address 122.12.1.1 255.255.255.252
nat outbound 2000
#
interface GigabitEthernet0/0/1
ip address 10.0.0.1 255.255.255.252
# 配置路由,向外的默認(rèn)路由和會內(nèi)網(wǎng)的靜態(tài)路由
ip route-static 0.0.0.0 0.0.0.0 122.12.1.2
ip route-static 192.168.10.0 255.255.255.0 10.0.0.2
ip route-static 192.168.20.0 255.255.255.0 10.0.0.2
# ACL
acl number 2000
rule 5 permit
Internet:
# 中間路由器不需要額外配置
interface GigabitEthernet0/0/0
ip address 122.12.1.2 255.255.255.252
#
interface GigabitEthernet0/0/1
ip address 23.12.1.2 255.255.255.252
百度:
# 配置地址和默認(rèn)路由
interface GigabitEthernet0/0/1
ip address 23.12.1.1 255.255.255.252
#
ip route-static 0.0.0.0 0.0.0.0 23.12.1.2
總結(jié):實(shí)際情況下一個企業(yè)只有一個或者幾個公網(wǎng)地址,為了內(nèi)網(wǎng)主機(jī)的私網(wǎng)地址能夠訪問互聯(lián)網(wǎng)需要在出口設(shè)備進(jìn)行NAT地址轉(zhuǎn)換,實(shí)際情況中采用NAPT和Easy IP進(jìn)行地址和端口同時轉(zhuǎn)換,然后如果有內(nèi)部服務(wù)器需要對外提供訪問可以通過NAT Server進(jìn)行端口一對一映射。文章來源:http://www.zghlxwxcb.cn/news/detail-798323.html
本文由 mdnice 多平臺發(fā)布文章來源地址http://www.zghlxwxcb.cn/news/detail-798323.html
到了這里,關(guān)于計算機(jī)網(wǎng)絡(luò)-NAT網(wǎng)絡(luò)地址轉(zhuǎn)換的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!