01-NAT配置
本章節下載: 01-NAT配置 (1.49 MB)
2.10.2 開啟對TCP SYN和SYN ACK報文中時間戳的刪除功能
2.10.3 配置全局NAT策略中NAT類型的SNAT+DNAT規則的源IP地址轉換和目的IP轉換先於安全策略匹配,以便與老版本兼容
2.12.4 開啟NO-PAT方式下NAT地址組中地址成員使用率的日誌信息功能
2.12.6 配置NAT地址組不可用IP地址排除率的告警閾值
2.12.7 配置NO-PAT模式NAT地址資源使用率的告警閾值
2.14.1 內網用戶通過NAT地址訪問外網配置舉例(靜態地址轉換)
2.14.2 內網用戶通過NAT地址訪問外網配置舉例(地址不重疊)
2.14.4 外網用戶通過域名訪問內網服務器配置舉例(地址不重疊)
3.17.4 開啟NO-PAT方式下NAT地址組中地址成員使用率的日誌信息功能
3.17.6 配置NAT地址組不可用IP地址排除率的告警閾值
3.17.7 配置NO-PAT模式NAT地址資源使用率的告警閾值
3.18.2 開啟對TCP SYN和SYN ACK報文中時間戳的刪除功能
3.20.1 內網用戶通過NAT地址訪問外網配置舉例(靜態地址轉換)
3.20.2 內網用戶通過NAT地址訪問外網配置舉例(地址不重疊)
3.20.3 內網用戶通過NAT地址訪問外網配置舉例(地址重疊)
3.20.5 外網用戶通過域名訪問內網服務器配置舉例(地址不重疊)
3.20.6 外網用戶通過域名訪問內網服務器配置舉例(地址重疊)
3.20.15 HA聯動VRRP的主備組網中NAT功能典型配置舉例
3.20.16 HA聯動VRRP的雙主組網中NAT功能典型配置舉例
NAT(Network Address Translation,網絡地址轉換)是將IP數據報文頭中的IP地址轉換為另一個IP地址的過程。在實際應用中,NAT主要應用在連接兩個網絡的邊緣設備上,用於實現允許內部網絡用戶訪問外部公共網絡以及允許外部公共網絡訪問部分內部網絡資源(例如內部服務器)的目的。
全局NAT的優先級高於接口NAT。若同時存在全局NAT策略和接口NAT的配置,當流量與全局NAT策略中任意一條過濾規則匹配,那麼接口NAT中的源地址轉換和目的轉換的配置均不生效。建議不要同時配置接口NAT和全局NAT。
設備上經過NAT轉換的報文不會再進行AFT轉換。
使用NAT功能進行地址轉換時,NAT模塊會發布公網IP地址的主機路由。如果公網IP地址是一段地址範圍,則NAT模塊會對公網IP地址範圍劃分網段,劃分網段時使用的掩碼長度為8、16、24、26、28、30。例如,公網IP地址範圍為122.90.12.128~122.90.12.135,則NAT模塊發布的主機路由的目的地址和掩碼長度為122.90.12.128/30和122.90.12.132/30。
NAT基本概念如下:
· NAT設備:配置了NAT功能的連接內部網絡和外部網絡的邊緣設備。
· NAT接口:NAT設備上應用了NAT相關配置的接口。
· NAT規則:用於進行地址轉換的NAT配置稱為NAT規則。NAT規則的位置決定了匹配的優先級,位置越靠前的NAT規則,其匹配優先級越高。
· NAT地址:用於進行地址轉換的公網IP地址,與外部網絡路由可達,可靜態指定或動態分配。
· NAT表項:NAT設備上用於記錄網絡地址轉換映射關係的表項。關於NAT表項的詳細介紹請參見“1.6 NAT表項”。
· Easy IP功能:NAT轉換時直接使用設備上接口的IP地址作為NAT地址。設備上接口的地址可靜態指定或通過DHCP等協議動態獲取。
· 全局NAT:NAT規則的應用範圍為全局。對於全局NAT,所有經過NAT設備的流量都會進行匹配,並對匹配NAT規則的流量進行地址轉換。
· 接口NAT:NAT規則的應用範圍為接口。對於接口NAT,隻有經過應用NAT規則的接口的流量才會進行匹配,並對匹配NAT規則的流量進行地址轉換。
圖1-1 NAT基本工作過程示意圖
如圖1-1所示,一台NAT設備連接內網和外網,當有報文經過NAT設備時,NAT的基本工作過程如下:
(1) 當內網用戶主機(192.168.1.3)向外網服務器(1.1.1.2)發送的IP報文通過NAT設備時,NAT設備查看報文的IP頭內容,發現該報文是發往外網的,則將其源IP地址字段的內網地址192.168.1.3轉換成一個可路由的外網地址20.1.1.1,並將該報文發送給外網服務器,同時在NAT設備上建立表項記錄這一映射關係。
(2) 外網服務器給內網用戶發送的應答報文到達NAT設備後,NAT設備使用報文信息匹配建立的表項,然後查找匹配到的表項記錄,用內網私有地址192.168.1.3替換初始的目的IP地址20.1.1.1。
上述的NAT過程對終端(如圖中的Host和Server)來說是透明的。對外網服務器而言,它認為內網用戶主機的IP地址就是20.1.1.1,並不知道存在192.168.1.3這個地址。因此,NAT“隱藏”了企業的私有網絡。
在實際應用中,我們可能希望某些內部網絡的主機可以訪問外部網絡,而某些主機不允許訪問;或者希望某些外部網絡的主機可以訪問內部網絡,而某些主機不允許訪問。即NAT設備隻對符合要求的報文進行地址轉換。
NAT設備可以利用ACL(Access Control List,訪問控製列表)來對地址轉換的使用範圍進行控製,通過定義ACL規則,並將其與NAT配置相關聯,實現隻對匹配指定的ACL permit規則的報文才進行地址轉換的目的。而且,NAT僅使用規則中定義的源IP地址、源端口號、目的IP地址、目的端口號、傳輸層協議類型和VPN實例這幾個元素進行報文匹配,忽略其它元素。
靜態地址轉換是指外部網絡和內部網絡之間的地址映射關係由配置確定,該方式適用於內部網絡與外部網絡之間存在固定訪問需求的組網環境。靜態地址轉換支持雙向互訪:內網用戶可以主動訪問外網,外網用戶也可以主動訪問內網。
源IP地址轉換方式是一種動態地址轉換方式,動態地址轉換是指內部網絡和外部網絡之間的地址映射關係在建立連接的時候動態產生。該方式通常適用於內部網絡有大量用戶需要訪問外部網絡的組網環境。
源IP地址轉換包括NO-PAT模式的地址轉換、基於端口的PAT模式的地址轉換和基於端口塊的PAT模式的地址轉換。
NO-PAT(Not Port Address Translation)模式下,一個外網地址同一時間隻能分配給一個內網地址進行地址轉換,不能同時被多個內網地址共用。當使用某外網地址的內網用戶停止訪問外網時,NAT會將其占用的外網地址釋放並分配給其他內網用戶使用。
該模式下,NAT設備隻對報文的IP地址進行NAT轉換,同時會建立一個NO-PAT表項用於記錄IP地址映射關係,並可支持所有IP協議的報文。
PAT(Port Address Translation)模式下,一個NAT地址可以同時分配給多個內網地址共用。該模式下,NAT設備需要對報文的IP地址和傳輸層端口同時進行轉換,且隻支持TCP、UDP和ICMP(Internet Control Message Protocol,互聯網控製消息協議)查詢報文。
圖1-2 PAT基本原理示意圖
如圖1-2所示,三個帶有內網地址的報文到達NAT設備,其中報文1和報文2來自同一個內網地址但有不同的源端口號,報文1和報文3來自不同的內網地址但具有相同的源端口號。通過PAT映射,三個報文的源IP地址都被轉換為同一個外網地址,但每個報文都被賦予了不同的源端口號,因而仍保留了報文之間的區別。當各報文的回應報文到達時,NAT設備仍能夠根據回應報文的目的IP地址和目的端口號來區別該報文應轉發到的內部主機。
采用PAT方式可以更加充分地利用IP地址資源,實現更多內部網絡主機對外部網絡的同時訪問。
目前,PAT支持兩種不同的地址轉換模式:
· Endpoint-Independent Mapping(不關心對端地址和端口轉換模式):隻要是來自相同源地址和源端口號的報文,不論其目的地址是否相同,通過PAT映射後,其源地址和源端口號都被轉換為同一個外部地址和端口號,該映射關係會被記錄下來並生成一個EIM表項;並且NAT設備允許所有外部網絡的主機通過該轉換後的地址和端口來訪問這些內部網絡的主機。這種模式可以很好的支持位於不同NAT網關之後的主機進行互訪。
· Address and Port-Dependent Mapping(關心對端地址和端口轉換模式):對於來自相同源地址和源端口號的報文,相同的源地址和源端口號並不要求被轉換為相同的外部地址和端口號,若其目的地址或目的端口號不同,通過PAT映射後,相同的源地址和源端口號通常會被轉換成不同的外部地址和端口號。與Endpoint-Independent Mapping模式不同的是,NAT設備隻允許這些目的地址對應的外部網絡的主機可以通過該轉換後的地址和端口來訪問這些內部網絡的主機。這種模式安全性好,但由於同一個內網主機地址轉換後的外部地址不唯一,因此不便於位於不同NAT網關之後的主機使用內網主機轉換後的地址進行互訪。
基於端口塊的PAT模式是一種基於端口範圍的PAT動態地址轉換,即一個私網IP地址在一個時間段內獨占一個公網IP地址的某個端口塊。例如:假設私網IP地址10.1.1.1獨占公網IP地址202.1.1.1的一個端口塊10001~10256,則該私網IP向公網發起的所有連接,源IP地址都將被轉換為同一個公網IP地址202.1.1.1,而源端口將被轉換為端口塊10001~10256之內的一個端口。
基於端口塊的PAT模式包括端口塊方式包括靜態映射和動態映射兩種,主要應用在NAT444或DS-Lite網絡中。
· 端口塊靜態映射
端口塊靜態映射是指,NAT網關設備根據配置自動計算私網IP地址到公網IP地址、端口塊的靜態映射關係,並創建靜態端口塊表項。當私網IP地址成員中的某個私網IP地址向公網發起新建連接時,根據私網IP地址匹配靜態端口塊表項,獲取對應的公網IP地址和端口塊,並從端口塊中動態為其分配一個公網端口,對報文進行地址轉換。
配置端口塊靜態映射時,需要創建一個端口塊組,並在端口塊組中配置私網IP地址成員、公網IP地址成員、端口範圍和端口塊大小。假設端口塊組中每個公網IP地址的可用端口塊數為m(即端口範圍除以端口塊大小),則端口塊靜態映射的算法如下:按照從小到大的順序對私網IP地址成員中的所有IP地址進行排列,最小的m個私網IP地址對應最小的公網IP地址及其端口塊,端口塊按照起始端口號從小到大的順序分配;次小的m個私網IP地址對應次小的公網IP地址及其端口塊,端口塊的分配順序相同;依次類推。
· 端口塊動態映射
當內網用戶向公網發起連接時,首先根據動態地址轉換中的ACL規則進行過濾,決定是否需要進行源地址轉換。對於需要進行源地址轉換的連接,當該連接為該用戶的首次連接時,從所匹配的動態地址轉換配置引用的NAT地址組中獲取一個公網IP地址,從該公網IP地址中動態分配一個端口塊,創建動態端口塊表項,然後從端口塊表項中動態分配一個公網端口,進行地址轉換。對該用戶後續連接的轉換,均從生成的動態端口塊表項中分配公網端口。當該用戶的所有連接都斷開時,回收為其分配的端口塊資源,刪除相應的動態端口塊表項。
端口塊動態映射支持增量端口塊分配。當為某私網IP地址分配的端口塊資源耗盡(端口塊中的所有端口都被使用)時,如果該私網IP地址向公網發起新的連接,則無法再從端口塊中獲取端口,無法進行地址轉換。此時,如果預先在相應的NAT地址組中配置了增量端口塊數,則可以為該私網IP地址分配額外的端口塊,進行地址轉換。
在實際應用中,內網中的服務器可能需要對外部網絡提供一些服務,例如給外部網絡提供Web服務,或是FTP服務。這種情況下,通過定義內部服務器對外提供服務使用的外部IP地址+端口與內部服務器在內網使用的地址+端口的映射關係,實現NAT設備允許外網用戶通過指定的NAT地址和端口訪問這些內部服務器。
如圖1-3所示,外部網絡用戶訪問內部網絡服務器的數據報文經過NAT設備時,NAT設備將報文的目的地址與接口上的NAT內部服務器配置進行匹配,並將匹配上的訪問內部服務器的請求報文的目的IP地址和端口號轉換成內部服務器的私有IP地址和端口號。當內部服務器回應該報文時,NAT設備再根據已有的地址映射關係將回應報文的源IP地址和端口號轉換成外網IP地址和端口號。
NAT設備處理一個連接的首報文時便確定了相應的地址轉換關係,並同時創建會話表項,該會話表項中添加了NAT擴展信息(例如接口信息、轉換方式)。會話表項中記錄了首報文的地址轉換信息。這類經過NAT處理的會話表項,也稱為NAT會話表項。
當該連接的後續報文經過NAT設備時,將與NAT會話表項進行匹配,NAT設備從匹配到的會話表項中得到首報文的轉換方式,並根據首報文的轉換方式對後續報文進行處理:
· 後續報文方向與首報文相同時,源和目的的轉換方式與首報文相同。
· 後續報文方向與首報文相反時,轉換方式與首報文相反。即,如果首報文轉換了源地址,則後續報文需要轉換目的地址;如果首報文轉換了目的地址,則後續報文需要轉換源地址。
NAT會話表項的更新和老化由會話管理模塊維護,關於會話管理的相關介紹請參見“安全配置指導”中的“會話管理”。
如果NAT設備上開啟了Endpoint-Independent Mapping模式,則在PAT方式的動態地址轉換過程中,會首先創建一個NAT會話表項,然後創建一個用於記錄地址和端口的轉換關係(內網地址和端口<-->NAT地址和端口)的EIM三元組表項,該表項有以下兩個作用:
· 保證後續來自相同源地址和源端口的新建連接與首次連接使用相同的轉換關係。
· 允許外網主機向NAT地址和端口發起的新建連接根據EIM表項進行反向地址轉換。
該表項在與其相關聯的所有NAT會話表項老化後老化。
在NO-PAT方式進行源地址的動態轉換過程中,NAT設備首先創建一個NAT會話表項,然後建立一個NO-PAT表項用於記錄該轉換關係(內網地址<-->NAT地址)。除此之外,在NAT設備進行ALG處理時,也會觸發創建NO-PAT表項。NAT ALG的相關介紹請參見“1.9 NAT支持ALG”。
NO-PAT表項有以下兩個作用:
· 保證後續來自相同源地址的新建連接與首次連接使用相同的轉換關係。
· 允許滿足指定條件的主機向NAT地址發起的新建連接根據NO-PAT表項進行反向地址轉換。
該表項在與其相關聯的所有NAT會話表項老化後老化。
端口塊表項記錄1個用戶在網關轉換前的私網IP地址、轉換後對應的公網IP地址及其端口塊。端口塊表項分為靜態端口塊表項和動態端口塊表項。關於端口塊表項的詳細介紹,請參見“1.5.2 3. 基於端口塊的PAT模式”。
支持多VPN實例的NAT允許VPN實例內的用戶訪問外部網絡,同時允許分屬於不同VPN實例的用戶互訪。例如,當某VPN實例內的用戶經過NAT設備訪問外部網絡時,NAT將內部網絡主機的IP地址和端口替換為NAT地址和端口,同時還記錄了用戶的VPN實例信息(如VPN實例名稱)。外部網絡的回應報文到達NAT設備時,NAT將外部網絡地址和端口還原為內部網絡主機的IP地址和端口,同時可得知該回應報文應該轉發給哪一個VPN實例內的用戶。另外,NAT還可利用外部網絡地址所攜帶的VPN實例信息,支持多個VPN實例之間的互訪。
同時,NAT內部服務器也支持多VPN實例,這給外部網絡提供了訪問VPN實例內服務器的機會。例如,VPN1內提供Web服務的主機地址是10.110.1.1,可以使用202.110.10.20作為Web服務器的外部地址,Internet的用戶使用202.110.10.20的地址就可以訪問到VPN1提供的Web服務。目前,僅全局NAT支持多VPN實例。
NAT hairpin功能用於滿足位於內網側的用戶之間或內網側的用戶與服務器之間通過NAT地址進行訪問的需求,通過對報文同時進行源地址和目的地址的轉換來實現。它支持兩種組網模式:
· P2P:位於內網側的用戶之間通過動態分配的NAT地址互訪。內網各主機首先向外網服務器注冊自己的內網地址信息,該地址信息為外網側出方向地址轉換的NAT地址,然後內網主機之間通過使用彼此向外網服務器注冊的外網地址進行互訪。
· C/S:位於內網側的用戶使用NAT地址訪問內網服務器。
ALG(Application Level Gateway,應用層網關)主要完成對應用層報文的解析和處理。通常情況下,NAT隻對報文頭中的IP地址和端口信息進行轉換,不對應用層數據載荷中的字段進行分析和處理。然而對於一些應用層協議,它們的報文的數據載荷中可能包含IP地址或端口信息,這些載荷信息也必須進行有效的轉換,否則可能導致功能不正常。
例如,FTP(File Transfer Protocol,文件傳輸協議)應用由FTP客戶端與FTP服務器之間建立的數據連接和控製連接共同實現,而數據連接使用的地址和端口由控製連接協商報文中的載荷信息決定,這就需要ALG利用NAT的相關轉換配置完成載荷信息的轉換,以保證後續數據連接的正確建立。
一般情況下,DNS(Domain Name System,域名係統)服務器和訪問私網服務器的用戶都在公網,通過在NAT設備上配置內部服務器,可以將公網地址、端口等信息映射到私網內的服務器上,使得公網用戶可以通過內部服務器的域名或公網地址來訪問內部服務器。但是,如圖1-4所示,如果DNS服務器在公網,私網用戶希望通過域名來訪問私網的Web服務器,則會由於DNS服務器向私網用戶發送的響應報文中包含的是私網服務器的公網地址,而導致收到響應報文的私網用戶無法利用域名訪問私網服務器。通過在設備上配置DNS mapping可以解決該問題。
圖1-4 NAT DNS mapping工作示意圖
NAT DNS mapping功能是指,通過配置“域名+公網IP地址+公網端口號+協議類型”的映射表,建立內部服務器域名與內部服務器公網信息的對應關係。NAT設備檢查接收到的DNS響應報文,根據報文中的域名查找用戶配置的DNS mapping映射表,並根據表項內的“公網地址+公網端口+協議類型”信息查找內部服務器地址映射表中該信息對應的私網地址,替換DNS查詢結果中的公網地址。這樣,私網用戶收到的DNS響應報文中就包含了要訪問的內部服務器的私網地址,也就能夠使用內部服務器域名訪問同一私網內的內部服務器。
NAT模塊會借助地址管理模塊對公網IPv4地址資源進行管理,具體機製為:
(1) NAT模塊將公網IPv4地址下發地址管理模塊。
(2) NAT模塊發送免費ARP報文通告下發到地址管理模塊的公網IPv4地址與自身物理接口MAC地址的對應關係,以便局域網內其他設備的ARP表項或MAC地址表項保持最新。從而避免因ARP表項或MAC地址表項更新不及時引發的業務異常。
同時,NAT模塊會回應其他設備發送的免費ARP。
關於免費ARP的詳細介紹,請參見“三層技術-IP業務配置指導”中的“ARP”。
在HA聯動虛擬地址(虛擬地址也稱為浮動地址)的高可靠性組網中,完成NAT轉換配置後,HA中的主、備NAT設備均會向同一局域網內的所有節點通告轉換配置中轉換後的IP地址與自身物理接口MAC地址的對應關係。導致與HA直連的上行三層設備可能會將下行報文發送給HA中的沒有業務處理能力的備設備,從而影響業務的正常運行。
為了避免上述情況的發生,僅HA中的主NAT設備會主動通告轉換後的IP地址與MAC地址的對應關係,其中的MAC地址為虛擬地址對應的虛擬MAC地址。
與HA直連的上行三層設備接收到主設備發送的地址解析響應報文後,更新IP地址與MAC地址的映射關係。後續該設備發送目的IP地址為轉換配置中轉換後的IP地址的下行報文時,使用虛擬MAC地址來封裝報文,然後發送到具有業務處理能力的主NAT設備,從而保證業務的正常運行。
NAT444是運營商網絡部署NAT的整體解決方案,它基於NAT444網關,結合AAA服務器、日誌服務器等配套係統,提供運營商級的NAT,並支持用戶溯源等功能。在眾多IPv4向IPv6網絡過渡的技術中,NAT444僅需在運營商側引入二次NAT,對終端和應用服務器端的更改較小,並且NAT444通過端口塊分配方式解決用戶溯源等問題,因此成為了運營商的首選IPv6過渡方案。
通過在CR設備上安裝處理NAT業務的slot或者旁掛NAT444設備來實現NAT444。如圖1-5所示,用戶訪問外部網絡時,CPE設備上進行第一次NAT轉換,然後在BRAS上完成AAA認證和私網地址的分配,認證通過後,用戶發起訪問外網的報文會在NAT444網關上進行NAT444轉換(第二次NAT轉換)。
圖1-5 NAT444集中部署組網圖
分屬不同VPN的內部網絡主機使用了相同的地址空間,為了實現不同VPN中地址重疊的內網主機互訪,需要配置靜態NAT,對同一個方向的同一條流的數據報文同時進行源IP地址轉換和目的IP地址轉換。
如圖1-6所示,VPN 1和VPN 2中的內網用戶地址均為192.168.1.1。配置靜態NAT,將VPN 1中Host A的地址在VPN 2中轉換為172.16.1.1,將VPN 2中Host B的地址在VPN 1中轉換為172.16.2.1。當靜態NAT生效後,Host A使用172.16.2.1能夠訪問Host B,Host B使用172.16.1.1能夠訪問Host A。
圖1-6 地址中疊的兩個VPN之間互訪
當內部網絡主機使用外網注冊地址或者合法的外網地址訪問外部網絡時,內網主機的IP地址和外網主機的IP地址可能會發生重疊。為了實現內網主機能夠成功訪問與之地址重疊的外部服務器,需要配置NAT ALG+動態NAT。
如圖1-7所示,內網Host通過域名訪問外網Web服務器,Host和Web服務器的IP地址均為192.168.1.1。
(1) 內網Host首先向外網的DNS服務器發起DNS查詢請求。
(2) DNS服務器發送的DNS應答報文中,Web服務器的域名對應的IP地址為192.168.1.1。DNS應答報文經過NAT設備時,進行DNS的NAT ALG處理,將DNS應答報文中域名對應的IP地址192.168.1.1轉換為10.1.1.1(該地址為臨時分配的NAT地址)。NAT設備將ALG處理後的DNS應答報文發送給內網Host。
(3) Host訪問Web服務器的報文中,源IP地址為192.168.1.1,目的IP地址為10.1.1.1。報文經過NAT設備時,NAT設備根據動態NAT配置將源地址192.168.1.1轉換為20.1.1.1;NAT設備檢測到目的地址10.1.1.1為臨時分配的NAT地址,根據步驟(2)中的轉換關係,將10.1.1.1轉換為192.168.1.1。
DS-Lite(Dual Stack Lite,輕量級雙協議棧)技術綜合了IPv4 over IPv6隧道技術和NAT技術,利用隧道技術實現通過IPv6網絡連接隔離的IPv4網絡。
在DS-Lite網絡中,B4設備為用戶網絡的網關或者運行DS-Lite客戶端軟件的用戶主機,AFTR設備作為隧道端點設備和NAT網關負責執行隧道報文的封裝、解封裝以及對解封裝後的IPv4地址進行轉換。有關DS-Lite隧道的詳細介紹,請參見“VPN配置指導”中的“隧道”。
圖1-8 DS-Lite網絡組網圖
在該組網環境下,AFTR設備可基於B4的IPv6地址對B4分配端口塊,DS-Lite主機或所有以B4為網關的私網主機共用該B4的端口塊訪問IPv4網絡。該方式支持對DS-Lite主機基於端口塊的溯源。
目前,僅支持對B4進行動態映射方式的端口塊分配。
全局NAT適用於外部接口不固定的場景,當外部接口發生變化時,用戶無需更改相關配置,降低了維護成本。
全局NAT通過在全局NAT策略中創建並執行NAT規則來實現地址轉換。NAT規則中包含報文的過濾條件和地址轉換動作:
· 過濾條件用於匹配進行地址轉換的報文。
· 地址轉換動作包括源NAT(SNAT)和目的NAT(DNAT)。SNAT轉換報文的源IP地址,能夠隱藏內網用戶的IP地址;DNAT轉換報文的目的IP地址,通常用於內網服務器對外部網絡用戶提供服務的場景。在同一條NAT規則中組合使用SNAT和DNAT,能夠同時對報文進行源地址轉換和目的地址轉換。
全局NAT將NAT規則分為以下三類:
· SNAT規則:一條NAT規則中的動作僅包括SNAT。
· DNAT規則:一條NAT規則中的動作僅包括DNAT。
· SNAT+DNAT規則:一條NAT規則中的動作包含SNAT和DNAT。
(1) 配置全局NAT策略
a. 創建全局NAT策略
b. 配置NAT類型的規則
c. 配置NAT64類型的規則
d. 配置NAT66類型的規則
e. 移動NAT規則
f. 禁用NAT規則
(2) (可選)配置NAT地址組
(3) (可選)配置NAT ALG
(4) (可選)配置NAT DNS mapping功能
(5) (可選)配置NAT發送免費ARP報文功能
(6) (可選)提高NAT業務的可靠性
(7) (可選)特定條件下的NAT配置
¡ 開啟對TCP SYN和SYN ACK報文中時間戳的刪除功能
¡ 配置全局NAT策略中NAT類型的SNAT+DNAT規則的源IP地址轉換和目的IP轉換先於安全策略匹配,以便與老版本兼容
(8) (可選)配置NAT維護功能
(9) (可選)配置NAT日誌和告警功能
¡ 開啟NO-PAT方式下NAT地址組中地址成員使用率的日誌信息功能
全局NAT策略由NAT規則組成,NAT規則由匹配條件和動作組成:
· 匹配條件:源地址、目的地址、服務類型、源安全域和目的安全域。每條NAT規則中可以根據需求配置不同的匹配條件,設備對匹配上的流量進行地址轉換。匹配上的流量指的是能夠匹配上某條NAT規則中所有匹配條件的流量。
· 動作:源地址轉換和目的地址轉換。
NAT規則有如下三種類型:
· NAT類型的地址轉換,即IPv4和IPv4地址的相互轉換。關於NAT功能和原理的詳細介紹,請參見“NAT配置指導”中的“NAT”。
· NAT64類型的地址轉換,即IPv4和IPv6地址的相互轉換。關於NAT64功能和原理的詳細介紹,請參見“NAT配置指導”中的“AFT”。
· NAT66類型的地址轉換,即IPv6地址之間的相互轉換,或者NPTv6方式的前綴轉換。關於NAT66功能和原理的詳細介紹,請參見“NAT配置指導”中的“NAT66”。
若NAT規則未引用任何對象組或安全域,則該規則將匹配任意報文。
在全局NAT策略處於生效狀態時,如果全局NAT策略中包含多條規則,則位置靠前的規則具有更高的匹配優先級。設備會按照規則的匹配優先級對報文進行匹配,一旦報文匹配上某條規則,匹配過程即結束。如果全局NAT策略未生效,則不會使用該策略中的規則進行報文匹配。可以通過display nat global-policy命令查看全局NAT策略的狀態,顯示信息中的“Config status”字段標識了全局NAT策略是否生效。
全局NAT策略下,最多可以創建10000條全局NAT規則。
配置內部服務器時,如果將TCP或UDP協議的端口號改為非知名端口號,則NAT設備不會進行ALG處理,導致用戶無法使用內部服務器提供的服務。可通過如下兩種方式解決上述問題:
· 修改內部服務器配置,使用TCP或UDP協議自身的知名端口號。
· 不修改內部服務器配置,使用port-mapping命令建立TCP或UDP協議與對應的內部服務器配置中的端口號的映射。關於port-mapping命令的詳細介紹,請參見“安全配置指導”中的“APR”。
(1) 進入係統視圖。
system-view
(2) 創建全局NAT策略,並進入全局NAT策略視圖。
nat global-policy
對於“DNAT規則”或者“SNAT+DNAT規則”,不能將目的安全域作為報文的過濾條件。
對於使用靜態地址轉換方式的SNAT規則,該規則引用的對象組中不能存在排除地址。
(1) 進入係統視圖。
system-view
(2) 進入全局NAT策略視圖。
nat global-policy
(3) 創建NAT類型的規則,並進入NAT規則視圖。
rule name rule-name [ type nat ]
缺省情況下,不存在NAT規則。
(4) (可選)配置NAT規則的描述信息。
description text
缺省情況下,NAT規則未配置任何描述信息。
(5) (可選)配置電信雲堤網絡中NAT規則別名及所屬的租戶。
yundi alias alias-name tenant tenant-id
缺省情況下,在電信雲堤網絡中未配置NAT規則別名及所屬的租戶。
別名和租戶ID通常由遠端控製器分配,因此不建議在設備上手工設置本功能。
(6) 配置報文過濾條件。
¡ 配置NAT規則中用於匹配報文源IP地址的過濾條件。
source-ip { object-group-name | host ip-address | subnet subnet-ip-address mask-length }
缺省情況下,NAT規則中不存在用於匹配報文源IP地址的過濾條件。
¡ 配置NAT規則中用於匹配報文目的IP地址的過濾條件。
destination-ip { object-group-name | host ip-address | subnet subnet-ip-address mask-length }
缺省情況下,NAT規則中不存在用於匹配報文目的IP地址的過濾條件。
¡ 配置NAT規則中用於匹配報文攜帶的服務類型的過濾條件。
service object-group-name
缺省情況下,NAT規則中不存在用於匹配報文攜帶的服務類型的過濾條件。
¡ 配置作為NAT規則過濾條件的源安全域。
source-zone source-zone-name
缺省情況下,NAT規則中不存在源安全域過濾條件。
¡ 配置作為NAT規則過濾條件的目的安全域。
destination-zone destination-zone-name
缺省情況下,NAT規則中不存在目的安全域過濾條件。
¡ 配置NAT規則中用於匹配報文所屬VPN實例的過濾條件。
vrf vrf-name
缺省情況下,NAT規則中不存在用於匹配報文所屬VPN實例的過濾條件。
(7) 配置NAT規則的動作。
¡ 配置NAT規則中源地址轉換方式。
NO-PAT方式:
action snat { address-group { group-id | name group-name } | object-group ipv4-object-group-name } no-pat [ reversible ] [ vrrp virtual-router-id ] [ vrf vrf-name ]
PAT方式:
action snat { address-group { group-id | name group-name } | object-group ipv4-object-group-name } [ port-preserved ] [ vrrp virtual-router-id ] [ vrf vrf-name ]
Easy IP方式:
action snat easy-ip [ port-preserved ] [ vrf vrf-name ]
靜態地址轉換方式:
action snat static { ip-address global-address | object-group object-group-name | subnet subnet-ip-address mask-length } [ vrrp virtual-router-id ] [ vrf vrf-name ]
NO-NAT方式:
action snat no-nat
缺省情況下,未配置NAT規則中源地址的轉換方式。
¡ 配置NAT規則的目的地址轉換方式。
服務器映射方式:
action dnat { ip-address local-address | object-group ipv4-object-group-name } [ local-port { local-port1 [ to local-port2 ] }&<1-32> ] [ vrrp virtual-router-id ] [ vrf vrf-name ]
NO-NAT方式:
action dnat no-nat
缺省情況下,未配置NAT規則中目的地址的轉換方式。
(8) (可選)開啟NAT規則命中統計功能。
counting enable
缺省情況下,NAT規則命中統計功能處於關閉狀態。
(9) 配置PAT方式地址轉換的模式。
a. 退回全局NAT策略視圖。
quit
b. 退回係統視圖。
quit
c. 配置PAT方式地址轉換的模式。
nat mapping-behavior endpoint-independent [ acl { ipv4-acl-number | name ipv4-acl-name } ]
缺省情況下,PAT方式地址轉換的模式為Address and Port-Dependent Mapping。
該配置隻對PAT方式的出方向動態地址轉換有效。
NAT64類型的規則對應的功能為AFT(Address Family Translation,地址族轉換),有如下兩種應用場景:
· IPv6側發起訪問。在IPv4向IPv6過渡初期,多數服務位於IPv4網絡中,IPv6網絡用戶訪問IPv4網絡中的服務時,用戶報文的源地址和目的地址的類型均為IPv6,需要將源地址和目的地址轉換為IPv4地址。
· IPv4側發起訪問。在IPv4向IPv6過渡後期,多數服務位於IPv6網絡中,IPv4網絡用戶訪問IPv6網絡中的服務時,用戶報文的源地址和目的地址的類型均為IPv4,需要將源地址和目的地址轉換為IPv6地址。
以上兩種場景中,既需進行源地址轉換,也需要進行目的地址轉換。
同一個NAT64規則中可以根據需求配置多個匹配條件,但後配置的匹配條件中的IP地址類型必須與先配置的匹配條件中的IP地址類型一致,例如先配置了source-ip host 192.168.1.1,接下來配置了source-ip host 100::1,那麼source-ip host 100::1配置不生效。請根據實際應用場景規劃配置。
使用前綴方式進行地址轉換時,匹配條件中的IPv6地址前綴長度必須符合轉換動作中General前綴、IVI前綴或NAT64前綴對前綴長度的要求。
(1) 進入係統視圖。
system-view
(2) 進入全局NAT策略視圖。
nat global-policy
(3) 創建NAT64類型的規則,並進入NAT規則視圖。
rule name rule-name type nat64
缺省情況下,不存在NAT規則。
(4) (可選)配置NAT規則的描述信息。
description text
缺省情況下,NAT規則未配置任何描述信息。
(5) 配置報文過濾條件。
¡ 配置NAT規則中用於匹配報文源IP地址的過濾條件。
source-ip { { ipv4-object-group-name | ipv6-object-group-name } | host { ipv4-address | ipv6-address } | subnet { subnet-ipv4-address mask-length | subnet-ipv6-address prefix-length } }
缺省情況下,NAT規則中不存在用於匹配報文源IP地址的過濾條件。
¡ 配置NAT規則中用於匹配報文目的IP地址的過濾條件。
destination-ip { { ipv4-object-group-name | ipv6-object-group-name } | host { ipv4-address | ipv6-address } | subnet { subnet-ipv4-address mask-length | subnet-ipv6-address prefix-length } }
¡ 配置NAT規則中用於匹配報文攜帶的服務類型的過濾條件。
service object-group-name
缺省情況下,NAT規則中不存在用於匹配報文攜帶的服務類型的過濾條件。
¡ 配置作為NAT規則過濾條件的源安全域。
source-zone source-zone-name
缺省情況下,NAT規則中不存在源安全域過濾條件。
¡ 配置NAT規則中用於匹配報文所屬VPN實例的過濾條件。
vrf vrf-name
缺省情況下,NAT規則中不存在用於匹配報文所屬VPN實例的過濾條件。
(6) 配置NAT規則的動作。
¡ 配置NAT規則中源地址轉換方式。
NO-PAT方式:
action snat object-group ipv4-object-group-name no-pat [ ipv4-vrrp virtual-router-id ] [ vrf vrf-name ]
action snat object-group ipv6-object-group-name no-pat [ vrf vrf-name ]
PAT方式:
action snat object-group ipv4-object-group-name [ ipv4-vrrp virtual-router-id ] [ vrf vrf-name ]
action snat object-group ipv6-object-group-name [ vrf vrf-name ]
前綴轉換方式:
action snat prefix { general { v4tov6 prefix-general general-prefix-length | v6tov4 } | ivi v6tov4 | nat64 v4tov6 prefix-nat64 nat64-prefix-length } [ vrf vrf-name ]
靜態地址轉換方式:
action snat static ip-address global-ipv4-address [ ipv4-vrrp virtual-router-id ] [ vrf vrf-name ]
action snat static ip-address global-ipv6-address [ ipv6-vrrp virtual-router-id ] [ vrf vrf-name ]
¡ 配置NAT規則的目的地址轉換方式。
靜態地址轉換方式:
action dnat static ip-address local-ipv4-address [ ipv6-vrrp virtual-router-id ] [ vrf vrf-name ]
action dnat static ip-address local-ipv6-address [ ipv4-vrrp virtual-router-id ] [ vrf vrf-name ]
服務器映射方式:
action dnat server ip-address local-ipv4-address [ local-port local-port ] [ vrf vrf-name ]
action dnat server ip-address local-ipv6-address [ local-port local-port ] [ ipv4-vrrp virtual-router-id ] [ vrf vrf-name ]
前綴方式:
action dnat prefix { general v6tov4 | nat64 v6tov4 } [ vrf vrf-name ]
action dnat prefix { general v4tov6 prefix-general prefix-length | ivi v4tov6 prefix-ivi } [ ipv4-vrrp virtual-router-id ] [ vrf vrf-name ]
(7) (可選)開啟NAT規則命中統計功能。
counting enable
缺省情況下,NAT規則命中統計功能處於關閉狀態。
NAT66是指IPv6地址之間的轉換,包括動態方式、靜態方式和NPTv6三種轉換方式。IPv6地址由網絡前綴和接口ID兩部分組成,NPTv6方式的地址轉換將網絡前綴轉換為新的網絡前綴,同時IPv6地址接口ID部分會根據RFC 6296進行調整。具體算法請參考RFC 6296。其他方式的地址轉換是將IPv6地址轉換為新的IPv6地址。在IPv6地址數量較多且對轉換後的地址不敏感的情況下,建議采用NPTv6方式。
對於“DNAT規則”或者“SNAT+DNAT規則”,不能將目的安全域作為報文的過濾條件。
(1) 進入係統視圖。
system-view
(2) 進入全局NAT策略視圖。
nat global-policy
(3) 創建NAT66類型的規則,並進入NAT規則視圖。
rule name rule-name type nat66
缺省情況下,不存在NAT規則。
(4) (可選)配置NAT規則的描述信息。
description text
缺省情況下,NAT規則未配置任何描述信息。
(5) 配置報文過濾條件。
¡ 配置NAT規則中用於匹配報文源IP地址的過濾條件。
source-ip { ipv6-object-group-name | host ipv6-address | subnet subnet-ipv6-address prefix-length }
缺省情況下,NAT規則中不存在用於匹配報文源IP地址的過濾條件。
¡ 配置NAT規則中用於匹配報文目的IP地址的過濾條件。
destination-ip { ipv6-object-group-name | host ipv6-address | subnet subnet-ipv6-address prefix-length }
¡ 配置NAT規則中用於匹配報文攜帶的服務類型的過濾條件。
service object-group-name
缺省情況下,NAT規則中不存在用於匹配報文攜帶的服務類型的過濾條件。
¡ 配置作為NAT規則過濾條件的源安全域。
source-zone source-zone-name
缺省情況下,NAT規則中不存在源安全域過濾條件。
¡ 配置作為NAT規則過濾條件的目的安全域。
destination-zone destination-zone-name
缺省情況下,NAT規則中不存在目的安全域過濾條件。
¡ 配置NAT規則中用於匹配報文所屬VPN實例的過濾條件。
vrf vrf-name
缺省情況下,NAT規則中不存在用於匹配報文所屬VPN實例的過濾條件。
(6) 配置NAT規則的動作。
¡ 配置NAT規則中源地址轉換方式。
NO-PAT方式:
action snat object-group ipv6-object-group-name no-pat [ vrf vrf-name ]
PAT方式:
action snat object-group ipv6-object-group-name [ vrf vrf-name ]
靜態地址轉換方式:
action snat static ip-address global-ipv6-address [ ipv6-vrrp virtual-router-id ] [ vrf vrf-name ]
NPTv6方式:
action snat nptv6 translated-ipv6-prefix nptv6-prefix-length [ vrf vrf-name ]
NO-NAT方式:
action snat no-nat
¡ 配置NAT規則的目的地址轉換方式。
服務器映射方式:
action dnat ip-address local-ipv6-address [ local-port local-port ] [ vrf vrf-name ]
NPTv6方式:
action dnat nptv6 translated-ipv6-prefix nptv6-prefix-length [ vrf vrf-name ]
NO-NAT方式:
action dnat no-nat
(7) (可選)開啟NAT規則命中統計功能。
counting enable
缺省情況下,NAT規則命中統計功能處於關閉狀態。
NAT規則的位置越靠前,則其具有更高的匹配優先級。對於需要調整NAT規則匹配順序的場景,請使用本功能移動NAT規則的位置,從而靈活調整規則的匹配優先級順序。
調整NAT規則的位置會修改規則的匹配優先級的值,優先級的值越小,則匹配優先級越高。具體機製為:
· 將nat-rule-name1移動到nat-rule-name2後麵,nat-rule-name2的匹配優先級的值不變,nat-rule-name1的匹配優先級的值=nat-rule-name2的匹配優先級的值+1。
· 將nat-rule-name1移動到nat-rule-name2前麵,nat-rule-name2的匹配優先級的值不變,nat-rule-name1的匹配優先級的值=nat-rule-name2的匹配優先級的值-1。
在全局NAT策略視圖下,可通過執行display this命令查看NAT規則的匹配優先級順序。匹配優先級順序受規則創建順序和規則中包含的轉換動作類型的影響,具體如下:
· “DNAT規則”和“SNAT+DNAT規則”的匹配優先級高於所有“SNAT規則”
· “DNAT規則”和“SNAT+DNAT規則”的匹配優先級順序與創建順序有關,先創建的規則擁有較高的匹配優先級。
· 當新建“DNAT規則”或“SNAT+DNAT規則”時,該規則位於所有已存在的“DNAT規則”以及“SNAT+DNAT規則”之後,即該規則的匹配優先級低於所有已存在的“DNAT規則”以及“SNAT+DNAT規則”。
· “SNAT規則”的匹配優先級與創建順序有關,先創建的規則擁有較高的匹配優先級。
· 當新建“SNAT規則”時,該規則在所有已有的“SNAT規則”之後,即該規則的匹配優先級低於所有已存在的“SNAT規則”。
一旦設備匹配到了“DNAT規則”或者“SNAT+DNAT規則”,就不會再匹配“SNAT規則”。用戶可以通過移動NAT規則來調整匹配優先級順序,但是需確保所有的“DNAT規則”和“SNAT+DNAT規則”位於“SNAT規則”之前:
· 不允許將“DNAT規則”或“SNAT+DNAT規則”移動到“SNAT規則”之後。
· 不允許將“SNAT規則”移動到“DNAT規則”或“SNAT+DNAT規則”之前。
(1) 進入係統視圖。
system-view
(2) 進入全局NAT策略視圖。
nat global-policy
(3) 修改NAT規則的匹配優先級順序。
rule move rule-name1 [ type { nat | nat64 | nat66 } ] { after | before } [ rule-name2 [ type { nat | nat64 | nat66 } ] ]
通過本命令隻能調整已經存在的NAT規則的匹配優先級順序。
調整NAT規則的優先級順序時,可以不指定規則類型。若指定了規則類型,建議指定準確的類型。
配置本功能後,相應的NAT規則將不再生效,但是不會將此NAT規則刪除。如果不再需要此NAT規則,需要執行undo rule name命令才能將其刪除。
(1) 進入係統視圖。
system-view
(2) 進入全局NAT策略視圖。
nat global-policy
(3) 進入NAT規則視圖。
rule name rule-name [ type { nat | nat64 | nat66 } ]
(4) 禁用NAT規則中的地址轉換映射。
disable
缺省情況下,NAT規則中的地址轉換映射處於開啟狀態。
一個NAT地址組是多個地址成員的集合。在全局NAT中,NAT類型的SNAT規則可以通過引用NAT地址組,將NAT地址組中的地址成員作為地址轉換後的地址。
(1) 創建NAT地址組,並進入NAT地址組視圖。
nat address-group group-id [ name group-name ]
(2) (可選)配置NAT地址組的描述信息。
description text
缺省情況下,未配置NAT地址組的描述信息。
(3) (可選)配置電信雲堤網絡中NAT地址組別名及所屬的租戶。
yundi alias alias-name tenant tenant-id
缺省情況下,在電信雲堤網絡中未配置NAT地址組別名及所屬的租戶。
別名和租戶ID通常由遠端控製器分配,因此不建議在設備上手工設置本功能。
(4) 添加地址成員。
¡ 將IP地址段作為NAT地址組中的地址成員。
address start-address end-address
可通過多次執行本命令添加多個地址組成員。
當前地址組成員的IP地址段不能與該地址組中或者其它地址組中已有的地址成員組成員
重疊。
¡ 如果IP地址段的某些IP地址不能用於地址轉換,可通過如下命令配置禁止用於地址轉換的IP地址。
exclude-ip start-address end-address
end-address必須大於或等於start-address,如果start-address和end-address相同,則表示隻有一個地址。
(5) (可選)配置端口範圍。
port-range start-port-number end-port-number
缺省情況下,端口範圍為1~65535。
該配置僅對PAT方式地址轉換生效。
(6) (可選)配置端口塊參數。
port-block block-size block-size [ extended-block-number extended-block-number ]
缺省情況下,未配置NAT地址組的端口塊參數。
該配置僅對PAT方式地址轉換生效。
(1) 進入係統視圖。
system-view
(2) 開啟指定或所有協議類型的NAT ALG功能。
nat alg { all | dns | ftp | h323 | icmp-error | ils | mgcp | nbt | pptp | rsh | rtsp | sccp | sctp | sip | sqlnet | tftp | xdmcp }
缺省情況下,DNS、FTP、ICMP差錯報文、PPTP、RTSP協議類型的NAT ALG功能處於開啟狀態,其他協議類型的NAT ALG功能處於關閉狀態。
NAT DNS mapping功能適用於DNS服務器在公網、私網用戶希望通過域名來訪問私網內部服務器的場景中,用於將DNS響應報文載荷中內部服務器域名對應的公網IP替換為私網IP,從而讓私網用戶使用替換後的私網IP訪問內部服務器。
DNS mapping功能需要和服務器映射方式的地址轉換配置配合使用:
(1) DNS mapping建立“內部服務器域名<-->外網IP地址+外網端口號+協議類型”的映射關係。
(2) 服務器映射方式的地址轉換配置中,用於匹配報文目的IP地址的過濾條件指定了內部服務器對外提供服務的公網IP地址,用於匹配報文攜帶的服務類型的過濾條件指定了內部服務器對外提供的服務類型以及端口號,轉換動作指定了內部服務器公網IP地址轉換後的私網IP地址。
(3) NAT設備收到DNS響應報文後,根據報文中的域名查找DNS mapping映射表,並根據表項內的“公網地址+公網端口+協議類型”信息查找服務器映射方式的地址轉換配置中該信息對應的私網地址,替換DNS查詢結果中的公網地址。
(1) 進入係統視圖。
system-view
(2) 開啟DNS協議類型的NAT ALG功能。
nat alg dns
缺省情況下,DNS協議類型的NAT ALG功能處於開啟狀態。
(3) 配置一條域名到內部服務器的映射。
nat dns-map domain domain-name protocol pro-type { interface interface-type interface-number | ip global-ip } port global-port
可配置多條域名到內部服務器的映射。
缺省情況下,NAT模塊會發送免費ARP報文,向同一局域網內所有節點通告NAT公網IP地址與MAC地址的對應關係,並且會回應同一局域網內其他節點發送的免費ARP。當NAT公網地址較多時,發送免費ARP耗時較長,可能會導致ARP業務異常。這種情況下,為了保證ARP業務正常運行,可以暫時關閉此功能。關閉此功能後,NAT不再發送免費ARP報文,僅回應同一局域網內其他節點發送的免費ARP。
關閉NAT發送免費ARP報文通告公網IP地址與MAC地址對應關係的功能後,當NAT公網地址或NAT公網地址對應的VRRP變更、接口MAC或虛MAC變更、等價出口的鏈路震蕩等,NAT模塊不會主動發送免費ARP,可能會導致同一局域網內其他節點不能及時更新MAC地址表項,從而引發業務異常。請謹慎使用。
(1) 進入係統視圖。
system-view
(2) 開啟NAT發送免費ARP報文功能。
nat gratuitous-arp enable
缺省情況下,NAT發送免費ARP報文功能處於開啟狀態。
在IRF雙機熱備的負載分擔場景下,開啟NAT端口負載分擔功能後,兩台設備分別獲得一半的端口塊資源,使得相同私網IP地址在不同的成員設備上獨占一定的端口資源,避免端口分配衝突。
關於IRF的詳細介紹,請參見“虛擬化技術配置指導”中的“IRF”。
在IRF雙機熱備的主備備份場景下,不需要配置此命令。
nat port-load-balance enable slot slot-number
在單台NAT設備的組網中,一旦發生單點故障,內網用戶將無法與外網通信。采用HA可以很好的避免上述情況的發生。在HA組網中的兩台設備均可承擔NAT業務,並通過HA通道進行會話熱備、會話關聯表熱備、NAT端口塊表項熱備以及NAT配置的同步。當其中一台設備故障後流量自動切換到另一台正常工作的設備。
關於HA的詳細介紹,請參見“高可靠性配置指導”中的“雙機熱備(RBM)”。
HA組網中的兩台設備均可承擔NAT業務,實際處理NAT業務的設備由VRRP備份組中的Master設備承擔。下麵以主備模式的HA為例,介紹該場景中當Master設備發生故障時如何保證NAT業務不中斷。
如圖2-1所示,Device A和Device B組成HA(Device A為HA的主管理設備,Device B為HA的從管理設備),Device A通過備份通道將會話表項、會話關聯表項和端口塊表項實時備份到Device B。同時,Device A和Device B的下行鏈路組成VRRP備份組1,上行鏈路組成VRRP備份組2,並將VRRP和HA關聯。HA根據鏈路狀態或設備的轉發能力選擇Device A作為Master設備,正常情況下,由Device A進行地址轉換。
如圖2-2所示,當Device A的接口Interface A2發生故障時,Device B在VRRP備份組中的狀態由Backup變為Master,由於Device B上已經有相關的NAT配置信息和業務表項,因此可以保證鏈路切換後的NAT業務不中斷。
在主備模式的HA組網中,靜態IP地址轉換、源IP地址轉換、目的IP地址轉換的部分轉換規則會將轉換後的公網IP地址或內部服務器對外提供服務的公網IP地址下發到地址管理。然後,主、備設備均會向同一局域網內所有節點或本地鏈路範圍內所有節點通告公網IP與自身物理接口MAC地址的對應關係。導致與HA直連的上行三層設備可能會將下行報文發送給HA中的Backup設備,從而影響業務的正常運行。
為了避免上述情況的發生,需要將地址轉換方式與VRRP備份組綁定。執行綁定操作後,僅Master設備收到對轉換後IP地址或內部服務器對外提供服務的公網IP地址的ARP請求或NS請求後,才會回應ARP響應報文或NA響應報文,響應報文中攜帶的MAC地址為此VRRP備份組的虛擬MAC地址。有關HA的詳細介紹,請參見“高可靠性配置指導”中的“高可靠性”。
請在HA的主管理設備的NAT規則視圖下將地址轉換方式與VRRP備份組綁定,該備份組的虛擬IP與轉換後的公網IP地址或內部服務器對外提供服務的公網IP地址在同一網段。
(1) 進入係統視圖。
system-view
(2) 進入全局NAT策略視圖。
nat global-policy
(3) 進入NAT規則視圖。
rule name rule-name [ type nat ]
(4) 將地址轉換方式與VRRP備份組綁定。請至少選擇其中一項進行配置。
¡ NO-PAT方式源地址轉換與VRRP綁定。
action snat address-group { group-id | name group-name } no-pat [ reversible ] vrrp virtual-router-id
¡ PAT方式源地址轉換與VRRP綁定。
action snat address-group { group-id | name group-name } [ port-preserved ] vrrp virtual-router-id
¡ 靜態方式源地址轉換與VRRP綁定。
action snat static { ip-address global-address | object-group object-group-name | subnet subnet-ip-address mask-length } vrrp virtual-router-id
¡ 服務器映射方式目的地址轉換與VRRP綁定。
action dnat { ip-address local-address | object-group ipv4-object-group-name } [ local-port { local-port1 [ to local-port2 ] }&<1-32> ] vrrp virtual-router-id
缺省情況下,地址轉換方式未綁定任何VRRP備份組。
(1) 進入係統視圖。
system-view
(2) 進入全局NAT策略視圖。
nat global-policy
(3) 進入NAT規則視圖。
rule name rule-name type nat64
(4) 將地址轉換方式與VRRP備份組綁定。請至少選擇其中一項進行配置。
¡ NO-PAT方式源地址轉換與VRRP綁定。
action snat object-group ipv4-object-group-name no-pat [ ipv4-vrrp virtual-router-id ] [ vrf vrf-name ]
¡ PAT方式源地址轉換與VRRP綁定。
action snat object-group ipv4-object-group-name [ ipv4-vrrp virtual-router-id ] [ vrf vrf-name ]
¡ IPv6到IPv4靜態方式源地址轉換與VRRP綁定。
action snat static ip-address global-ipv4-address [ ipv4-vrrp virtual-router-id ] [ vrf vrf-name ]
¡ IPv4到IPv6靜態方式源地址轉換與VRRP綁定。
action snat static ip-address global-ipv6-address [ ipv6-vrrp virtual-router-id ] [ vrf vrf-name ]
¡ IPv6到IPv4靜態方式目的地址轉換與VRRP綁定。
action dnat static ip-address local-ipv4-address [ ipv6-vrrp virtual-router-id ] [ vrf vrf-name ]
¡ IPv4到IPv6靜態方式目的地址轉換與VRRP綁定。
action dnat static ip-address local-ipv6-address [ ipv4-vrrp virtual-router-id ] [ vrf vrf-name ]
¡ IPv4到IPv6服務器映射方式目的地址轉換與VRRP綁定。
action dnat server ip-address local-ipv6-address [ local-port local-port ] [ ipv4-vrrp virtual-router-id ] [ vrf vrf-name ]
¡ IPv4到IPv6前綴方式目的地址轉換與VRRP綁定。
action dnat prefix { general v4tov6 prefix-general prefix-length | ivi v4tov6 prefix-ivi } [ ipv4-vrrp virtual-router-id ] [ vrf vrf-name ]
缺省情況下,地址轉換方式未綁定任何VRRP備份組。
(1) 進入係統視圖。
system-view
(2) 進入全局NAT策略視圖。
nat global-policy
(3) 進入NAT規則視圖。
rule name rule-name type nat66
(4) 將靜態方式源地址轉換與VRRP備份組綁定。
action snat static ip-address global-ipv6-address [ ipv6-vrrp virtual-router-id ] [ vrf vrf-name ]
缺省情況下,靜態方式源地址轉換未綁定任何VRRP備份組。
在雙主模式的HA組網中,兩台設備互為主備,仍然可能出現與HA直連的上行三層設備將下行報文發送給HA中的Backup設備,從而影響業務正常運行的情況。
為了避免上述情況的發生,需要將地址轉換方式與VRRP備份組綁定。執行綁定操作後,僅Master設備收到對轉換後IP地址或內部服務器對外提供服務的公網IP地址的ARP請求或NS請求後,才會回應ARP響應報文或NA響應報文,響應報文中攜帶的MAC地址為此VRRP備份組的虛擬MAC地址。有關HA的詳細介紹,請參見“高可靠性配置指導”中的“高可靠性”。
請根據不同的情況選擇不同的配置方式:
· 雙主模式的HA組網中,兩台設備的NAT規則可以共用同一個NAT地址組時,需要注意的是,為了防止不同的Master設備將不同主機的流量轉換為同一個地址和端口號,需要使用PAT方式的地址轉換,並配置nat remote-backup port-alloc命令,使得不同的Master設備使用不同範圍的端口資源。
· 除上述情況外,建議雙主模式HA組網中的兩台設備使用不同的公網IP進行地址轉換,避免出現不同的Master設備對不同主機的流量進行地址轉換後,地址轉換的結果相同的情況。例如,當HA中的兩台設備使用不同地址範圍的NAT地址組時(通過NAT規則匹配用戶流量,實現不同源IP地址範圍的用戶流量使用不同的NAT地址組進行地址轉換),不同的內網用戶設置不同的網關地址,使得正向地址轉換的流量由不同的Master設備進行處理。請在HA的主管理設備上將使用不同的NAT地址組進行地址轉換的地址轉換方式與不同的VRRP備份組綁定,從而引導反向地址轉換的流量使用不同的Master設備進行地址轉換,實現NAT業務的負載分擔。
請在HA的主管理設備的NAT規則視圖下將地址轉換方式與VRRP備份組綁定,該備份組的虛擬IP與轉換後的公網IP地址或內部服務器對外提供服務的公網IP地址在同一網段。
(1) 進入係統視圖。
system-view
(2) 進入全局NAT策略視圖。
nat global-policy
(3) 進入NAT規則視圖。
rule name rule-name [ type nat ]
(4) 將地址轉換方式與VRRP備份組綁定。請至少選擇其中一項進行配置。
¡ NO-PAT方式源地址轉換與VRRP綁定。
action snat address-group { group-id | name group-name } no-pat [ reversible ] vrrp virtual-router-id
¡ PAT方式源地址轉換與VRRP綁定。
action snat address-group { group-id | name group-name } [ port-preserved ] vrrp virtual-router-id
¡ 靜態方式源地址轉換與VRRP綁定。
action snat static { ip-address global-address | object-group object-group-name | subnet subnet-ip-address mask-length } vrrp virtual-router-id
¡ 服務器映射方式目的地址轉換與VRRP綁定。
action dnat { ip-address local-address | object-group ipv4-object-group-name } [ local-port { local-port1 [ to local-port2 ] }&<1-32> ] vrrp virtual-router-id
缺省情況下,地址轉換方式未綁定任何VRRP備份組。
(5) (可選)指定HA中主、從管理設備可以使用的NAT端口塊範圍。
a. 退回全局NAT策略視圖。
quit
b. 退回係統視圖。
quit
c. 指定HA中主、從管理設備可以使用的NAT端口塊範圍。
nat remote-backup port-alloc { primary | secondary }
缺省情況下,HA中的主、從管理設備共用NAT端口資源。
參數 |
功能 |
primary |
表示使用數值較小的一半端口 |
secondary |
表示使用數值較大的一半端口 |
(1) 進入係統視圖。
system-view
(2) 進入全局NAT策略視圖。
nat global-policy
(3) 進入NAT規則視圖。
rule name rule-name type nat64
(4) 將地址轉換方式與VRRP備份組綁定。請至少選擇其中一項進行配置。
¡ NO-PAT方式源地址轉換與VRRP綁定。
action snat object-group ipv4-object-group-name no-pat [ ipv4-vrrp virtual-router-id ] [ vrf vrf-name ]
¡ PAT方式源地址轉換與VRRP綁定。
action snat object-group ipv4-object-group-name [ ipv4-vrrp virtual-router-id ] [ vrf vrf-name ]
¡ IPv6到IPv4靜態方式源地址轉換與VRRP綁定。
action snat static ip-address global-ipv4-address [ ipv4-vrrp virtual-router-id ] [ vrf vrf-name ]
¡ IPv4到IPv6靜態方式源地址轉換與VRRP綁定。
action snat static ip-address global-ipv6-address [ ipv6-vrrp virtual-router-id ] [ vrf vrf-name ]
¡ IPv6到IPv4靜態方式目的地址轉換與VRRP綁定。
action dnat static ip-address local-ipv4-address [ ipv6-vrrp virtual-router-id ] [ vrf vrf-name ]
¡ IPv4到IPv6靜態方式目的地址轉換與VRRP綁定。
action dnat static ip-address local-ipv6-address [ ipv4-vrrp virtual-router-id ] [ vrf vrf-name ]
¡ IPv4到IPv6服務器映射方式目的地址轉換與VRRP綁定。
action dnat server ip-address local-ipv6-address [ local-port local-port ] [ ipv4-vrrp virtual-router-id ] [ vrf vrf-name ]
¡ IPv4到IPv6前綴方式目的地址轉換與VRRP綁定。
action dnat prefix { general v4tov6 prefix-general prefix-length | ivi v4tov6 prefix-ivi } [ ipv4-vrrp virtual-router-id ] [ vrf vrf-name ]
缺省情況下,地址轉換方式未綁定任何VRRP備份組。
(1) 進入係統視圖。
system-view
(2) 進入全局NAT策略視圖。
nat global-policy
(3) 進入NAT規則視圖。
rule name rule-name type nat66
(4) 將靜態方式源地址轉換與VRRP備份組綁定。
action snat static ip-address global-ipv6-address [ ipv6-vrrp virtual-router-id ] [ vrf vrf-name ]
缺省情況下,靜態方式源地址轉換未綁定任何VRRP備份組。
在入方向動態地址轉換功能與隧道功能配合使用的組網環境中,若多個隧道接口引用同一個NAT地址組,則設備會將來自不同隧道的報文的源IP地址轉換為相同的NAT地址,並從設備的出接口轉發出去。缺省情況下,設備出接口收到反向報文後,不會查詢NAT會話表項,這將導致反向報文不能正確轉發。為解決此問題,可在設備的出接口開啟反向報文的重定向功能,使出接口收到反向報文後查詢NAT會話表項,根據NAT會話表項記錄的信息將反向報文的目的IP地址進行NAT地址轉換,從而使反向報文通過接收正向報文的隧道發送出去。
(1) 進入係統視圖。
system-view
(2) 進入接口視圖。
interface interface-type interface-number
(3) 開啟反向報文的重定向功能。
nat redirect reply-route enable
缺省情況下,反向報文的重定向功能處於關閉狀態。
在PAT方式的動態地址轉換(即接口上配置了nat inbound或nat outbound命令)組網環境中,若服務器上同時開啟了tcp_timestams和tcp_tw_recycle功能,則Client與Server之間可能會出現無法建立TCP連接的現象。
為了解決以上問題,可在服務器上關閉tcp_tw_recycle功能或在設備上開啟對TCP SYN和SYN ACK報文中時間戳的刪除功能。
(1) 進入係統視圖。
system-view
(2) 開啟對TCP SYN和SYN ACK報文中時間戳的刪除功能。
nat timestamp delete [ vpn-instance vpn-instance-name ]
缺省情況下,不對TCP SYN和SYN ACK報文中的時間戳進行刪除。
多次執行本命令,可為不同VPN中的報文開啟此功能。
本功能用於解決如下場景中新老版本不兼容的問題。
設備進行軟件版本升級前,當全局NAT策略中使用SNAT+DNAT規則時,設備先進行源IP和目的IP轉換,然後使用轉換後的源IP和目的IP匹配安全策略。
設備升級軟件版本後,當全局NAT策略中使用SNAT+DNAT規則時,設備會先進行目的IP轉換,然後使用轉換前的源IP和轉換後的目的IP匹配安全策略,最後進行源IP轉換。這樣會導致軟件版本升級前後的處理方式不兼容。
為了解決上述問題,設備進行軟件升級過程中,會自從生成並下發nat global-policy compatible-previous-version rule-type ipv4-snat-and-dnat translate-before-secp命令並保存此配置。
本功能僅用於兼容老版本,不建議用戶手工配置。
(1) 進入係統視圖。
system-view
(2) 配置全局NAT策略中NAT類型的SNAT+DNAT規則的源IP地址轉換和目的IP轉換先於安全策略匹配,以便與老版本兼容。
nat global-policy compatible-previous-version rule-type ipv4-snat-and-dnat translate-before-secp
缺省情況下,設備先進行全局NAT策略中NAT類型的SNAT+DNAT規則的目的IP轉換,然後使用轉換前的源地址和轉換後的目的地址匹配安全策略,最後進行全局NAT策略中NAT類型的SNAT+DNAT規則的源IP轉換。
開啟NAT定時統計功能後,NAT將按照一定的時間間隔對每個地址組中的會話數目和端口塊分配衝突計數進行統計。
使用本功能可能會占用較多的CPU資源,當CPU資源緊張時,可將其關閉。
(1) 進入係統視圖。
system-view
(2) 開啟NAT定時統計功能。
nat periodic-statistics enable
缺省情況下,NAT定時統計功能處於關閉狀態。
(3) 配置NAT定時統計功能的時間間隔。
nat periodic-statistics interval interval
缺省情況下,NAT定時統計功能的時間間隔為300秒。
如果將NAT定時統計功能的時間間隔調小,會占用較多的CPU資源。通常情況下,建議使用缺省值。
開啟此功能後,設備會對新建NAT會話的速率進行統計,統計信息可以通過display nat statistics命令查看。
(1) 進入係統視圖。
system-view
(2) 開啟新建NAT會話速率的統計功能。
nat session create-rate enable
缺省情況下,新建NAT會話速率的統計功能處於關閉狀態。
通過在地址組中引用NQA模板來實現檢測NAT地址組中地址可用性的目的。關於NQA的詳細介紹,請參見“網絡管理和監控配置指導”中的“NQA”。
檢測NAT地址組成員可用性的詳細過程如下:
(1) 引用NQA探測模板後,設備會周期性地向NQA模板中指定的目的地址依次發送探測報文,其中各探測報文的源IP地址是地址池中的IP地址。
(2) 若設備在當前探測周期內沒有收到NQA探測應答報文,則將該探測報文的源IP地址從地址池中排除,即在本探測周期內禁止該IP地址用於地址轉換。
(3) 下一個探測周期重複以上過程。被排除的IP地址也會重新進行可用性探測。
一個NAT地址組視圖下,可指定多個NQA探測模板。當指定多個NQA探測模板時,隻要有一個NQA探測模板探測成功,則表示該地址可用於地址轉換。
本功能僅對用於出方向地址轉換的地址成員的可用性進行檢測。不對通過exclude-ip命令配置的禁止用於地址轉換的IP地址的可用性進行檢測。
引用的NQA探測模板中,不能配置探測報文的源IP地址。
(1) 進入係統視圖。
system-view
(2) 進入NAT地址組視圖。
nat address-group group-id [ name group-name ]
(3) 指定NAT地址組中地址成員的檢測方法。
probe template-name
缺省情況下,未指定NAT地址組中地址成員的檢測方法。
指定的檢測方法可以不存在,但要使檢測功能生效,必須通過nqa template命令創建檢測方法所使用的NQA模板。
缺省情況下,NAT設備對ICMP報文的地址轉換失敗時,不會發送ICMP差錯報文,從而導致使用ICMP協議報文的應用無法感知此事件。開啟本功能後,NAT設備對ICMP報文地址轉換失敗時,會發送ICMP差錯報文,使用ICMP協議報文的應用根據收到的ICMP差錯報文發現和定位問題。
(1) 進入係統視圖。
system-view
(2) 開啟設備NAT對ICMP報文轉換失敗發送ICMP差錯報文功能。
nat icmp-error reply
缺省情況下,NAT設備對ICMP報文地址轉換失敗時,設備不發送ICMP差錯報文。
缺省情況下,當NAT配置發生變更時(例如添加、刪除、修改或移動NAT規則),對於已經建立的連接,配置變更可能會導致該連接上的流量匹配到了新的NAT規則,此時需要重新建立連接。
如果不希望NAT配置變更影響已經建立的連接,請配置nat configuration-for-new-connection enable命令。配置本命令後,NAT配置變更時,對於已經建立的連接上的流量,設備仍然使用配置變更前的地址轉換規則進行地址轉換。對於新建立的連接上的流量,根據NAT配置變更後的NAT規則優先級順序進行流量匹配,並使用匹配上的NAT規則進行地址轉換。
本特性的支持情況與設備型號有關,請以設備的實際情況為準。
F1000係列 |
型號 |
說明 |
F1000-X-G5係列 |
F1000-A-G5、F1000-C-G5、F1000-C-G5-LI、F1000-E-G5、F1000-H-G5、F1000-S-G5 |
支持 |
F1000-X-XI係列 |
F1000-D-XI、F1000-E-XI |
支持 |
F100係列 |
型號 |
說明 |
F100-X-G5係列 |
F100-A-G5、F100-C-G5、F100-E-G5、F100-M-G5、F100-S-G5 |
支持 |
F100-C-A係列 |
F100-C-A2、F100-C-A1 |
不支持 |
F100-X-XI係列 |
F100-C-XI、F100-S-XI |
支持 |
F100-A-XI |
不支持 |
使用nat configuration-for-new-connection enable命令時,需注意其潛在的局限性,特別是與NAT444、NO-PAT、EIM等配置共同使用時。該命令啟用後,現有連接產生的流量所對應的NAT會話不會因NAT配置更改而自動刪除。然而,NAT444、NO-PAT、EIM配置所生成的NAT表項依賴於會話的刪除機製來移除。這可能導致在NAT配置變更後,原有的NAT表項仍然殘留在係統中。這些殘留的NAT表項有可能引起一係列問題,包括配置變更後表項統計數據不準、新建連接流量無法按照最新配置進行轉換,甚至可能導致新建連接無法成功建立。因此,請謹慎使用nat configuration-for-new-connection enable命令。
(1) 進入係統視圖。
system-view
(2) 開啟地址轉換配置變更僅對新連接生效的功能。
nat configuration-for-new-connection enable
缺省情況下,地址轉換配置變更僅對新連接生效的功能處於關閉狀態。
NAT會話日誌是為了滿足網絡管理員安全審計的需要,對NAT會話(報文經過設備時,源或目的信息被NAT進行過轉換的連接)信息進行的記錄,包括IP地址及端口的轉換信息、用戶的訪問信息以及用戶的網絡流量信息。
有三種情況可以觸發設備生成NAT會話日誌:
· 新建NAT會話。
· 刪除NAT會話。新增高優先級的配置、刪除配置、報文匹配規則變更、NAT會話老化以及執行刪除NAT會話的命令時,都可能導致NAT會話被刪除。
· 存在NAT活躍流。NAT活躍流是指在一定時間內存在的NAT會話。當設置的生成活躍流日誌的時間間隔到達時,當前存在的NAT會話信息就被記錄並生成日誌。NAT活躍流日誌僅支持通過Flow日誌輸出方式發送到日誌主機,不支持以快速日誌輸出方式發送。關於通過Flow日誌輸出方式發送到日誌主機的相關介紹,請參見“網絡管理和監控配置指導”中的“Flow日誌”。
(1) 進入係統視圖。
system-view
(2) 開啟NAT日誌功能。
nat log enable [ acl { ipv4-acl-number | name ipv4-acl-name } ]
缺省情況下,NAT日誌功能處於關閉狀態。
(3) 開啟NAT相關日誌功能。請至少選擇其中一項進行配置。
¡ 開啟NAT新建會話的日誌功能。
nat log flow-begin
¡ 開啟NAT刪除會話的日誌功能。
nat log flow-end
¡ 開啟NAT活躍流的日誌功能,並設置生成活躍流日誌的時間間隔。
nat log flow-active time-value
缺省情況下,創建、刪除NAT會話或存在NAT活躍流時,均不生成NAT日誌。
NAT444用戶日誌是為了滿足互聯網用戶溯源的需要,在NAT444地址轉換中,對每個用戶的私網IP地址進行端口塊分配或回收時,都會輸出一條基於用戶的日誌,記錄私網IP地址和端口塊的映射關係。在進行用戶溯源時,隻需根據報文的公網IP地址和端口找到對應的端口塊分配日誌信息,即可確定私網IP地址。
有兩種情況可以觸發設備輸出NAT444用戶日誌:
· 端口塊分配:端口塊靜態映射方式下,在某私網IP地址的第一個新建連接通過端口塊進行地址轉換時輸出日誌;端口塊動態映射方式下,在為某私網IP地址分配端口塊或增量端口塊時輸出日誌。
· 端口塊回收:端口塊靜態映射方式下,在某私網IP地址的最後一個連接拆除時輸出日誌;端口塊動態映射方式下,在釋放端口塊資源(並刪除端口塊表項)時輸出日誌。
在配置NAT444用戶日誌功能前,必須先配置將用戶定製日誌發送到日誌主機的功能,否則無法產生NAT444用戶日誌。詳細配置請參見“網絡管理和監控配置指導”中的“信息中心”。
(1) 進入係統視圖。
system-view
(2) 開啟NAT日誌功能。
nat log enable [ acl { ipv4-acl-number | name ipv4-acl-name } ]
缺省情況下,NAT日誌功能處於關閉狀態。
ACL參數對NAT444用戶日誌功能無效。
(3) 開啟端口塊用戶日誌功能。請至少選擇其中一項進行配置。
¡ 開啟端口塊分配的NAT444用戶日誌功能。
nat log port-block-assign
¡ 開啟端口塊回收的NAT444用戶日誌功能。
nat log port-block-withdraw
缺省情況下,分配和回收端口塊時,均不輸出NAT444用戶日誌。
在NAT地址轉換中,如果可為用戶分配的NAT資源用盡,後續連接由於沒有可用的資源無法對其進行地址轉換,相應的報文將被丟棄。本命令用來在NAT資源用盡時輸出告警日誌。在NO-PAT動態映射中,NAT資源是指公網IP地址;在EIM模式的PAT動態映射中,NAT資源是指公網IP地址和端口;在NAT444地址轉換中,NAT資源是指公網IP、端口塊和端口塊中的端口。
NAT444端口塊動態映射方式中,當端口塊分配失敗時,係統會輸出日誌信息。
NAT444端口塊動態映射方式中,當端口塊中的端口資源都用盡但還是無法滿足用戶的地址轉換需求時,係統會輸出日誌信息。
隻有開啟NAT日誌功能(通過nat log enable命令)之後,NAT告警信息日誌功能才能生效。
在配置NAT告警信息日誌功能前,必須先配置將用戶定製日誌發送到日誌主機的功能,否則無法產生NAT告警信息日誌。詳細配置請參見“網絡管理和監控配置指導”中的“信息中心”。
(1) 進入係統視圖。
system-view
(2) 開啟NAT日誌功能。
nat log enable [ acl { ipv4-acl-number | name ipv4-acl-name } ]
缺省情況下,NAT日誌功能處於關閉狀態。
ACL參數對NAT告警信息日誌功能無效。
(3) 開啟NAT告警信息的日誌功能。
nat log alarm
缺省情況下,NAT告警信息日誌功能處於關閉狀態。
NAT資源用盡時,係統會輸出告警日誌。
(4) (可選)配置動態NAT444端口塊使用率的閾值。
nat log port-block usage threshold threshold-value
缺省情況下,動態NAT444的端口塊使用率的閾值為90%。
創建動態端口塊表項時,若端口塊的使用率大於閾值,係統會輸出告警日誌。
創建NO-PAT表項時,若NO-PAT方式下NAT地址組中地址成員的使用率超過設定的百分比時,係統將會輸出日誌信息。
隻有開啟NAT日誌功能(通過nat log enable命令)之後,NAT地址組中地址成員使用率的日誌信息功能才能生效。
(1) 進入係統視圖。
system-view
(2) 開啟NAT日誌功能。
nat log enable [ acl { ipv4-acl-number | name ipv4-acl-name } ]
缺省情況下,NAT日誌功能處於關閉狀態。
ACL參數對NO-PAT方式下NAT地址組中地址成員使用率的日誌信息功能無效。
(3) 開啟NO-PAT方式下NAT地址組中地址成員使用率的日誌信息功能,並設置NAT地址組中地址成員使用率的閾值。
nat log no-pat ip-usage [ threshold value ]
缺省情況下,NAT地址組中地址成員使用率的日誌信息功能處於關閉狀態。
本功能用於在NAT動態端口塊資源的使用率過高或資源恢複時,向網絡管理係統發送Trap消息進行告警。具體工作機製如下:
(1) 當NAT動態端口塊資源的使用率大於或等於本功能設置的閾值時,NAT會生成Trap告警信息。
(2) 當NAT動態端口塊資源的使用率回落到小於本功能設置的閾值時,NAT會生成Trap告警信息,提示用戶端口塊資源恢複。
生成的告警信息將被送到設備的SNMP模塊,通過設置SNMP中的告警信息的發送參數,來決定告警信息輸出的相關屬性。有關告警信息的詳細介紹,請參見“網絡管理和監控配置指導”中的“SNMP”。
(1) 進入係統視圖。
system-view
(2) 開啟NAT日誌功能。
nat trap port-block threshold threshold-value
缺省情況下,NAT動態端口塊資源使用率的告警閾值為95%。
NAT地址組下通過配置probe命令引用NQA模板來檢測NAT地址組中地址可用性時,會將不可用的IP地址從地址組中排除。排除不可用IP地址的過程中,如下兩種情況會觸發NAT發送Trap消息:
· 當不可用IP地址的排除率大於本功能設置的閾值導致剩餘IP地址不足時,NAT會生成Trap告警信息。
· 當不可用IP地址的排除率回落到低於本功能設置的閾值時,NAT會生成Trap告警信息,提示用戶可用IP地址資源充足。
生成的告警信息將被送到設備的SNMP模塊,通過設置SNMP中的告警信息的發送參數,來決定告警信息輸出的相關屬性。有關告警信息的詳細介紹,請參見“網絡管理和監控配置指導”中的“SNMP”。
(1) 進入係統視圖。
system-view
(2) 開啟NAT日誌功能。
nat trap nqa threshold upper-limit upperlimit-value lower-limit lowerlimit-value
缺省情況下,NAT地址組通過NQA探測排除不可用IP地址時,係統會在不可用IP地址的排除率高於90%或者低於85%的情況下發送Trap消息進行告警。
本功能用於在NO-PAT模式NAT地址資源的使用率過高或資源恢複時,向網絡管理係統發送Trap消息進行告警。具體工作機製如下:
(1) 當NO-PAT模式NAT地址資源的使用率大於或等於本功能設置的閾值時,NAT會生成Trap告警信息。
(2) 當NO-PAT模式NAT地址資源的使用率回落到小於本功能設置的閾值時,NAT會生成Trap告警信息,提示用戶NO-PAT模式NAT地址資源恢複。
生成的告警信息將被送到設備的SNMP模塊,通過設置SNMP中的告警信息的發送參數,來決定告警信息輸出的相關屬性。有關告警信息的詳細介紹,請參見“網絡管理和監控配置指導”中的“SNMP”。
(1) 進入係統視圖。
system-view
(2) 開啟NAT日誌功能。
nat trap no-pat ip-usage threshold threshold-value
缺省情況下,NO-PAT模式NAT地址資源使用率的告警閾值為95%。
在完成上述配置後,在任意視圖下執行display命令可以顯示NAT配置後的運行情況,通過查看顯示信息驗證配置的效果。
在用戶視圖下,執行reset命令可以清除NAT表項。
表2-1 全局NAT顯示和維護
操作 |
命令 |
顯示NAT ALG功能的開啟狀態 |
display nat alg |
顯示所有的NAT配置信息 |
display nat all |
顯示NAT地址組的配置信息 |
display nat address-group [ group-id ] |
顯示NAT DNS mapping的配置信息 |
display nat dns-map |
顯示NAT EIM表項信息 |
display nat eim [ slot slot-number ] |
顯示NAT日誌功能的配置信息 |
display nat log |
顯示NAT NO-PAT表項信息 |
display nat no-pat { ipv4 | ipv6 } [ slot slot-number ]
|
顯示NO-PAT方式下NAT地址組中地址成員的使用率 |
display nat no-pat ip-usage [ address-group { group-id | name group-name } ] [ slot slot-number ]
|
顯示NAT定時統計功能的計數信息 |
display nat periodic-statistics { address-group [ group-id | name group-name ] | ip global-ip } [ slot slot-number ]
|
顯示NAT會話 |
display nat session [ [ responder ] { source-ip source-ip-start [ source-ip-end ] | destination-ip destination-ip-start [ destination-ip-end ] | source-port source-port | destination-port destination-port | protocol { dccp | icmp | raw-ip | sctp | tcp | udp | udp-lite } | application application-name | state { dccp-closereq | dccp-closing | dccp-open | dccp-partopen | dccp-request | dccp-respond | dccp-timewait | icmp-reply | icmp-request | rawip-open | rawip-ready | sctp-closed | sctp-cookie-echoed | sctp-cookie-wait | sctp-established | sctp-shutdown-ack-sent | sctp-shutdown-recd | sctp-shutdown-sent | tcp-close | tcp-close-wait | tcp-est | tcp-fin-wait | tcp-last-ack | tcp-syn-recv | tcp-syn-sent | tcp-syn-sent2 | tcp-time-wait | udp-open | udp-ready | udplite-open | udplite-ready } | interface { interface-name | interface-type interface-number } } * [ vpn-instance vpn -instance-name ] ] [ slot slot-number ] [ verbose ]
|
顯示NAT統計信息 |
display nat statistics [ summary ] [ slot slot-number ]
|
顯示端口塊表項 |
display nat port-block dynamic [ address-group { group-id | name group-name } ] [ slot slot-number ]
|
顯示動態NAT444地址組中端口塊的使用率 |
display nat port-block-usage [ address-group group-id ] [ slot slot-number ]
|
顯示NAT地址組中地址成員的檢測信息 |
display nat probe address-group [ group-id ] |
清除NAT轉換計數信息 |
reset nat count statistics { all | dynamic | global-policy | server | static } |
清除NAT定時統計功能的計數信息 |
reset nat periodic-statistics [ slot slot-number ]
|
刪除NAT會話 |
reset nat session [ slot slot-number ]
|
內部網絡用戶10.110.10.8/24使用外網地址202.38.1.100訪問Internet中的地址為201.20.1.1/24的 Server。
圖2-3 內網用戶通過NAT地址訪問外網配置組網圖(靜態地址轉換)
(1) 配置接口IP地址
# 根據組網圖中規劃的信息,配置各接口的IP地址,具體配置步驟如下。
<Device> system-view
[Device] interface gigabitethernet 1/0/1
[Device-GigabitEthernet1/0/1] ip address 10.110.10.1 24
[Device-GigabitEthernet1/0/1] quit
請參考以上步驟配置其他接口的IP地址,具體配置步驟略。
(2) 將接口加入安全域
# 請根據組網圖中規劃的信息,將接口加入對應的安全域,具體配置步驟如下。
[Device] security-zone name trust
[Device-security-zone-Trust] import interface gigabitethernet 1/0/1
[Device-security-zone-Trust] quit
[Device] security-zone name untrust
[Device-security-zone-Untrust] import interface gigabitethernet 1/0/2
[Device-security-zone-Untrust] quit
(3) 配置靜態路由
本舉例僅以靜態路由方式配置路由信息。實際組網中,請根據具體情況選擇相應的路由配置方式。
# 請根據組網圖中規劃的信息,配置靜態路由,本舉例假設到達Server所在網絡的下一跳IP地址為202.38.1.2,實際使用中請以具體組網情況為準,具體配置步驟如下。
[Device] ip route-static 201.20.1.0 24 202.38.1.2
(4) 配置安全策略
# 配置名稱為trust-untrust的安全策略,保證Trust安全域內的Host可以訪問Untrust安全域中的Server,具體配置步驟如下。
[Device] security-policy ip
[Device-security-policy-ip] rule name trust-untrust
[Device-security-policy-ip-1-trust-untrust] source-zone trust
[Device-security-policy-ip-1-trust-untrust] destination-zone untrust
[Device-security-policy-ip-1-trust-untrust] source-ip-host 10.110.10.8
[Device-security-policy-ip-1-trust-untrust] destination-ip-host 201.20.1.1
[Device-security-policy-ip-1-trust-untrust] action pass
[Device-security-policy-ip-1-trust-untrust] quit
[Device-security-policy-ip] quit
(5) 配置NAT功能
# 配置內網IP地址10.110.10.8到外網地址202.38.1.100之間的一對一靜態地址轉換映射。
[Device] nat global-policy
[Device-nat-global-policy] rule name rule1
[Device-nat-global-policy-rule-rule1] source-ip host 10.110.10.8
[Device-nat-global-policy-rule-rule1] source-zone trust
[Device-nat-global-policy-rule-rule1] destination-zone untrust
[Device-nat-global-policy-rule-rule1] action snat static ip-address 202.38.1.100
# 以上配置完成後,內網主機可以訪問外網服務器。通過查看如下顯示信息,可以驗證以上配置成功。
[Device] display nat global-policy
NAT global-policy information:
Totally 1 NAT global-policy rules.
Rule name: rule1
Type : nat
SrcIP address : 10.110.10.8
Source-zone name : Trust
Destination-zone name : Untrust
SNAT action:
Ipv4 address: 202.38.1.100
NAT counting : 0
Config status: Active
# 通過以下顯示命令,可以看到Host訪問某外網服務器時生成NAT會話信息。
[Device] display nat session verbose
Slot 1:
Initiator:
Source IP/port: 10.110.10.8/54765
Destination IP/port: 201.20.1.1/23
DS-Lite tunnel peer: -
VPN instance/VLAN ID/Inline ID: -/-/-
Protocol: TCP(6)
Inbound interface: GigabitEthernet1/0/1
Source security zone: Trust
Responder:
Source IP/port: 201.20.1.1/23
Destination IP/port: 202.38.1.100/54765
DS-Lite tunnel peer: -
VPN instance/VLAN ID/Inline ID: -/-/-
Protocol: TCP(6)
Inbound interface: GigabitEthernet1/0/2
Source security zone: Untrust
State: TCP_ESTABLISHED
Application: TELNET
Rule ID: -/-/-
Rule name:
Start time: 2017-05-19 10:57:47 TTL: 1195s
Initiator->Responder: 8 packets 375 bytes
Responder->Initiator: 10 packets 851 bytes
Total sessions found: 1
· 某公司內網使用的IP地址為192.168.0.0/16。
· 該公司擁有202.38.1.2和202.38.1.3兩個外網IP地址。
· 需要實現,內部網絡中192.168.1.0/24網段的用戶可以訪問Internet,其它網段的用戶不能訪問Internet。使用的外網地址為202.38.1.2和202.38.1.3。
圖2-4 內網用戶通過NAT訪問外網配置組網圖(地址不重疊)
(1) 配置接口IP地址
# 根據組網圖中規劃的信息,配置各接口的IP地址,具體配置步驟如下。
<Device> system-view
[Device] interface gigabitethernet 1/0/1
[Device-GigabitEthernet1/0/1] ip address 192.168.1.1 16
[Device-GigabitEthernet1/0/1] quit
請參考以上步驟配置其他接口的IP地址,具體配置步驟略。
(2) 將接口加入安全域
# 請根據組網圖中規劃的信息,將接口加入對應的安全域,具體配置步驟如下。
[Device] security-zone name trust
[Device-security-zone-Trust] import interface gigabitethernet 1/0/1
[Device-security-zone-Trust] quit
[Device] security-zone name untrust
[Device-security-zone-Untrust] import interface gigabitethernet 1/0/2
[Device-security-zone-Untrust] quit
(3) 配置靜態路由
本舉例僅以靜態路由方式配置路由信息。實際組網中,請根據具體情況選擇相應的路由配置方式。
# 請根據組網圖中規劃的信息,配置靜態路由,本舉例假設到達Server所在網絡的下一跳IP地址為202.38.1.20,實際使用中請以具體組網情況為準,具體配置步驟如下。
[Device] ip route-static 200.1.1.0 24 202.38.1.20
(4) 配置安全策略
# 配置名稱為trust-untrust的安全策略,保證Trust安全域內的Host可以訪問Untrust安全域中的Server,具體配置步驟如下。
[Device] security-policy ip
[Device-security-policy-ip] rule name trust-untrust
[Device-security-policy-ip-1-trust-untrust] source-zone trust
[Device-security-policy-ip-1-trust-untrust] destination-zone untrust
[Device-security-policy-ip-1-trust-untrust] source-ip-subnet 192.168.1.0 24
[Device-security-policy-ip-1-trust-untrust] destination-ip-host 200.1.1.10
[Device-security-policy-ip-1-trust-untrust] action pass
[Device-security-policy-ip-1-trust-untrust] quit
[Device-security-policy-ip] quit
(5) 配置NAT功能
# 配置地址組0,包含兩個外網地址202.38.1.2和202.38.1.3。
[Device] nat address-group 0
[Device-address-group-0] address 202.38.1.2 202.38.1.3
[Device-address-group-0] quit
# 配置地址對象組obj1,僅允許對內部網絡中192.168.1.0/24網段的用戶報文進行地址轉換。
[Device] object-group ip address obj1
[Device-obj-grp-ip-obj1] network subnet 192.168.1.0 24
[Device-obj-grp-ip-obj1] quit
# 配置全局NAT規則,允許使用地址組0中的地址對匹配的對象組obj1的報文進行源地址轉換,並在轉換過程中使用端口信息。
[Device] nat global-policy
[Device-nat-global-policy] rule name rule1
[Device-nat-global-policy-rule-rule1] source-ip obj1
[Device-nat-global-policy-rule-rule1] action snat address-group 0
# 以上配置完成後,Host A能夠訪問WWW server,Host B和Host C無法訪問WWW server。通過查看如下顯示信息,可以驗證以上配置成功。
[Device] display nat all
NAT address group information:
Totally 1 NAT address groups.
Address group ID: 0
Port range: 1-65535
Address information:
Start address End address
202.38.1.2 202.38.1.3
Exclude address information:
Start address End address
--- ---
NAT global-policy information:
Totally 1 NAT global-policy rules.
Rule name: rule1
Type : nat
SrcIP object group : obj1
SNAT action:
Address group ID: 0
NO-PAT: N
Reversible: N
Port-preserved: N
NAT counting : 0
Config status: Active
NAT logging:
Log enable : Disabled
Flow-begin : Disabled
Flow-end : Disabled
Flow-active : Disabled
Port-block-assign : Disabled
Port-block-withdraw : Disabled
Alarm : Disabled
NO-PAT IP usage : Disabled
NAT mapping behavior:
Mapping mode : Address and Port-Dependent
ACL : ---
Config status: Active
NAT ALG:
DNS : Enabled
FTP : Enabled
H323 : Disabled
ICMP-ERROR : Enabled
ILS : Disabled
MGCP : Disabled
NBT : Disabled
PPTP : Enabled
RTSP : Enabled
RSH : Disabled
SCCP : Disabled
SIP : Disabled
SQLNET : Disabled
TFTP : Disabled
XDMCP : Disabled
Static NAT load balancing: Disabled
NAT link-switch recreate-session: Disabled
NAT configuration-for-new-connection: Disabled
NAT global-policy compatible-previous-version rule-type ipv4-snat-and-dnat translate-before-secp : Disabled
NAT gratuitous-arp: Enabled
# 通過以下顯示命令,可以看到Host A訪問WWW server時生成NAT會話信息。
[Device] display nat session verbose
Slot 1:
Initiator:
Source IP/port: 192.168.1.10/52082
Destination IP/port: 200.1.1.10/80
DS-Lite tunnel peer: -
VPN instance/VLAN ID/Inline ID: -/-/-
Protocol: TCP(6)
Inbound interface: GigabitEthernet1/0/1
Source security zone: Trust
Responder:
Source IP/port: 200.1.1.10/80
Destination IP/port: 202.38.1.2/1036
DS-Lite tunnel peer: -
VPN instance/VLAN ID/Inline ID: -/-/-
Protocol: TCP(6)
Inbound interface: GigabitEthernet1/0/2
Source security zone: Untrust
State: TCP_ESTABLISHED
Application: HTTP
Rule ID: -/-/-
Rule name:
Start time: 2017-05-19 16:16:59 TTL: 9995s
Initiator->Responder: 551 packets 32547 bytes
Responder->Initiator: 956 packets 1385514 bytes
Total sessions found: 1
某公司內部對外提供Web、FTP和SMTP服務,而且提供兩台Web服務器。公司內部網址為10.110.0.0/16。其中,內部FTP服務器地址為10.110.10.3/16,內部Web服務器1的IP地址為10.110.10.1/16,內部Web服務器2的IP地址為10.110.10.2/16,內部SMTP服務器IP地址為10.110.10.4/16。公司擁有202.38.1.1至202.38.1.3三個公網IP地址。需要實現如下功能:
· 外部的主機可以訪問內部的服務器。
· 選用202.38.1.1作為公司對外提供服務的IP地址,Web服務器2對外采用8080端口。
圖2-5 外網用戶通過外網地址訪問內網服務器配置組網圖
(1) 配置接口IP地址
# 根據組網圖中規劃的信息,配置各接口的IP地址,具體配置步驟如下。
<Device> system-view
[Device] interface gigabitethernet 1/0/1
[Device-GigabitEthernet1/0/1] ip address 10.110.10.10 16
[Device-GigabitEthernet1/0/1] quit
請參考以上步驟配置其他接口的IP地址,具體配置步驟略。
(2) 將接口加入安全域
# 請根據組網圖中規劃的信息,將接口加入對應的安全域,具體配置步驟如下。
[Device] security-zone name trust
[Device-security-zone-Trust] import interface gigabitethernet 1/0/1
[Device-security-zone-Trust] quit
[Device] security-zone name untrust
[Device-security-zone-Untrust] import interface gigabitethernet 1/0/2
[Device-security-zone-Untrust] quit
(3) 配置安全策略
# 配置名稱為untrust-trust的安全策略,保證Untrust安全域中的Host可以訪問Trust安全域中的Server,具體配置步驟如下。
[Device] security-policy ip
[Device-security-policy-ip] rule name untrust-trust
[Device-security-policy-ip-1-untrust-trust] source-zone untrust
[Device-security-policy-ip-1-untrust-trust] destination-zone trust
[Device-security-policy-ip-1-untrust-trust] destination-ip-host 10.110.10.1
[Device-security-policy-ip-1-untrust-trust] destination-ip-host 10.110.10.2
[Device-security-policy-ip-1-untrust-trust] destination-ip-host 10.110.10.3
[Device-security-policy-ip-1-untrust-trust] destination-ip-host 10.110.10.4
[Device-security-policy-ip-1-untrust-trust] action pass
[Device-security-policy-ip-1-untrust-trust] quit
[Device-security-policy-ip] quit
(4) 配置NAT功能
# 配置服務對象組,提供FTP、Web和SMTP服務。
[Device] object-group service service1
[Device-obj-grp-service-service1] service tcp destination eq 21
[Device-obj-grp-service-service1] quit
[Device] object-group service service2
[Device-obj-grp-service-service2] service tcp destination eq 80
[Device-obj-grp-service-service2] quit
[Device] object-group service service3
[Device-obj-grp-service-service3] service tcp destination eq 8080
[Device-obj-grp-service-service3] quit
[Device] object-group service service4
[Device-obj-grp-service-service4] service tcp destination eq 25
[Device-obj-grp-service-service4] quit
# 配置全局NAT規則,允許外網主機訪問內網服務器。
[Device] nat global-policy
[Device-nat-global-policy] rule name rule1
[Device-nat-global-policy-rule-rule1] destination-ip host 202.38.1.1
[Device-nat-global-policy-rule-rule1] source-zone untrust
[Device-nat-global-policy-rule-rule1] service service1
[Device-nat-global-policy-rule-rule1] action dnat ip-address 10.110.10.3 local-port 21
[Device-nat-global-policy-rule-rule1] quit
[Device-nat-global-policy] rule name rule2
[Device-nat-global-policy-rule-rule2] destination-ip host 202.38.1.1
[Device-nat-global-policy-rule-rule2] source-zone untrust
[Device-nat-global-policy-rule-rule2] service service2
[Device-nat-global-policy-rule-rule2] action dnat ip-address 10.110.10.1 local-port 80
[Device-nat-global-policy-rule-rule2] quit
[Device-nat-global-policy] rule name rule3
[Device-nat-global-policy-rule-rule3] destination-ip host 202.38.1.1
[Device-nat-global-policy-rule-rule3] source-zone untrust
[Device-nat-global-policy-rule-rule3] service service3
[Device-nat-global-policy-rule-rule3] action dnat ip-address 10.110.10.2 local-port 80
[Device-nat-global-policy-rule-rule3] quit
[Device-nat-global-policy] rule name rule4
[Device-nat-global-policy-rule-rule4] destination-ip host 202.38.1.1
[Device-nat-global-policy-rule-rule4] source-zone untrust
[Device-nat-global-policy-rule-rule4] service service4
[Device-nat-global-policy-rule-rule4] action dnat ip-address 10.110.10.4 local-port 25
[Device-nat-global-policy-rule-rule4] quit
[Device-nat-global-policy] quit
# 以上配置完成後,外網Host能夠通過NAT地址訪問各內網服務器。通過查看如下顯示信息,可以驗證以上配置成功。
[Device] display nat all
NAT global-policy information:
Totally 4 NAT global-policy rules.
Rule name: rule1
Type : nat
DestIP address : 202.38.1.1
Source-zone name : untrust
Service object group : service1
DNAT action:
IPv4 address: 10.110.10.3
Port: 21
NAT counting : 0
Config status: Active
Rule name: rule2
Type : nat
DestIP address : 202.38.1.1
Source-zone name : untrust
Destination-zone name : trust
Service object group : service2
DNAT action:
IPv4 address: 10.110.10.1
Port: 80
NAT counting : 0
Config status: Active
Rule name: rule3
Type : nat
DestIP address : 202.38.1.1
Source-zone name : untrust
Destination-zone name : trust
Service object group : service3
DNAT action:
IPv4 address: 10.110.10.2
Port: 80
NAT counting : 0
Config status: Active
Rule name: rule4
Type : nat
DestIP address : 202.38.1.1
Source-zone name : untrust
Destination-zone name : trust
Service object group : service4
DNAT action:
IPv4 address: 10.110.10.4
Port: 25
NAT counting : 0
Config status: Active
NAT logging:
Log enable : Disabled
Flow-begin : Disabled
Flow-end : Disabled
Flow-active : Disabled
Port-block-assign : Disabled
Port-block-withdraw : Disabled
Alarm : Disabled
NO-PAT IP usage : Disabled
NAT mapping behavior:
Mapping mode : Address and Port-Dependent
ACL : ---
Config status: Active
NAT ALG:
DNS : Enabled
FTP : Enabled
H323 : Disabled
ICMP-ERROR : Enabled
ILS : Disabled
MGCP : Disabled
NBT : Disabled
PPTP : Enabled
RTSP : Enabled
RSH : Disabled
SCCP : Disabled
SIP : Disabled
SQLNET : Disabled
TFTP : Disabled
XDMCP : Disabled
Static NAT load balancing: Disabled
NAT link-switch recreate-session: Disabled
NAT configuration-for-new-connection: Disabled
NAT global-policy compatible-previous-version rule-type ipv4-snat-and-dnat translate-before-secp : Disabled
NAT gratuitous-arp: Enabled
# 通過以下顯示命令,可以看到Host訪問FTP server時生成NAT會話信息。
[Device] display nat session verbose
Slot 1:
Initiator:
Source IP/port: 202.38.1.2/52802
Destination IP/port: 202.38.1.1/21
DS-Lite tunnel peer: -
VPN instance/VLAN ID/Inline ID: -/-/-
Protocol: TCP(6)
Inbound interface: GigabitEthernet1/0/2
Source security zone: Untrust
Responder:
Source IP/port: 10.110.10.3/21
Destination IP/port: 202.38.1.2/52802
DS-Lite tunnel peer: -
VPN instance/VLAN ID/Inline ID: -/-/-
Protocol: TCP(6)
Inbound interface: GigabitEthernet1/0/1
Source security zone: Trust
State: TCP_ESTABLISHED
Application: FTP
Rule ID: -/-/-
Rule name:
Start time: 2017-05-21 11:13:39 TTL: 3597s
Initiator->Responder: 7 packets 313 bytes
Responder->Initiator: 6 packets 330 bytes
Total sessions found: 1
· 某公司內部對外提供Web服務,Web服務器地址為10.110.10.2/24。
· 該公司在內網有一台DNS服務器,IP地址為10.110.10.3/24,用於解析Web服務器的域名。
· 該公司擁有兩個外網IP地址:202.38.1.2和202.38.1.3。
需要實現,外網主機可以通過域名訪問內網的Web服務器。
圖2-6 外網用戶通過域名訪問內網服務器配置組網圖(地址不重疊)
· 外網主機通過域名訪問Web服務器,首先需要通過訪問內網DNS服務器獲取Web服務器的IP地址,因此需要通過配置NAT內部服務器將DNS服務器的內網IP地址和DNS服務端口映射為一個外網地址和端口。
· DNS服務器回應給外網主機的DNS報文載荷中攜帶了Web服務器的內網IP地址,因此需要將DNS報文載荷中的內網IP地址轉換為一個外網IP地址。外網地址分配可以通過出方向動態地址轉換功能實現,轉換載荷信息可以通過DNS ALG功能實現。
(1) 配置接口IP地址
# 根據組網圖中規劃的信息,配置各接口的IP地址,具體配置步驟如下。
<Device> system-view
[Device] interface gigabitethernet 1/0/1
[Device-GigabitEthernet1/0/1] ip address 10.110.10.1 24
[Device-GigabitEthernet1/0/1] quit
請參考以上步驟配置其他接口的IP地址,具體配置步驟略。
(2) 將接口加入安全域
# 請根據組網圖中規劃的信息,將接口加入對應的安全域,具體配置步驟如下。
[Device] security-zone name trust
[Device-security-zone-Trust] import interface gigabitethernet 1/0/1
[Device-security-zone-Trust] quit
[Device] security-zone name untrust
[Device-security-zone-Untrust] import interface gigabitethernet 1/0/2
[Device-security-zone-Untrust] quit
(3) 配置安全策略
# 配置名稱為untrust-trust的安全策略,保證Untrust安全域內的Host可以訪問Trust安全域中的Server,具體配置步驟如下。
[Device] security-policy ip
[Device-security-policy-ip] rule name untrust-trust
[Device-security-policy-ip-1-untrust-trust] source-zone untrust
[Device-security-policy-ip-1-untrust-trust] destination-zone trust
[Device-security-policy-ip-1-untrust-trust] destination-ip-host 10.110.10.2
[Device-security-policy-ip-1-untrust-trust] destination-ip-host 10.110.10.3
[Device-security-policy-ip-1-untrust-trust] destination-ip-host 10.110.10.4
[Device-security-policy-ip-1-untrust-trust] action pass
[Device-security-policy-ip-1-untrust-trust] quit
[Device-security-policy-ip] quit
(4) 配置NAT功能
# 開啟DNS的NAT ALG功能。
[Device] nat alg dns
# 創建地址組。
[Device] nat address-group 1
[Device-address-group-1] address 202.38.1.3 202.38.1.3
[Device-address-group-1] quit
# 配置服務對象組service1,提供DNS服務。
[Device] object-group service service1
[Device-obj-grp-service-service1] service tcp destination eq 53
[Device-obj-grp-service-service1] service udp destination eq 53
[Device-obj-grp-service-service1] quit
# 配置全局NAT規則,允許外網主機使用地址202.38.1.2訪問內網DNS服務器。
[Device] nat global-policy
[Device-nat-global-policy] rule name rule1
[Device-nat-global-policy-rule-rule1] source-zone untrust
[Device-nat-global-policy-rule-rule1] destination-ip host 202.38.1.2
[Device-nat-global-policy-rule-rule1] service service1
[Device-nat-global-policy-rule-rule1] action dnat ip-address 10.110.10.3 local-port 53
[Device-nat-global-policy-rule-rule1] quit
# 配置全局NAT規則,允許使用地址組1中的地址對DNS應答報文載荷中的內網地址進行轉換,並在轉換過程中不使用端口信息,以及允許反向地址轉換。
[Device-nat-global-policy] rule name rule2
[Device-nat-global-policy-rule-rule2] source-ip host 10.110.10.2
[Device-nat-global-policy-rule-rule2] source-zone trust
[Device-nat-global-policy-rule-rule2] destination-zone untrust
[Device-nat-global-policy-rule-rule2] action snat address-group 1 no-pat reversible
[Device-nat-global-policy-rule-rule2] quit
[Device-nat-global-policy] quit
# 以上配置完成後,外網Host能夠通過域名訪問內網Web server。通過查看如下顯示信息,可以驗證以上配置成功。
[Device] display nat all
NAT address group information:
Totally 1 NAT address groups.
Address group ID: 1
Port range: 1-65535
Address information:
Start address End address
202.38.1.3 202.38.1.3
NAT global-policy information:
Totally 2 NAT global-policy rules.
Rule name: rule1
Type : nat
DestIP address : 202.38.1.2
Source-zone name : untrust
Service object group : service1
DNAT action:
IPv4 address: 10.110.10.3
Port: 53
NAT counting : 0
Config status: Active
Rule name: rule2
Type : nat
SrcIP address : 10.110.10.2
Source-zone name : trust
Destination-zone name : untrust
SNAT action:
Address group ID: 1
NO-PAT: Y
Reversible: Y
Port-preserved: N
NAT counting : 0
Config status: Active
NAT logging:
Log enable : Disabled
Flow-begin : Disabled
Flow-end : Disabled
Flow-active : Disabled
Port-block-assign : Disabled
Port-block-withdraw : Disabled
Alarm : Disabled
NO-PAT IP usage : Disabled
NAT mapping behavior:
Mapping mode : Address and Port-Dependent
ACL : ---
Config status: Active
NAT ALG:
DNS : Enabled
FTP : Enabled
H323 : Disabled
ICMP-ERROR : Enabled
ILS : Disabled
MGCP : Disabled
NBT : Disabled
PPTP : Enabled
RTSP : Enabled
RSH : Disabled
SCCP : Disabled
SIP : Disabled
SQLNET : Disabled
TFTP : Disabled
XDMCP : Disabled
Static NAT load balancing: Disabled
NAT link-switch recreate-session: Disabled
NAT configuration-for-new-connection: Disabled
NAT global-policy compatible-previous-version rule-type ipv4-snat-and-dnat translate-before-secp : Disabled
NAT gratuitous-arp: Enabled
# 通過以下顯示命令,可以看到Host訪問Web server時生成NAT會話信息。
[Device] display nat session verbose
Slot 1:
Initiator:
Source IP/port: 200.1.1.2/1694
Destination IP/port: 202.38.1.3/8080
DS-Lite tunnel peer: -
VPN instance/VLAN ID/Inline ID: -/-/-
Protocol: TCP(6)
Inbound interface: GigabitEthernet1/0/2
Source security zone: Untrust
Responder:
Source IP/port: 10.110.10.2/8080
Destination IP/port: 200.1.1.2/1694
DS-Lite tunnel peer: -
VPN instance/VLAN ID/Inline ID: -/-/-
Protocol: TCP(6)
Inbound interface: GigabitEthernet1/0/1
Source security zone: Trust
State: TCP_ESTABLISHED
Application: HTTP
Rule ID: -/-/-
Rule name:
Start time: 2017-06-15 14:53:29 TTL: 3597s
Initiator->Responder: 7 packets 308 bytes
Responder->Initiator: 5 packets 312 bytes
Total sessions found: 1
某P2P應用環境中,內網中的客戶端首先需要向外網服務器進行注冊,外網服務器會記錄客戶端的IP地址和端口號。如果內網的一個客戶端要訪問內網的另一個客戶端,首先需要向服務器獲取對方的IP地址和端口號。
需要實現如下功能:
· 內網客戶端可以向外網中的服務器注冊,且注冊為一個相同的外網地址。
· 內網客戶端能夠通過從服務器獲得的IP地址和端口進行互訪。
圖2-7 內網用戶通過NAT地址互訪配置組網圖
該需求為典型的P2P模式的NAT hairpin應用,具體配置思路如下。
· 內網中的客戶端需要向外網中的服務器注冊,因此需要進行源地址轉換,可以配置出方向動態地址轉換實現。
· 服務器記錄客戶端的IP地址和端口號,且該地址和端口號是NAT轉換後的。由於服務器記錄的客戶端IP地址和端口號需要供任意源地址訪問,因此客戶端地址的轉換關係必須不關心對端地址,這可以通過配置EIM模式的動態地址轉換實現。
(1) 配置接口IP地址
# 根據組網圖中規劃的信息,配置各接口的IP地址,具體配置步驟如下。
<Device> system-view
[Device] interface gigabitethernet 1/0/1
[Device-GigabitEthernet1/0/1] ip address 192.168.1.1 24
[Device-GigabitEthernet1/0/1] quit
請參考以上步驟配置其他接口的IP地址,具體配置步驟略。
(2) 將接口加入安全域
# 請根據組網圖中規劃的信息,將接口加入對應的安全域,具體配置步驟如下。
[Device] security-zone name trust
[Device-security-zone-Trust] import interface gigabitethernet 1/0/1
[Device-security-zone-Trust] quit
[Device] security-zone name untrust
[Device-security-zone-Untrust] import interface gigabitethernet 1/0/2
[Device-security-zone-Untrust] quit
(3) 配置靜態路由
本舉例僅以靜態路由方式配置路由信息。實際組網中,請根據具體情況選擇相應的路由配置方式。
# 請根據組網圖中規劃的信息,配置靜態路由,本舉例假設到達Server所在網絡的下一跳IP地址為202.38.1.1,實際使用中請以具體組網情況為準,具體配置步驟如下。
[Device] ip route-static 200.2.2.0 24 202.38.1.1
(4) 配置安全策略
# 配置名稱為trust-untrust的安全策略,保證Trust安全域內的Host可以訪問Untrust安全域內的Server,具體配置步驟如下。
[Device] security-policy ip
[Device-security-policy-ip] rule name trust-untrust
[Device-security-policy-ip-1-trust-untrust] source-zone trust
[Device-security-policy-ip-1-trust-untrust] destination-zone untrust
[Device-security-policy-ip-1-trust-untrust] source-ip-subnet 192.168.1.0 24
[Device-security-policy-ip-1-trust-untrust] destination-ip-host 200.2.2.2
[Device-security-policy-ip-1-trust-untrust] action pass
[Device-security-policy-ip-1-trust-untrust] quit
# 配置名稱為trust-trust的安全策略,保證Trust安全域內的Host可以互訪,具體配置步驟如下。
[Device-security-policy-ip] rule name trust-trust
[Device-security-policy-ip-2-trust-trust] source-zone trust
[Device-security-policy-ip-2-trust-trust] destination-zone trust
[Device-security-policy-ip-2-trust-trust] source-ip-host 202.38.1.3
[Device-security-policy-ip-2-trust-trust] destination-ip-subnet 192.168.1.0 24
[Device-security-policy-ip-2-trust-trust] action pass
[Device-security-policy-ip-2-trust-trust] quit
[Device-security-policy-ip] quit
(5) 配置NAT功能
# 配置地址對象組obj1,僅允許對192.168.1.0/24網段的用戶報文進行地址轉換。
[Device] object-group ip address obj1
[Device-obj-grp-ip-obj1] network subnet 192.168.1.0 24
[Device-obj-grp-ip-obj1] quit
# 配置全局NAT規則,通過Easy IP方式對內網訪問外網的報文進行源地址轉換,因為多個內部主機共用一個外網地址,因此需要配置為PAT方式,即轉換過程中使用端口信息。
[Device] nat global-policy
[Device-nat-global-policy] rule name rule1
[Device-nat-global-policy-rule-rule1] source-zone trust
[Device-nat-global-policy-rule-rule1] destination-zone untrust
[Device-nat-global-policy-rule-rule1] source-ip obj1
[Device-nat-global-policy-rule-rule1] action snat easy-ip
[Device-nat-global-policy-rule-rule1] quit
[Device-nat-global-policy] quit
# 配置ACL 2000,允許對內部網絡中192.168.1.0/24網段的報文進行地址轉換。
[Device] acl basic 2000
[Device-acl-ipv4-basic-2000] rule permit source 192.168.1.0 0.0.0.255
[Device-acl-ipv4-basic-2000] quit
# 配置PAT方式下的地址轉換模式為EIM,即隻要是來自相同源地址和源端口號的且匹配ACL 2000的報文,不論其目的地址是否相同,通過PAT轉換後,其源地址和源端口號都被轉換為同一個外部地址和端口號。
[Device] nat mapping-behavior endpoint-independent acl 2000
# 以上配置完成後,Host A、Host B和Host C 分別向外網服務器注冊之後,它們之間可以相互訪問。通過查看如下顯示信息,可以驗證以上配置成功。
[Device] display nat all
NAT global-policy information:
Totally 2 NAT global-policy rules.
Rule name: rule1
Type : nat
SrcIP object group : obj1
Source-zone name : trust
Destination-zone name : untrust
SNAT action:
Easy-IP
Reversible: N
Port-preserved: N
NAT counting : 0
Config status: Active
NAT logging:
Log enable : Disabled
Flow-begin : Disabled
Flow-end : Disabled
Flow-active : Disabled
Port-block-assign : Disabled
Port-block-withdraw : Disabled
Alarm : Disabled
NO-PAT IP usage : Disabled
NAT mapping behavior:
Mapping mode : Endpoint-Independent
ACL : 2000
Config status: Active
NAT ALG:
DNS : Enabled
FTP : Enabled
H323 : Disabled
ICMP-ERROR : Enabled
ILS : Disabled
MGCP : Disabled
NBT : Disabled
PPTP : Enabled
RTSP : Enabled
RSH : Disabled
SCCP : Disabled
SIP : Disabled
SQLNET : Disabled
TFTP : Disabled
XDMCP : Disabled
Static NAT load balancing: Disabled
NAT link-switch recreate-session: Disabled
NAT configuration-for-new-connection: Disabled
NAT global-policy compatible-previous-version rule-type ipv4-snat-and-dnat translate-before-secp : Disabled
NAT gratuitous-arp: Enabled
# 通過以下顯示命令,可以看到Client A訪問Client B時生成NAT會話信息。
[Device] display nat session verbose
Slot 1:
Initiator:
Source IP/port: 192.168.1.3/44929
Destination IP/port: 202.38.1.3/1
DS-Lite tunnel peer: -
VPN instance/VLAN ID/Inline ID: -/-/-
Protocol: UDP(17)
Inbound interface: GigabitEthernet1/0/1
Source security zone: Trust
Responder:
Source IP/port: 192.168.1.2/69
Destination IP/port: 202.38.1.3/1024
DS-Lite tunnel peer: -
VPN instance/VLAN ID/Inline ID: -/-/-
Protocol: UDP(17)
Inbound interface: GigabitEthernet1/0/1
Source security zone: Trust
State: UDP_READY
Application: TFTP
Rule ID: -/-/-
Rule name:
Start time: 2012-08-15 15:53:36 TTL: 46s
Initiator->Responder: 1 packets 56 bytes
Responder->Initiator: 1 packets 72 bytes
Total sessions found: 1
· 某公司內網使用的IP地址為192.168.0.0/16。
· 該公司擁有202.38.1.2和202.38.1.3兩個外網IP地址。
需要實現,內部網絡中的192.168.1.0/24網段的用戶可以訪問Internet中地址為200.2.2.1的Server,其它網段的用戶不能訪問Internet。基於NAT444端口塊動態映射方式複用兩個外網地址202.38.1.2和202.38.1.3,外網地址的端口範圍為1024~65535,端口塊大小為300。當為某用戶分配的端口塊資源耗盡時,再為其增量分配1個端口塊。
圖2-8 NAT444端口塊動態映射配置組網圖
(1) 配置接口IP地址
# 根據組網圖中規劃的信息,配置各接口的IP地址,具體配置步驟如下。
<Device> system-view
[Device] interface gigabitethernet 1/0/1
[Device-GigabitEthernet1/0/1] ip address 192.168.1.1 16
[Device-GigabitEthernet1/0/1] quit
請參考以上步驟配置其他接口的IP地址,具體配置步驟略。
(2) 將接口加入安全域
# 請根據組網圖中規劃的信息,將接口加入對應的安全域,具體配置步驟如下。
[Device] security-zone name trust
[Device-security-zone-Trust] import interface gigabitethernet 1/0/1
[Device-security-zone-Trust] quit
[Device] security-zone name untrust
[Device-security-zone-Untrust] import interface gigabitethernet 1/0/2
[Device-security-zone-Untrust] quit
(3) 配置靜態路由
本舉例僅以靜態路由方式配置路由信息。實際組網中,請根據具體情況選擇相應的路由配置方式。
# 請根據組網圖中規劃的信息,配置靜態路由,本舉例假設到達Server所在網絡的下一跳IP地址為202.38.1.20,實際使用中請以具體組網情況為準,具體配置步驟如下。
[Device] ip route-static 200.2.2.1 32 202.38.1.20
(4) 配置安全策略
# 配置名稱為trust-untrust的安全策略,保證Trust安全域內的Host可以訪問Untrust安全域中的Server,具體配置步驟如下。
[Device] security-policy ip
[Device-security-policy-ip] rule name trust-untrust
[Device-security-policy-ip-1-trust-untrust] source-zone trust
[Device-security-policy-ip-1-trust-untrust] destination-zone untrust
[Device-security-policy-ip-1-trust-untrust] source-ip-subnet 192.168.1.0 24
[Device-security-policy-ip-1-trust-untrust] destination-ip-host 200.2.2.1
[Device-security-policy-ip-1-trust-untrust] action pass
[Device-security-policy-ip-1-trust-untrust] quit
[Device-security-policy-ip] quit
(5) 配置NAT功能
# 配置地址組0,包含兩個外網地址202.38.1.2和202.38.1.3,外網地址的端口範圍為1024~65535,端口塊大小為300,增量端口塊數為1。
[Device] nat address-group 0
[Device-address-group-0] address 202.38.1.2 202.38.1.3
[Device-address-group-0] port-range 1024 65535
[Device-address-group-0] port-block block-size 300 extended-block-number 1
[Device-address-group-0] quit
# 配置地址對象組obj1,僅允許對內部網絡中192.168.1.0/24網段的用戶報文進行地址轉換。
[Device] object-group ip address obj1
[Device-obj-grp-ip-obj1] network subnet 192.168.1.0 24
[Device-obj-grp-ip-obj1] quit
# 配置全局NAT規則,允許使用地址組0中的地址對匹配的對象組obj1的報文進行源地址轉換,並在轉換過程中使用端口信息。
[Device] nat global-policy
[Device-nat-global-policy] rule name rule1
[Device-nat-global-policy-rule-rule1] source-ip obj1
[Device-nat-global-policy-rule-rule1] action snat address-group 0
# 以上配置完成後,Host A能夠訪問外網服務器,Host B和Host C無法訪問外網服務器。通過查看如下顯示信息,可以驗證以上配置成功。
[Device] display nat all
NAT address group information:
Totally 1 NAT address groups.
Address group ID: 0
Port range: 1024-65535
Port block size: 300
Extended block number: 1
Blade-load-sharing-group: Blade4fw-m90001
Address information:
Start address End address
202.38.1.2 202.38.1.3
Exclude address information:
Start address End address
NAT global-policy information:
Totally 1 NAT global-policy rules.
Rule name: rule1
SrcIP object group : obj1
SNAT action:
Address group ID: 0
NO-PAT: N
Reversible: N
Port-preserved: N
NAT counting : 0
Config status: Active
NAT logging:
Log enable : Disabled
Flow-begin : Disabled
Flow-end : Disabled
Flow-active : Disabled
Port-block-assign : Disabled
Port-block-withdraw : Disabled
Alarm : Disabled
NO-PAT IP usage : Disabled
NAT mapping behavior:
Mapping mode : Address and Port-Dependent
ACL : ---
Config status: Active
NAT ALG:
DNS : Enabled
FTP : Enabled
H323 : Disabled
ICMP-ERROR : Enabled
ILS : Disabled
MGCP : Disabled
NBT : Disabled
PPTP : Enabled
RTSP : Enabled
RSH : Disabled
SCCP : Disabled
SIP : Disabled
SQLNET : Disabled
TFTP : Disabled
XDMCP : Disabled
Static NAT load balancing: Disabled
NAT link-switch recreate-session: Disabled
NAT configuration-for-new-connection: Disabled
NAT global-policy compatible-previous-version rule-type ipv4-snat-and-dnat translate-before-secp : Disabled
NAT gratuitous-arp: Enabled
# 通過以下顯示命令,可以看到NAT會話數、當前可分配的動態端口塊總數和已分配的動態端口塊個數。
[Device] display nat statistics
Slot 1:
Total session entries: 1
Session creation rate: 0
Total EIM entries: 0
Total inbound NO-PAT entries: 0
Total outbound NO-PAT entries: 0
Total static port block entries: 0
Total dynamic port block entries: 430
Active static port block entries: 0
Active dynamic port block entries: 1
# 通過以下顯示命令,可以看到生成的動態端口塊表項信息。
[Device] display nat port-block dynamic
Slot 1:
Local VPN Local IP Global IP Port block Connections BackUp
--- 192.168.1.10 202.38.1.2 45724-46023 1 N
Total mappings found: 1
接口NAT通用配置限製和指導如下:
· 如果NAT規則中使用了ACL進行報文過濾,則NAT隻對匹配指定的ACL permit規則的報文才進行地址轉換,匹配時僅關注ACL規則中定義的源IP地址、源端口號、目的IP地址、目的端口號、傳輸層協議類型和VPN實例,不關注ACL規則中定義的其它元素。
· 在雙上行鏈路組網環境中,一個出接口配置了地址轉換,另一個出接口沒有配置地址轉換,這種情況下,建議用戶不要將兩個出接口添加到同一個安全域,否則可能導致流量中斷。關於“安全域”的相關介紹,請參見“安全配置指導”中的“安全域”。
· 若接口上同時存在普通NAT靜態地址轉換、普通NAT動態地址轉換、內部服務器、NAT444端口塊靜態映射、NAT444端口塊動態映射和DS-Lite B4地址轉換的配置,則在地址轉換過程中,它們的優先級從高到低依次為:
a. 內部服務器。
b. 普通NAT靜態地址轉換。
c. NAT444端口塊靜態映射。
d. NAT444端口塊動態映射、普通NAT動態地址轉換和DS-Lite B4地址轉換。對於NAT444端口塊動態映射和普通NAT動態地址轉換,係統在處理IPv4報文時對二者不做區分,統一按照ACL編號由大到小的順序匹配。DS-Lite B4地址轉換處理的是IPv6報文。
配置BRAS聯動功能時,需要注意:
· 目前,支持BRAS聯動功能的用戶地址類型包括私網IP地址(private-ipv4)、私網雙棧地址(private-ds)和輕量級雙棧地址(ds-lite)。
· 用戶上線後,若NAT444配置發生變更,則在線用戶使用的公網IP和端口塊也會隨之變化,而上報給RADIUS服務器的公網IP和端口塊並不能保持同步變化,會導致在線用戶溯源不準確。因此,建議在NAT444配置發生變更之後,立即手動強製所有使用該NAT配置的用戶下線。當用戶再次上線之後,將會使用配置變更後的公網IP和端口。
(1) 配置接口上的地址轉換方式
NAT策略可以控製多個接口的地址轉換,靈活指定報文的過濾條件。
(2) (可選)配置NAT hairpin功能
(3) (可選)配置NAT ALG
(4) (可選)配置NAT DNS mapping功能
(5) (可選)配置NAT發送免費ARP報文功能
(6) (可選)提高NAT業務的可靠性
(7) (可選)配置NAT維護功能
(8) (可選)配置NAT日誌和告警功能
¡ 開啟NO-PAT方式下NAT地址組中地址成員使用率的日誌信息功能
(9) (可選)特定條件下的NAT配置
¡ 開啟對TCP SYN和SYN ACK報文中時間戳的刪除功能
入方向的靜態地址轉換建議與接口上的出方向動態地址轉換(nat outbound)、內部服務器(nat server)或出方向靜態地址轉換(nat static outbound)配合使用,以實現“源IP地址轉換+目的IP地址轉換”。
· 配置控製地址轉換範圍的ACL。ACL配置的相關介紹請參見“ACL和QoS配置指導”中的“ACL”。
· 對於入方向靜態地址轉換,需要手動添加路由:目的地址為靜態地址轉換配置中指定的local-ip或local-network;下一跳為靜態地址轉換配置中指定的外網地址,或者報文出接口的實際下一跳地址。
出方向一對一靜態地址轉換通常應用在外網側接口上,用於實現一個內部私有網絡地址到一個外部公有網絡地址的轉換,具體過程如下:
· 對於經過該接口發送的內網訪問外網的報文,將其源IP地址與指定的內網IP地址local-ip進行匹配,並將匹配的源IP地址轉換為global-ip。
· 對於該接口接收到的外網訪問內網的報文,將其目的IP地址與指定的外網IP地址global-ip進行匹配,並將匹配的目的IP地址轉換為local-ip。
多個出方向一對一靜態地址轉換引用不同的ACL規則時,可以將同一個私網地址轉換為不同的公網地址。
出方向一對一靜態地址轉換的配置中不引用ACL規則時,該靜態地址轉換允許反方向發起的連接進行地址轉換。否則,必須指定reversible參數才允許反向地址轉換。
調整出方向一對一靜態NAT規則的匹配優先級時,被移動的規則必須滿足如下所有條件:
· 被移動的NAT規則均指定了規則名稱。
· 被移動的NAT規則的global-ip相同或local-ip相同。符合此條件的兩條NAT規則中,至少有一條NAT規則引用了ACL。
(1) 進入係統視圖。
system-view
(2) 配置出方向一對一靜態地址轉換映射。
nat static outbound local-ip [ vpn-instance local-vpn-instance-name ] global-ip [ vpn-instance global-vpn-instance-name ] [ acl { ipv4-acl-number | name ipv4-acl-name } [ reversible ] ] [ vrrp virtual-router-id ] [ rule rule-name ] [ priority priority ] [ disable ] [ counting ] [ description text ]
(3) (可選)調整出方向一對一靜態NAT規則的匹配優先級。
nat static outbound rule move nat-rule-name1 { after | before } nat-rule-name2
缺省情況下,出方向一對一靜態NAT規則的位置決定了匹配的優先級,位置越靠前的NAT規則,其匹配優先級越高。
(4) 進入接口視圖。
interface interface-type interface-number
(5) 開啟接口上的NAT靜態地址轉換功能。
nat static enable
缺省情況下,NAT靜態地址轉換功能處於關閉狀態。
出方向網段對網段靜態地址轉換通常應用在外網側接口上,用於實現一個內部私有網絡到一個外部公有網絡的地址轉換,具體過程如下:
· 對於經過該接口發送的內網訪問外網的報文,將其源IP地址與指定的內網網絡地址進行匹配,並將匹配的源IP地址轉換為指定外網網絡地址之一。
· 對於該接口接收到的外網訪問內網的報文,將其目的IP地址與指定的外網網絡地址進行匹配,並將匹配的目的IP地址轉換為指定的內網網絡地址之一。
調整出方向網段到網段靜態NAT規則的匹配優先級時,被移動的規則必須滿足如下所有條件:
· 要移動的NAT規則均指定了規則名稱。
· 要移動的NAT規則的外網網段相同或內網網段相同。符合此條件的兩條NAT規則中,至少有一條NAT規則引用了ACL。
(1) 進入係統視圖。
system-view
(2) 配置出方向網段對網段靜態地址轉換映射。
nat static outbound net-to-net local-start-address local-end-address [ vpn-instance local-vpn-instance-name ] global global-network { mask-length | mask } [ vpn-instance global-vpn-instance-name ] [ acl { ipv4-acl-number | name ipv4-acl-name } [ reversible ] ] [ vrrp virtual-router-id ] [ rule rule-name ] [ priority priority ] [ disable ] [ counting ]
(3) (可選)調整出方向網段對網段靜態NAT規則的匹配優先級。
nat static outbound net-to-net rule move nat-rule-name1 { after | before } nat-rule-name2
缺省情況下,出方向網段對網段靜態NAT規則的位置決定了匹配的優先級,位置越靠前的NAT規則,其匹配優先級越高。
(4) 進入接口視圖。
interface interface-type interface-number
(5) 開啟接口上的NAT靜態地址轉換功能。
nat static enable
缺省情況下,NAT靜態地址轉換功能處於關閉狀態。
基於對象組的出方向靜態地址轉換通常應用在外網側接口上,用於實現一個內部私有網絡地址到一個外部公有網絡地址的轉換,具體過程如下:
· 對於經過該接口發送的內網訪問外網的報文,將其源IP地址與指定的內網IPv4地址對象組進行匹配,並將匹配的源IP地址轉換為外網IPv4地址對象組中的地址。
· 對於該接口接收到的外網訪問內網的報文,將其目的IP地址與指定的外網IPv4地址對象組進行匹配,並將匹配的目的IP地址轉換為內網IPv4地址對象組中的地址。
如果接口上配置的靜態地址轉換映射中指定了acl參數,則僅對符合指定ACL permit規則的報文進行地址轉換。
基於地址對象組的出方向靜態地址轉換引用的IPv4地址對象組滿足如下條件時,配置才能生效:
· 引用的地址對象組中隻能存在一個主機對象(host)或者一個子網對象(subnet)。
· 引用的地址對象組的子網對象中不能包含排除地址。
(1) 進入係統視圖。
system-view
(2) 配置基於對象組的出方向靜態地址轉換映射。
nat static outbound object-group local-object-group-name [ vpn-instance local-vpn-instance-name ] object-group global-object-group-name [ vpn-instance global-vpn-instance-name ] [ acl { ipv4-acl-number | name ipv4-acl-name } [ reversible ] ] [ vrrp virtual-router-id ] [ disable ] [ counting ]
缺省情況下,不存在地址轉換映射。
(3) 進入接口視圖。
interface interface-type interface-number
(4) 開啟接口上的NAT靜態地址轉換功能。
nat static enable
缺省情況下,NAT靜態地址轉換功能處於關閉狀態。
入方向一對一靜態地址轉換用於實現一個內部私有網絡地址與一個外部公有網絡地址之間的轉換,具體過程如下:
· 對於經過該接口發送的內網訪問外網的報文,將其目的IP地址與指定的內網IP地址local-ip進行匹配,並將匹配的目的IP地址轉換為global-ip。
· 對於該接口接收到的外網訪問內網的報文,將其源IP地址與指定的外網IP地址global-ip進行匹配,並將匹配的源IP地址轉換為local-ip。
調整入方向一對一靜態NAT規則的匹配優先級時,被移動的規則必須滿足如下所有條件:
· 要移動的NAT規則均指定了規則名稱。
· 要移動的NAT規則的global-ip相同或local-ip相同。符合此條件的兩條NAT規則中,至少有一條NAT規則引用了ACL。
(1) 進入係統視圖。
system-view
(2) 配置入方向一對一靜態地址轉換映射。
nat static inbound global-ip [ vpn-instance global-vpn-instance-name ] local-ip [ vpn-instance local-vpn-instance-name ] [ acl { ipv4-acl-number | name ipv4-acl-name } [ reversible ] ] [ rule rule-name ] [ priority priority ] [ disable ] [ counting ] [ description text ]
(3) (可選)調整入方向一對一靜態NAT規則的匹配優先級。
nat static inbound rule move nat-rule-name1 { after | before } nat-rule-name2
缺省情況下,入方向一對一靜態NAT規則的位置決定了匹配的優先級,位置越靠前的NAT規則,其匹配優先級越高。
(4) 進入接口視圖。
interface interface-type interface-number
(5) 開啟接口上的NAT靜態地址轉換功能。
nat static enable
缺省情況下,NAT靜態地址轉換功能處於關閉狀態。
入方向網段對網段靜態地址轉換用於實現一個內部私有網絡與一個外部公有網絡之間的地址轉換,具體過程如下:
· 對於經過該接口發送的內網訪問外網的報文,將其目的IP地址與指定的內網網絡地址進行匹配,並將匹配的目的IP地址轉換為指定的外網網絡地址之一。
· 對於該接口接收到的外網訪問內網的報文,將其源IP地址與指定的外網網絡地址進行匹配,並將匹配的源IP地址轉換為指定的內網網絡地址之一。
調整入方向網段到網段靜態NAT規則的匹配優先級時,被移動的規則必須滿足如下所有條件:
· 要移動的NAT規則均指定了規則名稱。
· 要移動的NAT規則的外網網段相同或內網網段相同。符合此條件的兩條NAT規則中,至少有一條NAT規則引用了ACL。
(1) 進入係統視圖。
system-view
(2) 配置入方向網段對網段靜態地址轉換映射。
nat static inbound net-to-net global-start-address global-end-address [ vpn-instance global-vpn-instance-name ] local local-network { mask-length | mask } [ vpn-instance local-vpn-instance-name ] [ acl { ipv4-acl-number | name ipv4-acl-name } [ reversible ] ] [ rule rule-name ] [ priority priority ] [ disable ] [ counting ]
(3) (可選)調整入方向網段對網段靜態NAT規則的匹配優先級。
nat static inbound net-to-net rule move nat-rule-name1 { after | before } nat-rule-name2
缺省情況下,入方向網段對網段靜態NAT規則的位置決定了匹配的優先級,位置越靠前的NAT規則,其匹配優先級越高。
(4) 進入接口視圖。
interface interface-type interface-number
(5) 開啟接口上的NAT靜態地址轉換功能。
nat static enable
缺省情況下,NAT靜態地址轉換功能處於關閉狀態。
基於對象組的入方向靜態地址轉換用於實現一個內部私有網絡地址與一個外部公有網絡地址之間的轉換,具體過程如下:
· 對於經過該接口發送的內網訪問外網的報文,將其目的IP地址與指定的內網IPv4地址對象組進行匹配,並將匹配的目的IP地址轉換為指定的外網IPv4地址對象組中的地址。
· 對於該接口接收到的外網訪問內網的報文,將其源IP地址與指定的外網IPv4地址對象組進行匹配,並將匹配的源IP地址轉換為指定的內網IPv4地址對象組中的地址。
如果接口上配置的靜態地址轉換映射中指定了acl參數,則僅對符合指定ACL permit規則的報文進行地址轉換。
基於地址對象組的入方向靜態地址轉換引用的IPv4地址對象組滿足如下條件時,配置才能生效:
· 引用的地址對象組中隻能存在一個主機對象(host)或者一個子網對象(subnet)。
· 引用的地址對象組的子網對象中不能包含排除地址。
如果接口上配置的基於地址對象組的入方向靜態地址轉換所引用的內網IPv4地址對象組中配置了主機對象,那麼該主機對象的IP地址不能與該接口的IP地址處於同一網段。
(1) 進入係統視圖。
system-view
(2) 配置基於對象組的入方向靜態地址轉換映射。
nat static inbound object-group global-object-group-name [ vpn-instance global-vpn-instance-name ] object-group local-object-group-name [ vpn-instance local-vpn-instance-name ] [ acl { ipv4-acl-number | name ipv4-acl-name } [ reversible ] ] [ disable ] [ counting ]
缺省情況下,不存在地址轉換映射。
(3) 進入接口視圖。
interface interface-type interface-number
(4) 開啟接口上的NAT靜態地址轉換功能。
nat static enable
缺省情況下,NAT靜態地址轉換功能處於關閉狀態。
在同時配置了多條動態地址轉換的情況下:
· 指定了ACL參數的動態地址轉換配置的優先級高於未指定ACL參數的動態地址轉換配置;
· 對於指定了ACL參數的動態地址轉換配置,其優先級由ACL編號的大小決定,編號越大,優先級越高。
對於多安全引擎設備,如果NO-PAT方式的地址轉換需要進行DNS ALG處理,則配置的地址組成員個數應不少於處理安全業務的安全引擎數乘以內部服務器數的個數,從而保證每個處理NAT業務的安全引擎上都有足夠的地址資源用於轉換。有關安全引擎的詳細介紹,請參見“虛擬化技術配置指導”中的“Context”。
· 配置控製地址轉換範圍的ACL。ACL配置的相關介紹請參見“ACL和QoS配置指導”中的“ACL”。
· 確定是否直接使用接口的IP地址作為轉換後的報文源地址。
· 配置根據實際網絡情況,合理規劃可用於地址轉換的公網IP地址組。
· 確定地址轉換過程中是否使用端口信息。
出方向動態地址轉換通常應用在外網側接口上,用於實現一個內部私有網絡地址到一個外部公有網絡地址的轉換。
(1) 進入係統視圖。
system-view
(2) 創建NAT地址組,並進入NAT地址組視圖。
nat address-group group-id [ name group-name ]
(3) (可選)配置NAT地址組的描述信息。
description text
缺省情況下,未配置NAT地址組的描述信息。
(4) (可選)配置電信雲堤網絡中NAT地址組別名及所屬的租戶。
yundi alias alias-name tenant tenant-id
缺省情況下,在電信雲堤網絡中未配置NAT地址組別名及所屬的租戶。
別名和租戶ID通常由遠端控製器分配,因此不建議在設備上手工設置本功能。
(5) 添加地址組成員。
address start-address end-address
可通過多次執行本命令添加多個地址組成員。
當前地址組成員的IP地址段不能與該地址組中或者其它地址組中已有的地址成員組成員重疊。
(6) (可選)配置禁止用於地址轉換的IP地址。
exclude-ip start-address end-address
end-address必須大於或等於start-address,如果start-address和end-address相同,則表示隻有一個地址。
(7) 退回係統視圖。
quit
(8) 進入接口視圖。
interface interface-type interface-number
(9) 配置出方向動態地址轉換。請至少選擇其中一項進行配置。
¡ NO-PAT方式。
nat outbound [ ipv4-acl-number | name ipv4-acl-name ] address-group { group-id | name group-name } [ vpn-instance vpn-instance-name ] no-pat [ reversible ] [ rule rule-name ] [ priority priority ] [ disable ] [ counting ] [ description text ]
¡ PAT方式。
nat outbound [ ipv4-acl-number | name ipv4-acl-name ] [ address-group { group-id | name group-name } ] [ vpn-instance vpn-instance-name ] [ port-preserved ] [ rule rule-name ] [ priority priority ] [ disable ] [ counting ] [ description text ]
一個接口下可配置多個出方向的動態地址轉換。
參數 |
功能 |
address-group |
不指定該參數時,則直接使用該接口的IP地址作為轉換後的地址,即實現Easy IP功能 |
no-pat reversible |
在指定該參數,並且已經存在NO-PAT表項的情況下,對於經過該接口收到的外網訪問內網的首報文,將其目的IP地址與NO-PAT表項進行匹配,並將目的IP地址轉換為匹配的NO-PAT表項中記錄的內網地址 |
(10) (可選)配置PAT方式地址轉換的模式。
a. 退回係統視圖。
quit
b. 配置PAT方式地址轉換的模式。
nat mapping-behavior endpoint-independent [ acl { ipv4-acl-number | name ipv4-acl-name } ]
缺省情況下,PAT方式地址轉換的模式為Address and Port-Dependent Mapping。
該配置隻對PAT方式的出方向動態地址轉換有效。
(11) (可選)調整出方向動態NAT規則的匹配優先級。
nat outbound rule move nat-rule-name1 { after | before } nat-rule-name2
入方向動態地址轉換功能通常與接口上的出方向動態地址轉換(nat outbound)、內部服務器(nat server)或出方向靜態地址轉換(nat static outbound)配合,用於實現“源IP地址轉換+目的IP地址轉換”,不建議單獨使用。
由於自動添加路由表項速度較慢,通常建議手工添加路由。
(1) 進入係統視圖。
system-view
(2) 創建NAT地址組,並進入NAT地址組視圖。
nat address-group group-id [ name group-name ]
(3) (可選)配置NAT地址組的描述信息。
description text
缺省情況下,未配置NAT地址組的描述信息。
(4) (可選)配置電信雲堤網絡中NAT地址組別名及所屬的租戶。
yundi alias alias-name tenant tenant-id
缺省情況下,在電信雲堤網絡中未配置NAT地址組別名及所屬的租戶。
別名和租戶ID通常由遠端控製器分配,因此不建議在設備上手工設置本功能。
(5) 添加地址組成員。
address start-address end-address
可通過多次執行本命令添加多個地址組成員。
當前地址組成員的IP地址段不能與該地址組中或者其它地址組中已有的地址組成員重疊。
(6) (可選)配置禁止用於地址轉換的IP地址。
exclude-ip start-address end-address
end-address必須大於或等於start-address,如果start-address和end-address相同,則表示隻有一個地址。
(7) 退回係統視圖。
quit
(8) 進入接口視圖。
interface interface-type interface-number
(9) 配置入方向動態地址轉換。
nat inbound { ipv4-acl-number | name ipv4-acl-name } address-group { group-id | name group-name } [ vpn-instance vpn-instance-name ] [ no-pat [ reversible ] [ add-route ] ] [ rule rule-name ] [ priority priority ] [ disable ] [ counting ] [ description text ]
一個接口下可配置多個入方向的動態地址轉換。
參數 |
功能 |
no-pat reversible |
指定該參數,並且已經存在NO-PAT表項的情況下,對於經過該接口發送的內網訪問外網的首報文,將其目的IP地址與NO-PAT表項進行匹配,並將目的IP地址轉換為匹配的NO-PAT表項中記錄的外網地址 |
no-pat add-route |
· 指定該參數,則有報文命中該配置時,設備會自動添加路由表項:目的地址為本次地址轉換使用的地址組中的地址,出接口為本配置所在接口,下一跳地址為報文的源地址 · 沒有指定該參數,則用戶需要在設備上手工添加路由 |
(10) (可選)調整入方向動態NAT規則的匹配優先級。
nat inbound rule move nat-rule-name1 { after | before } nat-rule-name2
內部服務器通常配置在外網側接口上。通過在NAT設備上配置內部服務器,建立一個或多個內網服務器內網地址和端口與外網地址和端口的映射關係,使外部網絡用戶能夠通過配置的外網地址和端口來訪問內網服務器。內部服務器可以位於一個普通的內網內,也可以位於一個VPN實例內。
內部服務器可以通過如下配置方式實現。
· 普通內部服務器:將內網服務器的地址和端口映射為外網地址和端口,允許外部網絡中的主機通過配置的外網地址和端口訪問位於內網的服務器。
· 負載分擔內部服務器:在配置內部服務器時,將內部服務器的內網信息指定為一個內部服務器組,組內的多台主機可以共同對外提供某種服務。外網用戶向內部服務器指定的外網地址發起應用請求時,NAT設備可根據內網服務器的權重和當前連接數,選擇其中一台內網服務器作為目的服務器,實現內網服務器負載分擔。
· 基於ACL的內部服務器:普通內部服務器方式必須指定公網地址,基於ACL內部服務器不用指定具體的公網地址,而是指定公網地址的集合,即通過ACL規則匹配過濾的一部分公網地址。對於符合ACL規則的報文,它的目的地址統一轉換成相同的內部服務器地址和端口,它是普通內部服務器的擴展。
· 基於對象組的內部服務器:基於對象組的內部服務器使用地址對象組和服務對象組作為報文匹配條件,對於符合匹配條件的報文,它的目的地址和端口統一轉換成相同的內部服務器地址和端口。關於對象組的詳細介紹,請參見“安全配置指導”中的“對象組”。
使用RTP(Real-Time Transport Protocol,實時傳輸協議)傳輸音視頻的場景中,在RTP會話期間,服務器和客戶端作為會話的參與者會周期性發送RTCP(Real-time ControlProtocol,實時傳輸控製協議)報文。如果服務器位於私網,配置nat server命令時需要指定reversible參數,否則服務器發送到公網客戶端的RTCP報文會被NAT設備丟棄,導致音視頻傳輸業務出現異常。
在配置負載分擔內部服務器時,若配置一個外網地址,N個連續的外網端口號對應一個內部服務器組,或N個連續的外網地址,一個外網端口號對應一個內部服務器組,則內部服務器組的成員個數不能小於N,即同一用戶不能通過不同的外網地址或外網端口號訪問相同內網服務器的同一服務。在支持NAT內部服務器自動分配NAT規則名稱的版本上執行配置回滾操作時,如果回滾配置文件中的NAT內部服務器不存在係統為其自動分配的NAT規則名稱,會出現回滾失敗的錯誤提示信息。比如,回滾配置文件中的配置為nat server global 112.1.1.1 inside 192.168.20.1,回滾操作完成後的配置為nat server global 112.1.1.1 inside 192.168.20.1 rule 內部服務器規則_10(內部服務器規則_10為係統自動分配的NAT規則名稱),係統會將此配置與回滾文件中的配置進行比較,比較後發現兩者不一致,會提示用戶回滾失敗。這種情況下,相關的命令已下發成功,用戶無需處理。
配置內部服務器時,如果將TCP或UDP協議的端口號改為非知名端口號,則NAT設備不會進行ALG處理,導致用戶無法使用內部服務器提供的服務。可通過如下兩種方式解決上述問題:
· 修改內部服務器配置,使用TCP或UDP協議自身的知名端口號。
· 不修改內部服務器配置,使用port-mapping命令建立TCP或UDP協議與對應的內部服務器配置中的端口號的映射。關於port-mapping命令的詳細介紹,請參見“安全配置指導”中的“APR”。
(1) 進入係統視圖。
system-view
(2) 進入接口視圖。
interface interface-type interface-number
(3) 配置普通內部服務器。請至少選擇其中一項進行配置。
¡ 外網地址單一,未使用外網端口或外網端口單一。
nat server [ protocol pro-type ] global { global-address | current-interface | interface interface-type interface-number } [ global-port ] [ vpn-instance global-vpn-instance-name ] inside local-address [ local-port ] [ vpn-instance local-vpn-instance-name ] [ acl { ipv4-acl-number | name ipv4-acl-name } ] [ reversible ] [ vrrp virtual-router-id ] [ rule rule-name ] [ disable ] [ counting ] [ description text ]
¡ 外網地址單一,外網端口連續。
nat server protocol pro-type global { global-address | current-interface | interface interface-type interface-number } global-port1 global-port2 [ vpn-instance global-vpn-instance-name ] inside { { local-address | local-address1 local-address2 } local-port | local-address local-port1 local-port2 } [ vpn-instance local-vpn-instance-name ] [ acl { ipv4-acl-number | name ipv4-acl-name } ] [ vrrp virtual-router-id ] [ rule rule-name ] [ disable ] [ counting ] [ description text ]
¡ 外網地址連續,未使用外網端口。
nat server protocol pro-type global global-address1 global-address2 [ vpn-instance global-vpn-instance-name ] inside { local-address | local-address1 local-address2 } [ local-port ] [ vpn-instance local-vpn-instance-name ] [ acl { ipv4-acl-number | name ipv4-acl-name } ] [ vrrp virtual-router-id ] [ rule rule-name ] [ disable ] [ counting ] [ description text ]
¡ 外網地址連續,外網端口單一。
nat server protocol pro-type global global-address1 global-address2 global-port [ vpn-instance global-vpn-instance-name ] inside { local-address [ local-port1 local-port2 ] | [ local-address | local-address1 local-address2 ] [ local-port ] } [ vpn-instance local-vpn-instance-name ] [ acl { ipv4-acl-number | name ipv4-acl-name } ] [ vrrp virtual-router-id ] [ rule rule-name ] [ disable ] [ counting ] [ description text ]
一個接口下可以配置多個普通內部服務器。
(1) 進入係統視圖。
system-view
(2) 創建內部服務器組,並進入服務器組視圖。
nat server-group group-id
(3) 添加內部服務器組成員。
inside ip inside-ip port port-number [ weight weight-value ]
一個內部服務器組內可以添加多個組成員。
(4) 退回係統視圖。
quit
(5) 進入接口視圖。
interface interface-type interface-number
(6) 配置負載分擔內部服務器。
nat server protocol pro-type global { { global-address | current-interface | interface interface-type interface-number } { global-port | global-port1 global-port2 } | global-address1 global-address2 global-port } [ vpn-instance global-vpn-instance-name ] inside server-group group-id [ vpn-instance local-vpn-instance-name ] [ acl { ipv4-acl-number | name ipv4-acl-name } ] [ vrrp virtual-router-id ] [ rule rule-name ] [ disable ] [ counting ] [ description text ]
一個接口下可以配置多個負載分擔內部服務器。
(1) 進入係統視圖。
system-view
(2) 進入接口視圖。
interface interface-type interface-number
(3) 配置基於ACL的內部服務器。
nat server global { ipv4-acl-number | name ipv4-acl-name } inside local-address [ local-port ] [ vpn-instance local-vpn-instance-name ] [ vrrp virtual-router-id ] [ rule rule-name ] [ priority priority ] [ disable ] [ counting ] [ description text ]
一個接口下可以配置多個基於ACL的內部服務器。
(4) (可選)調整基於ACL內部服務器NAT規則的匹配優先級。
nat server rule move nat-rule-name1 { after | before } nat-rule-name2
基於對象組的內部服務器使用地址對象組和服務對象組作為報文匹配條件,對於符合匹配條件的報文,它的目的地址和端口統一轉換成相同的內部服務器地址和端口。關於對象組的詳細介紹,請參見“安全配置指導”中的“對象組”。
當存在多條基於對象組的NAT內部服務器規則時,報文會按照配置順序與這些規則進行匹配,一旦匹配上某條規則便結束匹配過程。
引用的服務對象組中,隻有服務對象組的協議類型是TCP或UDP時,配置的內部服務器的內網端口號才會生效。
每個內部服務器最多可引用5個地址對象組和1個服務對象組。
創建IPv4地址對象組或服務對象組。其中,IPv4地址對象組中不能存在排除的IPv4地址。
(1) 進入係統視圖。
system-view
(2) 進入接口視圖。
interface interface-type interface-number
(3) 配置基於對象組的內部服務器。
nat server rule rule-name global destination-ip object-group-name&<1-5> [ service object-group-name ] inside local-address [ local-port ] [ vrrp virtual-router-id ] [ disable ] [ counting ] [ description text ]
缺省情況下,不存在基於對象組的內部服務器。
(4) 添加內部服務器引用的對象組。
nat server rule rule-name global { destination-ip object-group-name&<1-5> | service object-group-name }
隻能向已經存在的基於對象組的NAT內部服務器規則中添加對象組。
NAT444是出方向地址轉換,通常配置在外網側接口上。通過在NAT444網關設備上配置NAT444地址轉換,可以實現基於端口塊的公網IP地址複用,使一個私網IP地址在一個時間段內獨占一個公網IP地址的某個端口塊。
對於NAT444端口動態映射,必須在NAT地址組中配置端口塊參數,以實現基於端口塊的NAT444地址轉換。
(1) 進入係統視圖。
system-view
(2) 創建NAT端口塊組,並進入NAT端口塊組視圖。
nat port-block-group group-id
(3) 添加私網地址成員。
local-ip-address start-address end-address [ vpn-instance vpn-instance-name ]
一個端口塊組內,可以配置多個私網地址成員,但各私網地址成員之間的IP地址不能重疊。
(4) 添加公網地址成員。
global-ip-pool start-address end-address
一個端口塊組內,可以配置多個公網地址成員,但各公網地址成員之間的IP地址不能重疊。
(5) 配置公網地址的端口範圍。
port-range start-port-number end-port-number
缺省情況下,公網地址的端口範圍為1~65535。
(6) 配置端口塊大小。
block-size block-size
缺省情況下,端口塊大小為256。
(7) 退回係統視圖。
quit
(8) 進入接口視圖。
interface interface-type interface-number
(9) 配置NAT444端口塊靜態映射。
nat outbound port-block-group group-id [ rule rule-name ] [ counting ]
缺省情況下,不存在NAT444端口塊靜態映射配置。
一個接口下可配置多條基於不同端口塊組的NAT444端口塊靜態映射。
(10) (可選)配置PAT方式出方向動態地址轉換的模式。
a. 退回係統視圖。
quit
b. 配置PAT方式出方向動態地址轉換的模式。
nat mapping-behavior endpoint-independent [ acl { ipv4-acl-number | name ipv4-acl-name } ]
缺省情況下,PAT方式出方向動態地址轉換的模式為Address and Port-Dependent Mapping。
向NAT地址組中添加地址成員時,可采用如下方式之一:
· 添加一個或多個IP地址段。
· 添加一個接口,即實現Easy IP功能的NAT444端口塊動態映射。與實現Easy IP功能的出方向動態地址轉換相比,該方式支持用戶溯源。
對於同一個NAT地址組,隻能采用一種地址成員添加方式。
在NAT轉換後的IP地址為設備外網側接口的IP地址,且該地址是通過DHCP等協議動態獲取的情況下,為了防止接口IP地址變化導致NAT IP地址信息不正確,請采用添加接口的方式。
(1) 進入係統視圖。
system-view
(2) (可選)配置PAT方式地址轉換的模式。
nat mapping-behavior endpoint-independent [ acl { ipv4-acl-number | name ipv4-acl-name } ]
缺省情況下,PAT方式出方向動態地址轉換的模式為Address and Port-Dependent Mapping。
(3) 創建NAT地址組,並進入NAT地址組視圖。
nat address-group group-id [ name group-name ]
(4) (可選)配置NAT地址組的描述信息。
description text
缺省情況下,未配置NAT地址組的描述信息。
(5) (可選)配置電信雲堤網絡中NAT地址組別名及所屬的租戶。
yundi alias alias-name tenant tenant-id
缺省情況下,在電信雲堤網絡中未配置NAT地址組別名及所屬的租戶。
別名和租戶ID通常由遠端控製器分配,因此不建議在設備上手工設置本功能。
(6) 添加地址成員。下麵兩種方法互斥,請選擇其中一項進行配置。
¡ 將IP地址段作為NAT地址組中的地址成員。
address start-address end-address
可通過多次執行本命令添加多個地址組成員。
當前地址組成員的IP地址段不能與該地址組中或者其它地址組中已有的地址成員組成員
重疊。
如果IP地址段的某些IP地址不能用於地址轉換,可通過如下命令配置禁止用於地址轉換的IP地址。
exclude-ip start-address end-address
end-address必須大於或等於start-address,如果start-address和end-address相同,則表示隻有一個地址。
¡ 將接口的IP地址作為NAT地址組中的地址成員,即實現Easy IP功能。
address interface interface-type interface-number
缺省情況下,未指定接口地址作為地址成員。
在同一個NAT地址組中,通過本命令隻能將一個接口的地址作為地址成員。
(7) (可選)配置端口範圍。
port-range start-port-number end-port-number
缺省情況下,端口範圍為1~65535。
該配置僅對PAT方式地址轉換生效。
(8) 配置端口塊參數。
port-block block-size block-size [ extended-block-number extended-block-number ]
缺省情況下,未配置NAT地址組的端口塊參數。
該配置僅對PAT方式地址轉換生效。
(9) 退回係統視圖。
quit
(10) 進入接口視圖。
interface interface-type interface-number
(11) 配置PAT方式出方向動態地址轉換。
nat outbound [ ipv4-acl-number | name ipv4-acl-name ] [ address-group { group-id | name group-name } ] [ vpn-instance vpn-instance-name ] [ port-preserved ] [ rule rule-name ] [ priority priority ] [ disable ] [ counting ] [ description text ]
port-preserved參數對NAT444端口塊動態映射無效。
在已配置NAT444端口塊動態映射的情況下,當同一個源IP地址的報文從不同出接口進行NAT地址轉換時,可能會分配到不同的端口塊。如果需要使同一個源IP地址分配到相同的端口塊,請開啟端口塊全局共享功能。
(1) 進入係統視圖。
system-view
(2) 配置NAT444端口塊全局共享功能。
nat port-block global-share enable
缺省情況下,端口塊全局共享功能處於關閉狀態。
DS-Lite B4地址轉換配置在外網側接口上,關聯IPv6 ACL控製地址轉換範圍,目前僅支持端口塊動態映射方式。
在配置接口上的DS-Lite B4地址轉換之前,請確保B4設備和AFTR之間IPv6報文路由可達。
(1) 進入係統視圖。
system-view
(2) (可選)配置PAT方式地址轉換的模式。
nat mapping-behavior endpoint-independent [ acl { ipv4-acl-number | name ipv4-acl-name } ]
缺省情況下,PAT方式出方向動態地址轉換的模式為Address and Port-Dependent Mapping。
(3) 創建NAT地址組,並進入NAT地址組視圖。
nat address-group group-id [ name group-name ]
(4) (可選)配置NAT地址組的描述信息。
description text
缺省情況下,未配置NAT地址組的描述信息。
(5) (可選)配置電信雲堤網絡中NAT地址組別名及所屬的租戶。
yundi alias alias-name tenant tenant-id
缺省情況下,在電信雲堤網絡中未配置NAT地址組別名及所屬的租戶。
別名和租戶ID通常由遠端控製器分配,因此不建議在設備上手工設置本功能。
(6) 添加地址組成員。
address start-address end-address
可通過多次執行本命令添加多個地址組成員。
當前地址組成員的IP地址段不能與該地址組中或者其它地址組中已有的地址成員組成員重疊。
(7) (可選)配置禁止用於地址轉換的IP地址。
exclude-ip start-address end-address
end-address必須大於或等於start-address,如果start-address和end-address相同,則表示隻有一個地址。
(8) 配置端口範圍。
port-range start-port-number end-port-number
缺省情況下,端口範圍為1-65535。
該配置僅對PAT方式地址轉換生效。
(9) 配置端口塊參數。
port-block block-size block-size [ extended-block-number extended-block-number ]
缺省情況下,未配置NAT地址組的端口塊參數。
該配置僅對PAT方式地址轉換生效。
(10) 退回係統視圖。
quit
(11) 進入接口視圖。
interface interface-type interface-number
(12) 配置DS-Lite B4端口塊映射。
nat outbound ds-lite-b4 { ipv6-acl-number | name ipv6-acl-name } address-group group-id
接口NAT策略根據報文的源IP地址、目的IP地址和攜帶的服務類型對多個接口出方向報文的地址轉換進行控製。接口NAT策略中可以包含多條NAT規則,設備通過接口出方向上應用的NAT規則中引用的對象組識別出特定的報文,並根據預先設定的動作類型對其進行地址轉換。
若NAT規則未引用任何對象組,則該規則將匹配任意報文。
NAT策略目前僅支持動態地址轉換,其優先級高於接口下的動態地址轉換。
(1) 進入係統視圖。
system-view
(2) 創建接口NAT策略,並進入接口NAT策略視圖。
nat policy
缺省情況下,不存在接口NAT策略。
當接口NAT策略中包含多條規則時,報文會按照配置順序與這些規則進行匹配,一旦匹配上某條規則便結束匹配過程。NAT規則的配置順序可在接口NAT策略視圖下通過display this命令查看,配置順序與規則的創建順序有關,先創建的規則處在配置順序的優先位置。
(1) 進入係統視圖。
system-view
(2) 進入接口NAT策略視圖。
nat policy
(3) 創建NAT規則,並進入NAT規則視圖。
rule name rule-name
缺省情況下,不存在NAT規則。
(4) (可選)配置NAT規則的描述信息。
description text
缺省情況下,NAT規則未配置任何描述信息。
(5) (可選)配置電信雲堤網絡中NAT規則別名及所屬的租戶。
yundi alias alias-name tenant tenant-id
缺省情況下,在電信雲堤網絡中未配置NAT規則別名及所屬的租戶。
別名和租戶ID通常由遠端控製器分配,因此不建議在設備上手工設置本功能。
(6) 指定NAT規則的出接口。
outbound-interface interface-type interface-number
缺省情況下,未指定NAT規則的出接口。
(7) 配置NAT規則引用的對象組。請至少選擇其中一項進行配置。
¡ 配置NAT規則源地址對象組。
source-ip object-group-name
源地址對象組用於匹配報文的源IP地址。
¡ 配置NAT規則引用目的地址對象組。
destination-ip object-group-name
目的地址對象組用於匹配報文的目的IP地址。
¡ 配置NAT規則引用服務對象組。
service object-group-name
服務對象組用於匹配報文攜帶的服務類型。
缺省情況下,未配置NAT規則引用的對象組。
NAT規則引用的對象組必須已經存在。
(8) 配置NAT規則中的地址轉換方式。請選擇其中一項進行配置。
¡ 配置NAT規則中的地址轉換方式為Easy IP方式。
action easy-ip
¡ 配置NAT規則中的地址轉換方式為NO-NAT方式。
action no-nat
¡ 配置NAT規則中的地址轉換方式為NO-PAT方式。
action address-group { group-id | name group-name } no-pat [ reversible ]
¡ 配置NAT規則中的地址轉換方式為PAT方式。
action address-group { group-id | name group-name } [ port-preserved ]
缺省情況下,未配置NAT規則中的地址轉換方式。
(9) (可選)開啟NAT規則命中統計功能。
counting enable
缺省情況下,NAT規則命中統計功能處於關閉狀態。
(10) 配置PAT方式地址轉換的模式。
a. 退回接口NAT策略視圖。
quit
b. 退回係統視圖。
quit
c. 配置PAT方式地址轉換的模式。
nat mapping-behavior endpoint-independent [ acl { ipv4-acl-number | name ipv4-acl-name } ]
缺省情況下,PAT方式地址轉換的模式為Address and Port-Dependent Mapping。
該配置隻對PAT方式的出方向動態地址轉換有效。
NAT規則是按照配置先後順序進行匹配的,即先配置的NAT規則具有更高的匹配優先級。對於需要調整NAT規則匹配順序的場景,請使用本功能移動NAT規則的位置,從而靈活調整NAT規則的匹配優先級順序。
調整NAT規則的位置會修改規則的匹配優先級的值,優先級的值越小,則匹配優先級越高。具體機製為:
· 將nat-rule-name1移動到nat-rule-name2後麵,nat-rule-name2的匹配優先級的值不變,nat-rule-name1的匹配優先級的值=nat-rule-name2的匹配優先級的值+1。
· 將nat-rule-name1移動到nat-rule-name2前麵,nat-rule-name2的匹配優先級的值不變,nat-rule-name1的匹配優先級的值=nat-rule-name2的匹配優先級的值-1。
(1) 進入係統視圖。
system-view
(2) 進入接口NAT策略視圖。
nat policy
(3) 修改NAT規則的匹配優先級順序。
rule move rule-name1 { after | before } [ rule-name2 ]
通過本命令隻能調整已經存在的NAT規則的匹配優先級順序。
配置本功能後,相應的NAT規則將不再生效,但是不會將此NAT規則刪除。如果不再需要此NAT規則,需要執行undo rule name命令才能將其刪除。
(1) 進入係統視圖。
system-view
(2) 進入接口NAT策略視圖。
nat policy
(3) 進入NAT規則視圖。
rule name rule-name
(4) 禁用NAT規則中的地址轉換映射。
disable
缺省情況下,NAT規則中的地址轉換映射處於開啟狀態。
NAT hairpin功能用於滿足位於內網側的用戶之間或用戶與服務器之間通過NAT地址進行訪問的需求。開啟NAT hairpin的內網側接口上會對報文同時進行源地址和目的地址的轉換。
NAT hairpin功能需要與地址轉換配合工作,支持如下兩種不同的配合方式:
· NAT hairpin功能與內部服務器(nat server)、出方向動態地址轉換(nat outbound)配合工作。
· NAT hairpin功能與內部服務器(nat server)、出方向靜態地址轉換(nat static outbound)配合工作。
NAT hairpin與不同的地址轉換配合工作時,這些配置所在的接口必須在同一個接口板,否則NAT hairpin功能無法正常工作。
NAT hairpin功能與內部服務器配合工作時,僅支持與通過如下方式配置的內部服務器配合使用,並且使用如下方式配置內部服務器時,必須通過protocol參數指定協議類型,否則NAT hairpin功能不生效。
P2P方式下,外網側的出方向地址轉換必須配置為PAT轉換方式,並開啟EIM模式。
(1) 進入係統視圖。
system-view
(2) 進入接口視圖。
interface interface-type interface-number
(3) 開啟NAT hairpin功能。
nat hairpin enable
缺省情況下,NAT hairpin功能處於關閉狀態。
ALG(Application Level Gateway,應用層網關)主要完成對應用層報文的解析和處理。通常情況下,NAT隻對報文頭中的IP地址和端口信息進行轉換,不對應用層數據載荷中的字段進行分析和處理。然而對於一些應用層協議,它們的報文的數據載荷中可能包含IP地址或端口信息,這些載荷信息也必須進行有效的轉換,否則可能導致功能不正常。例如,FTP應用由數據連接和控製連接共同完成,而數據連接使用的地址和端口由控製連接協商報文中的載荷信息決定,這就需要ALG利用NAT的相關轉換配置來完成載荷信息的轉換,以保證後續數據連接的正確建立。
(1) 進入係統視圖。
system-view
(2) 開啟指定或所有協議類型的NAT ALG功能。
nat alg { all | dns | ftp | h323 | icmp-error | ils | mgcp | nbt | pptp | rsh | rtsp | sccp | sctp | sip | sqlnet | tftp | xdmcp }
缺省情況下,DNS、FTP、ICMP差錯報文、PPTP、RTSP協議類型的NAT ALG功能處於開啟狀態,其他協議類型的NAT ALG功能處於關閉狀態。
NAT DNS mapping功能適用於DNS服務器在公網、私網用戶希望通過域名來訪問內部服務器的場景中。在該場景中,NAT設備對來自外網的DNS響應報文進行DNS ALG處理時,借助DNS mapping映射關係精確匹配內部服務器配置,進而獲取內部服務器的內網IP地址。具體機製如下:
(1) NAT設備收到來自外網的DNS響應報文時,獲取內網服務器域名和外網IP地址的對應關係。
(2) NAT設備根據域名和應用服務器外網IP地址的對應關係查找NAT DNS mapping映射表,獲取“內部服務器域名<-->外網IP地址+外網端口號+協議類型”的映射關係。
(3) NAT設備根據“內部服務器域名<-->外網IP地址+外網端口號+協議類型”的映射關係匹配內部服務器配置,獲取內部服務器的內網IP地址,並進行地址轉換。
(4) NAT設備將地址轉換後的DNS響應報文發送給內網用戶。
DNS mapping功能需要和內部服務器配合使用,由nat server配置定義內部服務器對外提供服務的外網IP地址和端口號,由DNS mapping建立“內部服務器域名<-->外網IP地址+外網端口號+協議類型”的映射關係。
(1) 進入係統視圖。
system-view
(2) 開啟DNS協議類型的NAT ALG功能。
nat alg dns
缺省情況下,DNS協議類型的NAT ALG功能處於開啟狀態。
(3) 配置一條域名到內部服務器的映射。
nat dns-map domain domain-name protocol pro-type { interface interface-type interface-number | ip global-ip } port global-port
可配置多條域名到內部服務器的映射。
缺省情況下,NAT模塊會發送免費ARP報文,向同一局域網內所有節點通告NAT公網IP地址與MAC地址的對應關係。當NAT公網地址較多時,發送免費ARP耗時較長,可能會導致ARP業務異常。這種情況下,為了保證ARP業務正常運行,可以暫時關閉此功能。關閉此功能後,NAT不再發送免費ARP報文,但會回應同一局域網內其他節點發送的免費ARP。
關閉NAT發送免費ARP報文通告公網IP地址與MAC地址對應關係的功能後,當NAT公網地址或NAT公網地址對應的VRRP變更、接口MAC或虛MAC變更、等價出口的鏈路震蕩等,NAT模塊不會主動發送免費ARP,可能會導致同一局域網內其他節點不能及時更新MAC地址表項,從而引發業務異常。請謹慎使用。
(1) 進入係統視圖。
system-view
(2) 開啟NAT發送免費ARP報文功能。
nat gratuitous-arp enable
缺省情況下,NAT發送免費ARP報文功能處於開啟狀態。
在IRF雙機熱備的負載分擔場景下,開啟NAT端口負載分擔功能後,兩台設備分別獲得一半的端口塊資源,使得相同私網IP地址在不同的成員設備上獨占一定的端口資源,避免端口分配衝突。關於IRF的詳細介紹,請參見“虛擬化配置指導”中的“IRF”。
在雙機熱備的主備備份場景下時,不需要配置此命令。
(1) 進入係統視圖。
system-view
(2) 開啟NAT端口負載分擔功能。
nat port-load-balance enable slot slot-number
缺省情況下,NAT端口負載分擔功能處於關閉狀態。
在業務熱備份環境中,通過開啟NAT動態端口塊熱備份功能,可以實現主備切換後動態端口塊表項一致。
RBM組網環境下,開啟RBM熱備功能(執行hot-backup enable命令)後本功能才能生效。
IRF組網環境下,開啟會話業務熱備份功能(執行session synchronization enable命令)後本功能才能生效。
(1) 進入係統視圖。
system-view
(2) 開啟NAT動態端口塊熱備份功能。
nat port-block synchronization enable
缺省情況下,NAT動態端口塊熱備份功能處於關閉狀態。
在單台NAT設備的組網中,一旦發生單點故障,內網用戶將無法與外網通信。采用HA方案可以很好的避免上述情況的發生。在該方案中部署兩台設備組成HA,這兩台設備均可承擔NAT業務,並通過HA通道進行會話熱備、會話關聯表熱備、NAT端口塊表項熱備以及NAT配置的同步。當其中一台設備故障後流量自動切換到另一台正常工作的設備。
有關HA的詳細介紹,請參見“高可靠性配置指導”中的“高可靠性”。
HA組網中的兩台設備均可承擔NAT業務,實際處理NAT業務的設備由VRRP備份組中的Master設備承擔。下麵以主備模式的HA為例,介紹該場景中當Master設備發生故障時如何保證NAT業務不中斷。
如圖3-1所示,Device A和Device B組成HA(Device A為HA中的主管理設備,Device B為HA中的從管理設備),Device A通過備份通道將會話表項、會話關聯表項和端口塊表項實時備份到Device B。同時,Device A和Device B的下行鏈路組成VRRP備份組1,上行鏈路組成VRRP備份組2,並將VRRP和HA關聯。HA根據鏈路狀態或設備的轉發能力選擇Device A作為Master設備,正常情況下,由Device A進行地址轉換。
如圖3-2所示,當Device A的接口Interface A2發生故障時,Device B在VRRP備份組中的狀態由Backup變為Master,由於Device B上已經有相關的NAT配置信息和業務表項,因此可以保證鏈路切換後的NAT業務不中斷。
在主備模式的HA組網中,靜態IP地址轉換、源IP地址轉換、目的IP地址轉換的部分轉換配置會將轉換後的公網IP地址或內部服務器對外提供服務的公網IP地址下發到地址管理。然後,主、備設備均會向同一局域網內所有節點通告公網IP與自身物理接口MAC地址的對應關係。導致與HA直連的上行三層設備可能會將下行報文發送給HA中的Backup設備,從而影響業務的正常運行。
為了避免上述情況的發生,需要將地址轉換方式與VRRP備份組綁定。執行綁定操作後,僅Master設備收到對轉換後IP地址或內部服務器對外提供服務的公網IP地址的ARP請求後,會回應ARP響應報文,響應報文中攜帶的MAC地址為此VRRP備份組的虛擬MAC地址,使得與HA直連的上行三層設備隻會將下行報文發送給HA中的Master設備,保證業務的正常運行。
關於HA的詳細介紹,請參見“高可靠性配置指導”中的“雙機熱備(RBM)”。
請在HA的主管理設備上將NAT轉換配置與VRRP備份組綁定。
(1) 進入係統視圖。
system-view
(2) 將地址轉換配置與VRRP備份組綁定。請根據網絡需求選擇步驟(3)~(8)中的一項或多項進行配置。
(3) 將NAT地址組與VRRP備份組綁定。
a. 進入NAT地址組視圖。
nat address-group group-id [ name group-name ]
b. 將NAT地址組與VRRP備份組綁定。
vrrp vrid virtual-router-id
缺省情況下,NAT地址組未綁定任何VRRP備份組。
(4) 將NAT端口塊組與VRRP備份組綁定。
a. 進入NAT端口塊組視圖。
nat port-block-group group-id
b. 將NAT端口塊組與VRRP備份組綁定。
vrrp vrid virtual-router-id
缺省情況下,NAT端口塊組未綁定任何VRRP備份組。
(5) 將出方向一對一靜態地址轉換映射與VRRP備份組綁定。
請參見“3.3.3 配置出方向一對一靜態地址轉換”。
(6) 將出方向網段到網段的靜態地址轉換映射VRRP備份組綁定。
請參見“3.3.4 配置出方向網段對網段靜態地址轉換”。
(7) 將基於對象組的出方向靜態地址轉換映射VRRP備份組綁定。
請參見“3.3.5 配置基於對象組的出方向靜態地址轉換”。
(8) 將NAT內部服務器與VRRP備份組綁定。
a. 進入接口視圖。
interface interface-type interface-number
b. 將NAT內部服務器與VRRP備份組綁定。
請參見“3.5.2 配置普通內部服務器”、“3.5.4 配置負載分擔內部服務器”、“3.5.5 配置基於ACL的內部服務器”和“3.5.6 配置基於對象組的內部服務器”。
在雙主模式的HA組網中,兩台設備互為主備,仍然可能出現與HA直連的上行三層設備將下行報文發送給HA中的Backup設備,從而影響業務正常運行的情況。
為了避免上述情況的發生,需要將地址轉換方式與VRRP備份組綁定。執行綁定操作後,僅Master設備收到對轉換後IP地址或內部服務器對外提供服務的公網IP地址的ARP請求後,會回應ARP響應報文,響應報文中攜帶的MAC地址為此VRRP備份組的虛擬MAC地址。關於HA的詳細介紹,請參見“高可靠性配置指導”中的“雙機熱備(RBM)”。
請根據不同的情況選擇不同的配置方式:
· 雙主模式的HA組網中,兩台設備可以共用同一個NAT地址組/NAT端口塊組,需要注意的是,為了防止不同的Master設備將不同主機的流量轉換為同一個地址和端口號,需要使用PAT模式的地址轉換,並配置nat remote-backup port-alloc命令,使得不同的Master設備使用不同範圍的端口資源。
· 除上述情況外,建議雙主模式HA組網中的兩台設備使用不同的公網IP進行地址轉換,避免出現不同的Master設備對不同主機的流量進行地址轉換後,地址轉換的結果相同的情況。例如,當HA中的兩台設備使用不同地址範圍的NAT地址組/NAT端口塊組時(通過NAT規則引用的ACL匹配用戶流量,實現不同源IP地址範圍的用戶流量使用不同的NAT地址組/NAT端口塊組進行地址轉換),不同的內網用戶設置不同的網關地址,使得正向地址轉換的流量由不同的Master設備進行處理。請在HA的主管理設備上將不同的NAT地址組或NAT端口塊組與不同的VRRP備份組綁定,從而引導反向地址轉換的流量使用不同的Master設備進行地址轉換,實現NAT業務的負載分擔。
(1) 進入係統視圖。
system-view
(2) 將地址轉換配置與VRRP備份組綁定。請根據網絡需求選擇步驟(3)~(8)中的一項或多項進行配置。
(3) 將NAT地址組與VRRP備份組綁定。
a. 進入NAT地址組視圖。
nat address-group group-id [ name group-name ]
b. 將NAT地址組與VRRP備份組綁定。
vrrp vrid virtual-router-id
缺省情況下,NAT地址組未綁定任何VRRP備份組。
重複執行本命令,最後一次執行的命令生效。
(4) 將NAT端口塊組與VRRP備份組綁定。
a. 進入NAT端口塊組視圖。
nat port-block-group group-id
b. 將NAT地址組或NAT端口塊組與VRRP備份組綁定。
vrrp vrid virtual-router-id
缺省情況下,NAT地址組或NAT端口塊組未綁定任何VRRP備份組。
重複執行本命令,最後一次執行的命令生效。
(5) 將出方向一對一靜態地址轉換映射與VRRP備份組綁定。
請參見“3.3.3 配置出方向一對一靜態地址轉換”。
(6) 將出方向網段到網段的靜態地址轉換映射VRRP備份組綁定。
請參見“3.3.4 配置出方向網段對網段靜態地址轉換”。
(7) 將基於對象組的出方向靜態地址轉換映射VRRP備份組綁定。
請參見“3.3.5 配置基於對象組的出方向靜態地址轉換”。
(8) 將NAT內部服務器與VRRP備份組綁定。
a. 進入接口視圖。
interface interface-type interface-number
b. 將NAT內部服務器與VRRP備份組綁定。
請參見“3.5.2 配置普通內部服務器”、“3.5.4 配置負載分擔內部服務器”、“3.5.5 配置基於ACL的內部服務器”和“3.5.6 配置基於對象組的內部服務器”。
(9) (可選)指定HA中主、從管理設備可以使用的NAT端口塊範圍。
a. 退回係統視圖。
quit
b. 指定HA中主、從管理設備可以使用的NAT端口塊範圍。
nat remote-backup port-alloc { primary | secondary }
缺省情況下,HA中的主、從管理設備共用NAT端口資源。
參數 |
功能 |
primary |
表示使用數值較小的一半端口 |
secondary |
表示使用數值較大的一半端口 |
開啟NAT定時統計功能後,NAT將按照一定的時間間隔對每個地址組中的會話數目和端口塊分配衝突計數進行統計。
使用本功能可能會占用較多的CPU資源,當CPU資源緊張時,可將其關閉。
(1) 進入係統視圖。
system-view
(2) 開啟NAT定時統計功能。
nat periodic-statistics enable
缺省情況下,NAT定時統計功能處於關閉狀態。
(3) 配置NAT定時統計功能的時間間隔。
nat periodic-statistics interval interval
缺省情況下,NAT定時統計功能的時間間隔為300秒。
如果將NAT定時統計功能的時間間隔調小,會占用較多的CPU資源。通常情況下,建議使用缺省值。
開啟此功能後,設備會對新建NAT會話的速率進行統計,統計信息可以通過display nat statistics命令查看。
(1) 進入係統視圖。
system-view
(2) 開啟新建NAT會話速率的統計功能。
nat session create-rate enable
缺省情況下,新建NAT會話速率的統計功能處於關閉狀態。
通過在地址組中引用NQA模板來實現檢測NAT地址組中地址可用性的目的。關於NQA的詳細介紹,請參見“網絡管理和監控配置指導”中的“NQA”。
檢測NAT地址組成員可用性的詳細過程如下:
(1) 引用NQA探測模板後,設備會周期性地向NQA模板中指定的目的地址依次發送探測報文,其中各探測報文的源IP地址是地址池中的IP地址。
(2) 若設備在當前探測周期內沒有收到NQA探測應答報文,則將該探測報文的源IP地址從地址池中排除,即在本探測周期內禁止該IP地址用於地址轉換。
(3) 下一個探測周期重複以上過程。被排除的IP地址也會重新進行可用性探測。
一個NAT地址組視圖下,可指定多個NQA探測模板。當指定多個NQA探測模板時,隻要有一個NQA探測模板探測成功,則表示該地址可用於地址轉換。
本功能僅對用於出方向地址轉換的地址成員的可用性進行檢測。不對通過exclude-ip命令配置的禁止用於地址轉換的IP地址的可用性進行檢測。
引用的NQA探測模板中,不能配置探測報文的源IP地址。
(1) 進入係統視圖。
system-view
(2) 進入NAT地址組視圖。
nat address-group group-id [ name group-name ]
(3) 指定NAT地址組中地址成員的檢測方法。
probe template-name
缺省情況下,未指定NAT地址組中地址成員的檢測方法。
指定的檢測方法可以不存在,但要使檢測功能生效,必須通過nqa template命令創建檢測方法所使用的NQA模板。
缺省情況下,NAT設備對ICMP報文的地址轉換失敗時,不會發送ICMP差錯報文,從而導致使用ICMP協議報文的應用無法感知此事件。開啟本功能後,NAT設備對ICMP報文地址轉換失敗時,會發送ICMP差錯報文,使用ICMP協議報文的應用根據收到的ICMP差錯報文發現和定位問題。
(1) 進入係統視圖。
system-view
(2) 開啟設備NAT轉換失敗發送ICMP差錯報文功能。
nat icmp-error reply
缺省情況下,NAT轉換失敗時,設備不發送ICMP差錯報文。
缺省情況下,當NAT配置發生變更時(例如添加、刪除、修改或移動NAT規則),對於已經建立的連接,配置變更可能會導致該連接上的流量匹配到了新的NAT規則,此時需要重新建立連接。
如果不希望NAT配置變更影響已經建立的連接,請配置nat configuration-for-new-connection enable命令。配置本命令後,NAT配置變更時,對於已經建立的連接上的流量,設備仍然使用配置變更前的地址轉換規則進行地址轉換。對於新建立的連接上的流量,根據NAT配置變更後的NAT規則優先級順序進行流量匹配,並使用匹配上的NAT規則進行地址轉換。
本特性的支持情況與設備型號有關,請以設備的實際情況為準。
F1000係列 |
型號 |
說明 |
F1000-X-G5係列 |
F1000-A-G5、F1000-C-G5、F1000-C-G5-LI、F1000-E-G5、F1000-H-G5、F1000-S-G5 |
支持 |
F1000-X-XI係列 |
F1000-D-XI、F1000-E-XI |
支持 |
F100係列 |
型號 |
說明 |
F100-X-G5係列 |
F100-A-G5、F100-C-G5、F100-E-G5、F100-M-G5、F100-S-G5 |
支持 |
F100-C-A係列 |
F100-C-A2、F100-C-A1 |
不支持 |
F100-X-XI係列 |
F100-C-XI、F100-S-XI |
支持 |
F100-A-XI |
不支持 |
(1) 進入係統視圖。
system-view
(2) 開啟地址轉換配置變更僅對新連接生效的功能。
nat configuration-for-new-connection enable
缺省情況下,地址轉換配置變更僅對新連接生效的功能處於關閉狀態。
NAT會話日誌是為了滿足網絡管理員安全審計的需要,對NAT會話(報文經過設備時,源或目的信息被NAT進行過轉換的連接)信息進行的記錄,包括IP地址及端口的轉換信息、用戶的訪問信息以及用戶的網絡流量信息。
有三種情況可以觸發設備生成NAT會話日誌:
· 新建NAT會話。
· 刪除NAT會話。新增高優先級的配置、刪除配置、報文匹配規則變更、NAT會話老化以及執行刪除NAT會話的命令時,都可能導致NAT會話被刪除。
· 存在NAT活躍流。NAT活躍流是指在一定時間內存在的NAT會話。當設置的生成活躍流日誌的時間間隔到達時,當前存在的NAT會話信息就被記錄並生成日誌。
(1) 進入係統視圖。
system-view
(2) 開啟NAT日誌功能。
nat log enable [ acl { ipv4-acl-number | name ipv4-acl-name } ]
缺省情況下,NAT日誌功能處於關閉狀態。
(3) 開啟NAT相關日誌功能。請至少選擇其中一項進行配置。
¡ 開啟NAT新建會話的日誌功能。
nat log flow-begin
¡ 開啟NAT刪除會話的日誌功能。
nat log flow-end
¡ 開啟NAT活躍流的日誌功能,並設置生成活躍流日誌的時間間隔。
nat log flow-active time-value
缺省情況下,創建、刪除NAT會話或存在NAT活躍流時,均不生成NAT日誌。
NAT444用戶日誌是為了滿足互聯網用戶溯源的需要,在NAT444地址轉換中,對每個用戶的私網IP地址進行端口塊分配或回收時,都會輸出一條基於用戶的日誌,記錄私網IP地址和端口塊的映射關係。在進行用戶溯源時,隻需根據報文的公網IP地址和端口找到對應的端口塊分配日誌信息,即可確定私網IP地址。
有兩種情況可以觸發設備輸出NAT444用戶日誌:
· 端口塊分配:端口塊靜態映射方式下,在某私網IP地址的第一個新建連接通過端口塊進行地址轉換時輸出日誌;端口塊動態映射方式下,在為某私網IP地址分配端口塊或增量端口塊時輸出日誌。
· 端口塊回收:端口塊靜態映射方式下,在某私網IP地址的最後一個連接拆除時輸出日誌;端口塊動態映射方式下,在釋放端口塊資源(並刪除端口塊表項)時輸出日誌。
在配置NAT444用戶日誌功能前,必須先配置將用戶定製日誌發送到日誌主機的功能,否則無法產生NAT444用戶日誌。詳細配置請參見“網絡管理和監控配置指導”中的“信息中心”。
(1) 進入係統視圖。
system-view
(2) 開啟NAT日誌功能。
nat log enable [ acl { ipv4-acl-number | name ipv4-acl-name } ]
缺省情況下,NAT日誌功能處於關閉狀態。
ACL參數對NAT444用戶日誌功能無效。
(3) 開啟端口塊用戶日誌功能。請至少選擇其中一項進行配置。
¡ 開啟端口塊分配的NAT444用戶日誌功能。
nat log port-block-assign
¡ 開啟端口塊回收的NAT444用戶日誌功能。
nat log port-block-withdraw
缺省情況下,分配和回收端口塊時,均不輸出NAT444用戶日誌。
在NAT地址轉換中,如果可為用戶分配的NAT資源用盡,後續連接由於沒有可用的資源無法對其進行地址轉換,相應的報文將被丟棄。本命令用來在NAT資源用盡時輸出告警日誌。在NO-PAT動態映射中,NAT資源是指公網IP地址;在EIM模式的PAT動態映射中,NAT資源是指公網IP地址和端口;在NAT444地址轉換中,NAT資源是指公網IP、端口塊和端口塊中的端口。
NAT444端口塊動態映射方式中,當端口塊分配失敗時,係統會輸出日誌信息。
NAT444端口塊動態映射方式中,當端口塊中的端口資源都用盡但還是無法滿足用戶的地址轉換需求時,係統會輸出日誌信息。
隻有開啟NAT日誌功能(通過nat log enable命令)之後,NAT告警信息日誌功能才能生效。
在配置NAT告警信息日誌功能前,必須先配置將用戶定製日誌發送到日誌主機的功能,否則無法產生NAT告警信息日誌。詳細配置請參見“網絡管理和監控配置指導”中的“信息中心”。
(1) 進入係統視圖。
system-view
(2) 開啟NAT日誌功能。
nat log enable [ acl { ipv4-acl-number | name ipv4-acl-name } ]
缺省情況下,NAT日誌功能處於關閉狀態。
ACL參數對NAT告警信息日誌功能無效。
(3) 開啟NAT告警信息的日誌功能。
nat log alarm
缺省情況下,NAT告警信息日誌功能處於關閉狀態。
NAT資源用盡時,係統會輸出告警日誌。
(4) (可選)配置動態NAT444端口塊使用率的閾值。
nat log port-block usage threshold threshold-value
缺省情況下,動態NAT444的端口塊使用率的閾值為90%。
創建動態端口塊表項時,若端口塊的使用率大於閾值,係統會輸出告警日誌。
創建NO-PAT表項時,若NO-PAT方式下NAT地址組中地址成員的使用率超過設定的百分比時,係統將會輸出日誌信息。
隻有開啟NAT日誌功能(通過nat log enable命令)之後,NAT地址組中地址成員使用率的日誌信息功能才能生效。
(1) 進入係統視圖。
system-view
(2) 開啟NAT日誌功能。
nat log enable [ acl { ipv4-acl-number | name ipv4-acl-name } ]
缺省情況下,NAT日誌功能處於關閉狀態。
ACL參數對NO-PAT方式下NAT地址組中地址成員使用率的日誌信息功能無效。
(3) 開啟NO-PAT方式下NAT地址組中地址成員使用率的日誌信息功能,並設置NAT地址組中地址成員使用率的閾值。
nat log no-pat ip-usage [ threshold value ]
缺省情況下,NAT地址組中地址成員使用率的日誌信息功能處於關閉狀態。
本功能用於在NAT動態端口塊資源的使用率過高或資源恢複時,向網絡管理係統發送Trap消息進行告警。具體工作機製如下:
(1) 當NAT動態端口塊資源的使用率大於或等於本功能設置的閾值時,NAT會生成Trap告警信息。
(2) 當NAT動態端口塊資源的使用率回落到小於本功能設置的閾值時,NAT會生成Trap告警信息,提示用戶端口塊資源恢複。
生成的告警信息將被送到設備的SNMP模塊,通過設置SNMP中的告警信息的發送參數,來決定告警信息輸出的相關屬性。有關告警信息的詳細介紹,請參見“網絡管理和監控配置指導”中的“SNMP”。
(1) 進入係統視圖。
system-view
(2) 開啟NAT日誌功能。
nat trap port-block threshold threshold-value
缺省情況下,NAT動態端口塊資源使用率的告警閾值為95%。
NAT地址組下通過配置probe命令引用NQA模板來檢測NAT地址組中地址可用性時,會將不可用的IP地址從地址組中排除。排除不可用IP地址的過程中,如下兩種情況會觸發NAT發送Trap消息:
· 當不可用IP地址的排除率大於本功能設置的閾值導致剩餘IP地址不足時,NAT會生成Trap告警信息。
· 當不可用IP地址的排除率回落到低於本功能設置的閾值時,NAT會生成Trap告警信息,提示用戶可用IP地址資源充足。
生成的告警信息將被送到設備的SNMP模塊,通過設置SNMP中的告警信息的發送參數,來決定告警信息輸出的相關屬性。有關告警信息的詳細介紹,請參見“網絡管理和監控配置指導”中的“SNMP”。
(1) 進入係統視圖。
system-view
(2) 開啟NAT日誌功能。
nat trap nqa threshold upper-limit upperlimit-value lower-limit lowerlimit-value
缺省情況下,NAT地址組通過NQA探測排除不可用IP地址時,係統會在不可用IP地址的排除率高於90%或者低於85%的情況下發送Trap消息進行告警。
本功能用於在NO-PAT模式NAT地址資源的使用率過高或資源恢複時,向網絡管理係統發送Trap消息進行告警。具體工作機製如下:
(1) 當NO-PAT模式NAT地址資源的使用率大於或等於本功能設置的閾值時,NAT會生成Trap告警信息。
(2) 當NO-PAT模式NAT地址資源的使用率回落到小於本功能設置的閾值時,NAT會生成Trap告警信息,提示用戶NO-PAT模式NAT地址資源恢複。
生成的告警信息將被送到設備的SNMP模塊,通過設置SNMP中的告警信息的發送參數,來決定告警信息輸出的相關屬性。有關告警信息的詳細介紹,請參見“網絡管理和監控配置指導”中的“SNMP”。
(1) 進入係統視圖。
system-view
(2) 開啟NAT日誌功能。
nat trap no-pat ip-usage threshold threshold-value
缺省情況下,NO-PAT模式NAT地址資源使用率的告警閾值為95%。
在入方向動態地址轉換功能與隧道功能配合使用的組網環境中,若多個隧道接口引用同一個NAT地址組,則設備會將來自不同隧道的報文的源IP地址轉換為相同的NAT地址,並從設備的出接口轉發出去。缺省情況下,設備出接口收到反向報文後,不會查詢NAT會話表項,這將導致反向報文不能正確轉發。為解決此問題,可在設備的出接口開啟反向報文的重定向功能,使出接口收到反向報文後查詢NAT會話表項,根據NAT會話表項記錄的信息將反向報文的目的IP地址進行NAT地址轉換,從而使反向報文通過接收正向報文的隧道發送出去。
(1) 進入係統視圖。
system-view
(2) 進入接口視圖。
interface interface-type interface-number
(3) 開啟反向報文的重定向功能。
nat redirect reply-route enable
缺省情況下,反向報文的重定向功能處於關閉狀態。
在PAT方式的動態地址轉換(即接口上配置了nat inbound或nat outbound命令)組網環境中,若服務器上同時開啟了tcp_timestams和tcp_tw_recycle功能,則Client與Server之間可能會出現無法建立TCP連接的現象。
為了解決以上問題,可在服務器上關閉tcp_tw_recycle功能或在設備上開啟對TCP SYN和SYN ACK報文中時間戳的刪除功能。
(1) 進入係統視圖。
system-view
(2) 開啟對TCP SYN和SYN ACK報文中時間戳的刪除功能。
nat timestamp delete [ vpn-instance vpn-instance-name ]
缺省情況下,不對TCP SYN和SYN ACK報文中的時間戳進行刪除。
多次執行本命令,可為不同VPN中的報文開啟此功能。
廣域網雙出口組網環境中,分別在NAT設備的出接口(假設為Interface A和Interface B)下配置出方向動態地址轉換(引用不同的地址組),基於出接口所屬安全域的不同情況,NAT設備的處理機製有所不同:
· 如果兩個出接口屬於不同的安全域,當Interface A的鏈路發生故障切換到Interface B的鏈路時,NAT設備會刪除原來的會話表項,由流量觸發重新建立NAT會話,保證用戶訪問外網的業務不受影響。
· 如果兩個出接口屬於相同的安全域,當Interface A的鏈路發生故障切換到Interface B的鏈路時,NAT設備不會刪除原來的會話表項,流量與原來的會話表項匹配,導致用戶無法訪問外網。為了避免該問題的發生,請開啟本功能,保證用戶業務的可用性。
(1) 進入係統視圖。
system-view
(2) 開啟主備鏈路切換後的NAT會話重建功能。
nat link-switch recreate-session
缺省情況下,主備鏈路切換後的NAT會話重建功能處於關閉狀態。
在完成上述配置後,在任意視圖下執行display命令可以顯示NAT配置後的運行情況,通過查看顯示信息驗證配置的效果。
在用戶視圖下,執行reset命令可以清除NAT表項。
表3-1 NAT顯示和維護
操作 |
命令 |
顯示NAT ALG功能的開啟狀態 |
display nat alg |
顯示所有的NAT配置信息 |
display nat all |
顯示NAT地址組的配置信息 |
display nat address-group [ group-id ] |
顯示NAT DNS mapping的配置信息 |
display nat dns-map |
顯示NAT EIM表項信息 |
display nat eim [ slot slot-number ] |
顯示NAT入接口動態地址轉換關係的配置信息 |
display nat inbound |
顯示NAT日誌功能的配置信息 |
display nat log |
顯示NAT NO-PAT表項信息 |
display nat no-pat { ipv4 | ipv6 } [ slot slot-number ] |
顯示NO-PAT方式下NAT地址組中地址成員的使用率 |
display nat no-pat ip-usage [ address-group { group-id | name group-name } | object-group object-group-name ] [ slot slot-number ] |
顯示NAT出接口動態地址轉換關係的配置信息 |
display nat outbound |
顯示NAT定時統計功能的計數信息 |
display nat periodic-statistics { address-group [ group-id | name group-name ] | ip global-ip } [ slot slot-number ] |
顯示接口NAT策略的配置信息 |
display nat policy |
顯示NAT內部服務器的配置信息 |
display nat server |
顯示NAT內部服務器組的配置信息 |
display nat server-group [ group-id ] |
顯示NAT會話 |
display nat session [ [ responder ] { source-ip source-ip-start [ source-ip-end ] | destination-ip destination-ip-start [ destination-ip-end ] | source-port source-port | destination-port destination-port | protocol { dccp | icmp | raw-ip | sctp | tcp | udp | udp-lite } | application application-name | state { dccp-closereq | dccp-closing | dccp-open | dccp-partopen | dccp-request | dccp-respond | dccp-timewait | icmp-reply | icmp-request | rawip-open | rawip-ready | sctp-closed | sctp-cookie-echoed | sctp-cookie-wait | sctp-established | sctp-shutdown-ack-sent | sctp-shutdown-recd | sctp-shutdown-sent | tcp-close | tcp-close-wait | tcp-est | tcp-fin-wait | tcp-last-ack | tcp-syn-recv | tcp-syn-sent | tcp-syn-sent2 | tcp-time-wait | udp-open | udp-ready | udplite-open | udplite-ready } | interface { interface-name | interface-type interface-number } } * [ vpn-instance vpn -instance-name ] ] [ slot slot-number ] [ verbose ] |
顯示NAT靜態地址轉換的配置信息 |
display nat static |
顯示NAT統計信息 |
display nat statistics [ summary ] [ slot slot-number ] |
顯示NAT444端口塊靜態映射的配置信息 |
display nat outbound port-block-group |
顯示NAT端口塊組配置信息 |
display nat port-block-group [ group-id ] |
顯示端口塊表項 |
display nat port-block { dynamic [ address-group { group-id | name group-name } ] [ ds-lite-b4 ] | static [ port-block-group group-id ] } [ slot slot-number ] |
顯示動態NAT444地址組中端口塊的使用率 |
display nat port-block-usage [ address-group group-id ] [ slot slot-number ] |
顯示NAT地址組中地址成員的檢測信息 |
display nat probe address-group [ group-id ] |
清除NAT轉換計數信息 |
reset nat count statistics { all | dynamic | policy | server | static | static-port-block } |
清除NAT定時統計功能的計數信息 |
reset nat periodic-statistics [ slot slot-number ] |
刪除NAT會話 |
reset nat session [ slot slot-number ] |
內部網絡用戶10.110.10.8/24使用外網地址202.38.1.100訪問Internet。
圖3-3 內網用戶通過NAT地址訪問外網配置組網圖(靜態地址轉換)
# 配置接口IP地址、路由、安全域及域間策略保證網絡可達,具體配置步驟略。
# 配置內網IP地址10.110.10.8到外網地址202.38.1.100之間的一對一靜態地址轉換映射。
<Device> system-view
[Device] nat static outbound 10.110.10.8 202.38.1.100
# 使配置的靜態地址轉換在接口GigabitEthernet1/0/2上生效。
[Device] interface gigabitethernet 1/0/2
[Device-GigabitEthernet1/0/2] nat static enable
[Device-GigabitEthernet1/0/2] quit
# 以上配置完成後,內網主機可以訪問外網服務器。通過查看如下顯示信息,可以驗證以上配置成功。
[Device] display nat static
Static NAT mappings:
Totally 1 outbound static NAT mappings.
IP-to-IP:
Local IP : 10.110.10.8
Global IP : 202.38.1.100
Config status: Active
Interfaces enabled with static NAT:
Totally 1 interfaces enabled with static NAT.
Interface: GigabitEthernet1/0/2
Config status: Active
# 通過以下顯示命令,可以看到Host訪問某外網服務器時生成NAT會話信息。
[Device] display nat session verbose
Slot 1:
Initiator:
Source IP/port: 10.110.10.8/54765
Destination IP/port: 202.38.1.2/23
DS-Lite tunnel peer: -
VPN instance/VLAN ID/Inline ID: -/-/-
Protocol: TCP(6)
Inbound interface: GigabitEthernet1/0/1
Source security zone: Trust
Responder:
Source IP/port: 202.38.1.2/23
Destination IP/port: 202.38.1.100/54765
DS-Lite tunnel peer: -
VPN instance/VLAN ID/Inline ID: -/-/-
Protocol: TCP(6)
Inbound interface: GigabitEthernet1/0/2
Source security zone: Untrust
State: TCP_ESTABLISHED
Application: TELNET
Rule ID: -/-/-
Rule name:
Start time: 2017-05-19 10:57:47 TTL: 1195s
Initiator->Responder: 8 packets 375 bytes
Responder->Initiator: 10 packets 851 bytes
· 某公司內網使用的IP地址為192.168.0.0/16。
· 該公司擁有202.38.1.2和202.38.1.3兩個外網IP地址。
· 需要實現,內部網絡中192.168.1.0/24網段的用戶可以訪問Internet,其它網段的用戶不能訪問Internet。使用的外網地址為202.38.1.2和202.38.1.3。
圖3-4 內網用戶通過NAT訪問外網配置組網圖(地址不重疊)
# 配置接口IP地址、路由、安全域及域間策略保證網絡可達,具體配置步驟略。
# 配置地址組0,包含兩個外網地址202.38.1.2和202.38.1.3。
<Device> system-view
[Device] nat address-group 0
[Device-address-group-0] address 202.38.1.2 202.38.1.3
[Device-address-group-0] quit
# 配置ACL 2000,僅允許對內部網絡中192.168.1.0/24網段的用戶報文進行地址轉換。
[Device] acl basic 2000
[Device-acl-ipv4-basic-2000] rule permit source 192.168.1.0 0.0.0.255
[Device-acl-ipv4-basic-2000] quit
# 在接口GigabitEthernet1/0/2上配置出方向動態地址轉換,允許使用地址組0中的地址對匹配ACL 2000的報文進行源地址轉換,並在轉換過程中使用端口信息。
[Device] interface gigabitethernet 1/0/2
[Device-GigabitEthernet1/0/2] nat outbound 2000 address-group 0
[Device-GigabitEthernet1/0/2] quit
# 以上配置完成後,Host A能夠訪問WWW server,Host B和Host C無法訪問WWW server。通過查看如下顯示信息,可以驗證以上配置成功。
[Device] display nat all
NAT address group information:
Totally 1 NAT address groups.
Address group ID: 0
Port range: 1-65535
Address information:
Start address End address
202.38.1.2 202.38.1.3
Exclude address information:
Start address End address
--- ---
NAT outbound information:
Totally 1 NAT outbound rules.
Interface: GigabitEthernet1/0/2
ACL: 2000
Address group ID: 0
Port-preserved: N NO-PAT: N Reversible: N
Config status: Active
NAT logging:
Log enable : Disabled
Flow-begin : Disabled
Flow-end : Disabled
Flow-active : Disabled
Port-block-assign : Disabled
Port-block-withdraw : Disabled
Alarm : Disabled
NO-PAT IP usage : Disabled
NAT mapping behavior:
Mapping mode : Address and Port-Dependent
ACL : ---
Config status: Active
NAT ALG:
DNS : Enabled
FTP : Enabled
H323 : Disabled
ICMP-ERROR : Enabled
ILS : Disabled
MGCP : Disabled
NBT : Disabled
PPTP : Enabled
RTSP : Enabled
RSH : Disabled
SCCP : Disabled
SIP : Disabled
SQLNET : Disabled
TFTP : Disabled
XDMCP : Disabled
Static NAT load balancing: Disabled
NAT link-switch recreate-session: Disabled
NAT configuration-for-new-connection: Disabled
NAT global-policy compatible-previous-version rule-type ipv4-snat-and-dnat translate-before-secp : Disabled
NAT gratuitous-arp: Enabled
# 通過以下顯示命令,可以看到Host A訪問WWW server時生成NAT會話信息。
[Device] display nat session verbose
Slot 1:
Initiator:
Source IP/port: 192.168.1.10/52082
Destination IP/port: 200.1.1.10/80
DS-Lite tunnel peer: -
VPN instance/VLAN ID/Inline ID: -/-/-
Protocol: TCP(6)
Inbound interface: GigabitEthernet1/0/1
Source security zone: Trust
Responder:
Source IP/port: 200.1.1.10/80
Destination IP/port: 202.38.1.2/1036
DS-Lite tunnel peer: -
VPN instance/VLAN ID/Inline ID: -/-/-
Protocol: TCP(6)
Inbound interface: GigabitEthernet1/0/2
Source security zone: Untrust
State: TCP_ESTABLISHED
Application: HTTP
Rule ID: -/-/-
Rule name:
Start time: 2017-05-19 16:16:59 TTL: 9995s
Initiator->Responder: 551 packets 32547 bytes
Responder->Initiator: 956 packets 1385514 bytes
Total sessions found: 1
· 某公司內網網段地址為192.168.1.0/24,該網段與要訪問的外網Web服務器所在網段地址重疊。
· 該公司擁有202.38.1.2和202.38.1.3兩個外網IP地址。
· 需要實現,內網用戶可以通過域名訪問外網的Web服務器。
圖3-5 內網用戶通過NAT訪問外網配置組網圖(地址重疊)
這是一個典型的雙向NAT應用,具體配置思路如下。
· 內網主機通過域名訪問外網Web服務器時,首先需要向外網的DNS服務器發起DNS查詢請求。由於外網DNS服務器回複給內網主機的DNS應答報文載荷中的攜帶的Web服務器地址與內網主機地址重疊,因此NAT設備需要將載荷中的Web服務器地址轉換為動態分配的一個NAT地址。動態地址分配可以通過入方向動態地址轉換實現,載荷中的地址轉換需要通過DNS ALG功能實現。
· 內網主機得到外網Web服務器的IP地址之後(該地址為臨時分配的NAT地址),通過該地址訪問外網Web服務器。由於內網主機的地址與外網Web服務器的真實地址重疊,因此也需要為其動態分配一個NAT地址,可以通過出方向動態地址轉換實現。
· 外網Web服務器對應的NAT地址在NAT設備上沒有路由,因此需要手工添加靜態路由,使得目的地址為外網服務器NAT地址的報文出接口為GigabitEthernet1/0/2。
# 配置接口IP地址、路由、安全域及域間策略保證網絡可達,具體配置步驟略。
# 開啟DNS的NAT ALG功能。
<Device> system-view
[Device] nat alg dns
# 配置ACL 2000,僅允許對192.168.1.0/24網段的用戶報文進行地址轉換。
[Device] acl basic 2000
[Device-acl-ipv4-basic-2000] rule permit source 192.168.1.0 0.0.0.255
[Device-acl-ipv4-basic-2000] quit
# 創建地址組1。
[Device] nat address-group 1
# 添加地址組成員202.38.1.2。
[Device-address-group-1] address 202.38.1.2 202.38.1.2
[Device-address-group-1] quit
# 創建地址組2。
[Device] nat address-group 2
# 添加地址組成員202.38.1.3。
[Device-address-group-2] address 202.38.1.3 202.38.1.3
[Device-address-group-2] quit
# 在接口GigabitEthernet1/0/2上配置入方向動態地址轉換,允許使用地址組1中的地址對DNS應答報文載荷中的外網地址進行轉換,並在轉換過程中不使用端口信息,以及允許反向地址轉換。
[Device] interface gigabitethernet 1/0/2
[Device-GigabitEthernet1/0/2] nat inbound 2000 address-group 1 no-pat reversible
# 在接口GigabitEthernet1/0/2上配置出方向動態地址轉換,允許使用地址組2中的地址對內網訪問外網的報文進行源地址轉換,並在轉換過程中使用端口信息。
[Device-GigabitEthernet1/0/2] nat outbound 2000 address-group 2
[Device-GigabitEthernet1/0/2] quit
# 配置靜態路由,目的地址為外網服務器NAT地址202.38.1.2,出接口為GigabitEthernet1/0/2,下一跳地址為20.2.2.2(20.2.2.2為本例中的直連下一跳地址,實際使用中請以具體組網情況為準)。
[Device] ip route-static 202.38.1.2 32 gigabitethernet 1/0/2 20.2.2.2
以上配置完成後,Host A能夠通過域名訪問Web server。通過查看如下顯示信息,可以驗證以上配置成功。
[Device] display nat all
NAT address group information:
Totally 2 NAT address groups.
Address group ID: 1
Port range: 1-65535
Address information:
Start address End address
202.38.1.2 202.38.1.2
Exclude address information:
Start address End address
--- ---
Address group ID: 2
Port range: 1-65535
Address information:
Start address End address
202.38.1.3 202.38.1.3
Exclude address information:
Start address End address
--- ---
NAT inbound information:
Totally 1 NAT inbound rules.
Interface: GigabitEthernet1/0/2
ACL: 2000
Address group ID: 1
Add route: N NO-PAT: Y Reversible: Y
Config status: Active
NAT outbound information:
Totally 1 NAT outbound rules.
Interface: GigabitEthernet1/0/2
ACL: 2000
Address group ID: 2
Port-preserved: N NO-PAT: N Reversible: N
Config status: Active
NAT logging:
Log enable : Disabled
Flow-begin : Disabled
Flow-end : Disabled
Flow-active : Disabled
Port-block-assign : Disabled
Port-block-withdraw : Disabled
Alarm : Disabled
NO-PAT IP usage : Disabled
NAT mapping behavior:
Mapping mode : Address and Port-Dependent
ACL : ---
Config status: Active
NAT ALG:
DNS : Enabled
FTP : Enabled
H323 : Disabled
ICMP-ERROR : Enabled
ILS : Disabled
MGCP : Disabled
NBT : Disabled
PPTP : Enabled
RTSP : Enabled
RSH : Disabled
SCCP : Disabled
SIP : Disabled
SQLNET : Disabled
TFTP : Disabled
XDMCP : Disabled
Static NAT load balancing: Disabled
NAT link-switch recreate-session: Disabled
NAT configuration-for-new-connection: Disabled
NAT global-policy compatible-previous-version rule-type ipv4-snat-and-dnat translate-before-secp : Disabled
NAT gratuitous-arp: Enabled
# 通過以下顯示命令,可以看到Host A訪問WWW server時生成NAT會話信息。
[Device] display nat session verbose
Slot 1:
Initiator:
Source IP/port: 192.168.1.10/51716
Destination IP/port: 202.38.1.2/80
DS-Lite tunnel peer: -
VPN instance/VLAN ID/Inline ID: -/-/-
Protocol: TCP(6)
Inbound interface: GigabitEthernet1/0/1
Source security zone: Trust
Responder:
Source IP/port: 202.38.1.2/80
Destination IP/port: 202.38.1.3/1059
DS-Lite tunnel peer: -
VPN instance/VLAN ID/Inline ID: -/-/-
Protocol: TCP(6)
Inbound interface: GigabitEthernet1/0/2
Source security zone: Untrust
State: TCP_ESTABLISHED
Application: HTTP
Rule ID: -/-/-
Rule name:
Start time: 2017-05-21 15:36:29 TTL: 1197s
Initiator->Responder: 125 packets 6304 bytes
Responder->Initiator: 223 packets 325718 bytes
Total sessions found: 1
某公司內部對外提供Web、FTP和SMTP服務,而且提供兩台Web服務器。公司內部網址為10.110.0.0/16。其中,內部FTP服務器地址為10.110.10.3/16,內部Web服務器1的IP地址為10.110.10.1/16,內部Web服務器2的IP地址為10.110.10.2/16,內部SMTP服務器IP地址為10.110.10.4/16。公司擁有202.38.1.1至202.38.1.3三個公網IP地址。需要實現如下功能:
· 外部的主機可以訪問內部的服務器。
· 選用202.38.1.1作為公司對外提供服務的IP地址,Web服務器2對外采用8080端口。
圖3-6 外網用戶通過外網地址訪問內網服務器配置組網圖
# 配置接口IP地址、路由、安全域及域間策略保證網絡可達,具體配置步驟略。
# 進入接口GigabitEthernet1/0/2。
<Device> system-view
[Device] interface gigabitethernet 1/0/2
# 配置內部FTP服務器,允許外網主機使用地址202.38.1.1、端口號21訪問內網FTP服務器。
[Device-GigabitEthernet1/0/2] nat server protocol tcp global 202.38.1.1 21 inside 10.110.10.3 ftp
# 配置內部Web服務器1,允許外網主機使用地址202.38.1.1、端口號80訪問內網Web服務器1。
[Device-GigabitEthernet1/0/2] nat server protocol tcp global 202.38.1.1 80 inside 10.110.10.1 http
# 配置內部Web服務器2,允許外網主機使用地址202.38.1.1、端口號8080訪問內網Web服務器2。
[Device-GigabitEthernet1/0/2] nat server protocol tcp global 202.38.1.1 8080 inside 10.110.10.2 http
# 配置內部SMTP服務器,允許外網主機使用地址202.38.1.1以及SMTP協議定義的端口訪問內網SMTP服務器。
[Device-GigabitEthernet1/0/2] nat server protocol tcp global 202.38.1.1 smtp inside 10.110.10.4 smtp
[Device-GigabitEthernet1/0/2] quit
# 以上配置完成後,外網Host能夠通過NAT地址訪問各內網服務器。通過查看如下顯示信息,可以驗證以上配置成功。
[Device] display nat all
NAT internal server information:
Totally 4 internal servers.
Interface: GigabitEthernet1/0/2
Protocol: 6(TCP)
Global IP/port: 202.38.1.1/21
Local IP/port : 10.110.10.3/21
Rule name : ServerRule_1
NAT counting : 0
Config status : Active
Interface: GigabitEthernet1/0/2
Protocol: 6(TCP)
Global IP/port: 202.38.1.1/25
Local IP/port : 10.110.10.4/25
Rule name : ServerRule_4
NAT counting : 0
Config status : Active
Interface: GigabitEthernet1/0/2
Protocol: 6(TCP)
Global IP/port: 202.38.1.1/80
Local IP/port : 10.110.10.1/80
Rule name : ServerRule_2
NAT counting : 0
Config status : Active
Interface: GigabitEthernet1/0/2
Protocol: 6(TCP)
Global IP/port: 202.38.1.1/8080
Local IP/port : 10.110.10.2/80
Rule name : ServerRule_3
NAT counting : 0
Config status : Active
NAT logging:
Log enable : Disabled
Flow-begin : Disabled
Flow-end : Disabled
Flow-active : Disabled
Port-block-assign : Disabled
Port-block-withdraw : Disabled
Alarm : Disabled
NO-PAT IP usage : Disabled
NAT mapping behavior:
Mapping mode : Address and Port-Dependent
ACL : ---
Config status: Active
NAT ALG:
DNS : Enabled
FTP : Enabled
H323 : Disabled
ICMP-ERROR : Enabled
ILS : Disabled
MGCP : Disabled
NBT : Disabled
PPTP : Enabled
RTSP : Enabled
RSH : Disabled
SCCP : Disabled
SIP : Disabled
SQLNET : Disabled
TFTP : Disabled
XDMCP : Disabled
Static NAT load balancing: Disabled
NAT link-switch recreate-session: Disabled
NAT configuration-for-new-connection: Disabled
NAT global-policy compatible-previous-version rule-type ipv4-snat-and-dnat translate-before-secp : Disabled
NAT gratuitous-arp: Enabled
# 通過以下顯示命令,可以看到Host訪問FTP server時生成NAT會話信息。
[Device] display nat session verbose
Slot 1:
Initiator:
Source IP/port: 202.38.1.2/52802
Destination IP/port: 202.38.1.1/21
DS-Lite tunnel peer: -
VPN instance/VLAN ID/Inline ID: -/-/-
Protocol: TCP(6)
Inbound interface: GigabitEthernet1/0/2
Source security zone: Untrust
Responder:
Source IP/port: 10.110.10.3/21
Destination IP/port: 202.38.1.2/52802
DS-Lite tunnel peer: -
VPN instance/VLAN ID/Inline ID: -/-/-
Protocol: TCP(6)
Inbound interface: GigabitEthernet1/0/1
Source security zone: Trust
State: TCP_ESTABLISHED
Application: FTP
Rule ID: -/-/-
Rule name:
Start time: 2017-05-21 11:13:39 TTL: 3597s
Initiator->Responder: 7 packets 313 bytes
Responder->Initiator: 6 packets 330 bytes
Total sessions found: 1
· 某公司內部對外提供Web服務,Web服務器地址為10.110.10.2/24。
· 該公司在內網有一台DNS服務器,IP地址為10.110.10.3/24,用於解析Web服務器的域名。
· 該公司擁有兩個外網IP地址:202.38.1.2和202.38.1.3。
需要實現,外網主機可以通過域名訪問內網的Web服務器。
圖3-7 外網用戶通過域名訪問內網服務器配置組網圖(地址不重疊)
· 外網主機通過域名訪問Web服務器,首先需要通過訪問內網DNS服務器獲取Web服務器的IP地址,因此需要通過配置NAT內部服務器將DNS服務器的內網IP地址和DNS服務端口映射為一個外網地址和端口。
· DNS服務器回應給外網主機的DNS報文載荷中攜帶了Web服務器的內網IP地址,因此需要將DNS報文載荷中的內網IP地址轉換為一個外網IP地址。外網地址分配可以通過出方向動態地址轉換功能實現,轉換載荷信息可以通過DNS ALG功能實現。
# 配置接口IP地址、路由、安全域及域間策略保證網絡可達,具體配置步驟略。
# 開啟DNS協議的ALG功能。
<Device> system-view
[Device] nat alg dns
# 配置ACL 2000,允許對內部網絡中10.110.10.2的報文進行地址轉換。
[Device] acl basic 2000
[Device-acl-ipv4-basic-2000] rule permit source 10.110.10.2 0
[Device-acl-ipv4-basic-2000] quit
# 創建地址組1。
[Device] nat address-group 1
# 添加地址組成員202.38.1.3。
[Device-address-group-1] address 202.38.1.3 202.38.1.3
[Device-address-group-1] quit
# 在接口GigabitEthernet1/0/2上配置NAT內部服務器,允許外網主機使用地址202.38.1.2訪問內網DNS服務器。
[Device] interface gigabitethernet 1/0/2
[Device-GigabitEthernet1/0/2] nat server protocol udp global 202.38.1.2 inside 10.110.10.3 dns
# 在接口GigabitEthernet1/0/2上配置出方向動態地址轉換,允許使用地址組1中的地址對DNS應答報文載荷中的內網地址進行轉換,並在轉換過程中不使用端口信息,以及允許反向地址轉換。
[Device-GigabitEthernet1/0/2] nat outbound 2000 address-group 1 no-pat reversible
[Device-GigabitEthernet1/0/2] quit
# 以上配置完成後,外網Host能夠通過域名訪問內網Web server。通過查看如下顯示信息,可以驗證以上配置成功。
[Device] display nat all
NAT address group information:
Totally 1 NAT address groups.
Address group ID: 1
Port range: 1-65535
Address information:
Start address End address
202.38.1.3 202.38.1.3
Exclude address information:
Start address End address
--- ---
NAT outbound information:
Totally 1 NAT outbound rules.
Interface: GigabitEthernet1/0/2
ACL: 2000
Address group ID: 1
Port-preserved: N NO-PAT: Y Reversible: Y
Config status: Active
NAT internal server information:
Totally 1 internal servers.
Interface: GigabitEthernet1/0/2
Protocol: 17(UDP)
Global IP/port: 202.38.1.2/53
Local IP/port : 10.110.10.3/53
Rule name : ServerRule_1
NAT counting : 0
Config status : Active
NAT logging:
Log enable : Disabled
Flow-begin : Disabled
Flow-end : Disabled
Flow-active : Disabled
Port-block-assign : Disabled
Port-block-withdraw : Disabled
Alarm : Disabled
NO-PAT IP usage : Disabled
NAT mapping behavior:
Mapping mode : Address and Port-Dependent
ACL : ---
Config status: Active
NAT ALG:
DNS : Enabled
FTP : Enabled
H323 : Disabled
ICMP-ERROR : Enabled
ILS : Disabled
MGCP : Disabled
NBT : Disabled
PPTP : Enabled
RTSP : Enabled
RSH : Disabled
SCCP : Disabled
SIP : Disabled
SQLNET : Disabled
TFTP : Disabled
XDMCP : Disabled
Static NAT load balancing: Disabled
NAT link-switch recreate-session: Disabled
NAT configuration-for-new-connection: Disabled
NAT global-policy compatible-previous-version rule-type ipv4-snat-and-dnat translate-before-secp : Disabled
NAT gratuitous-arp: Enabled
# 通過以下顯示命令,可以看到Host訪問Web server時生成NAT會話信息。
[Device] display nat session verbose
Slot 1:
Initiator:
Source IP/port: 200.1.1.2/1694
Destination IP/port: 202.38.1.3/8080
DS-Lite tunnel peer: -
VPN instance/VLAN ID/Inline ID: -/-/-
Protocol: TCP(6)
Inbound interface: GigabitEthernet1/0/2
Source security zone: Untrust
Responder:
Source IP/port: 10.110.10.2/8080
Destination IP/port: 200.1.1.2/1694
DS-Lite tunnel peer: -
VPN instance/VLAN ID/Inline ID: -/-/-
Protocol: TCP(6)
Inbound interface: GigabitEthernet1/0/1
Source security zone: Trust
State: TCP_ESTABLISHED
Application: HTTP
Rule ID: -/-/-
Rule name:
Start time: 2017-06-15 14:53:29 TTL: 3597s
Initiator->Responder: 7 packets 308 bytes
Responder->Initiator: 5 packets 312 bytes
Total sessions found: 1
· 某公司內網使用的IP地址為192.168.1.0/24。
· 該公司內部對外提供Web服務,Web服務器地址為192.168.1.2/24。
· 該公司在內網有一台DNS服務器,IP地址為192.168.1.3/24,用於解析Web服務器的域名。
· 該公司擁有三個外網IP地址:202.38.1.2、202.38.1.3和202.38.1.4。
需要實現,外網主機可以通過域名訪問與其地址重疊的內網Web服務器。
圖3-8 外網用戶通過域名訪問內網服務器配置組網圖(地址重疊)
這是一個典型的雙向NAT應用,具體配置思路如下。
· 外網主機通過域名訪問Web服務器,首先需要訪問內部的DNS服務器獲取Web服務器的IP地址,因此需要通過配置NAT內部服務器將DNS服務器的內網IP地址和DNS服務端口映射為一個外網地址和端口。
· DNS服務器回應給外網主機的DNS報文載荷中攜帶了Web服務器的內網IP地址,該地址與外網主機地址重疊,因此在出方向上需要為內網Web服務器動態分配一個NAT地址,並將載荷中的地址轉換為該地址。NAT地址分配可以通過出方向動態地址轉換功能實現,轉換載荷信息可以通過DNS ALG功能實現。
· 外網主機得到內網Web服務器的IP地址之後(該地址為NAT地址),使用該地址訪問內網Web服務器,因為外網主機的地址與內網Web服務器的真實地址重疊,因此在入方向上也需要為外網主機動態分配一個NAT地址,可以通過入方向動態地址轉換實現。
· NAT設備上沒有目的地址為外網主機對應NAT地址的路由,因此需要手工添加靜態路由,使得目的地址為外網主機NAT地址的報文的出接口為GigabitEthernet1/0/2。
# 配置接口IP地址、路由、安全域及域間策略保證網絡可達,具體配置步驟略。
# 開啟DNS協議的ALG功能。
<Device> system-view
[Device] nat alg dns
# 配置ACL 2000,允許對內部網絡中192.168.1.0/24網段的報文進行地址轉換。
[Device] acl basic 2000
[Device-acl-ipv4-basic-2000] rule permit source 192.168.1.0 0.0.0.255
[Device-acl-ipv4-basic-2000] quit
# 創建地址組1。
[Device] nat address-group 1
# 添加地址組成員202.38.1.2。
[Device-address-group-1] address 202.38.1.2 202.38.1.2
[Device-address-group-1] quit
# 創建地址組2。
[Device] nat address-group 2
# 添加地址組成員202.38.1.3。
[Device-address-group-2] address 202.38.1.3 202.38.1.3
[Device-address-group-2] quit
# 在接口GigabitEthernet1/0/2上配置NAT內部服務器,允許外網主機使用地址202.38.1.4訪問內網DNS服務器。
[Device] interface gigabitethernet 1/0/2
[Device-GigabitEthernet1/0/2] nat server protocol udp global 202.38.1.4 inside 192.168.1.3 dns
# 在接口GigabitEthernet1/0/2上配置出方向動態地址轉換,允許使用地址組1中的地址對DNS應答報文載荷中的內網地址進行轉換,並在轉換過程中不使用端口信息,以及允許反向地址轉換。
[Device-GigabitEthernet1/0/2] nat outbound 2000 address-group 1 no-pat reversible
# 在接口GigabitEthernet1/0/2上配置入方向動態地址轉換,允許使用地址組2中的地址對外網訪問內網的報文進行源地址轉換,並在轉換過程中使用端口信息。
[Device-GigabitEthernet1/0/2] nat inbound 2000 address-group 2
[Device-GigabitEthernet1/0/2] quit
# 配置到達202.38.1.3地址的靜態路由,出接口為GigabitEthernet1/0/2,下一跳地址為20.2.2.2(20.2.2.2為本例中的直連下一跳地址,實際使用中請以具體組網情況為準)。
[Device] ip route-static 202.38.1.3 32 gigabitethernet 1/0/2 20.2.2.2
# 以上配置完成後,外網Host能夠通過域名訪問內網相同IP地址的Web server。通過查看如下顯示信息,可以驗證以上配置成功。
[Device] display nat all
NAT address group information:
Totally 2 NAT address groups.
Address group ID: 1
Port range: 1-65535
Address information:
Start address End address
202.38.1.2 202.38.1.2
Exclude address information:
Start address End address
--- ---
Address group ID: 2
Port range: 1-65535
Address information:
Start address End address
202.38.1.3 202.38.1.3
Exclude address information:
Start address End address
--- ---
NAT inbound information:
Totally 1 NAT inbound rules.
Interface: GigabitEthernet1/0/2
ACL: 2000
Address group ID: 2
Add route: N NO-PAT: N Reversible: N
Config status: Active
NAT outbound information:
Totally 1 NAT outbound rules.
Interface: GigabitEthernet1/0/2
ACL: 2000
Address group ID: 1
Port-preserved: N NO-PAT: Y Reversible: Y
Config status: Active
NAT internal server information:
Totally 1 internal servers.
Interface: GigabitEthernet1/0/2
Protocol: 17(UDP)
Global IP/port: 202.38.1.4/53
Local IP/port : 200.1.1.3/53
Rule name : ServerRule_1
NAT counting : 0
Config status : Active
NAT logging:
Log enable : Disabled
Flow-begin : Disabled
Flow-end : Disabled
Flow-active : Disabled
Port-block-assign : Disabled
Port-block-withdraw : Disabled
Alarm : Disabled
NO-PAT IP usage : Disabled
NAT mapping behavior:
Mapping mode : Address and Port-Dependent
ACL : ---
Config status: Active
NAT ALG:
DNS : Enabled
FTP : Enabled
H323 : Disabled
ICMP-ERROR : Enabled
ILS : Disabled
MGCP : Disabled
NBT : Disabled
PPTP : Enabled
RTSP : Enabled
RSH : Disabled
SCCP : Disabled
SIP : Disabled
SQLNET : Disabled
TFTP : Disabled
XDMCP : Disabled
Static NAT load balancing: Disabled
NAT link-switch recreate-session: Disabled
NAT configuration-for-new-connection: Disabled
NAT global-policy compatible-previous-version rule-type ipv4-snat-and-dnat translate-before-secp : Disabled
NAT gratuitous-arp: Enabled
# 通過以下顯示命令,可以看到Host訪問Web server時生成NAT會話信息。
[Device] display nat session verbose
Slot 1:
Initiator:
Source IP/port: 192.168.1.2/1694
Destination IP/port: 202.38.1.2/8080
DS-Lite tunnel peer: -
VPN instance/VLAN ID/Inline ID: -/-/-
Protocol: TCP(6)
Inbound interface: GigabitEthernet1/0/2
Source security zone: Untrust
Responder:
Source IP/port: 192.168.1.2/8080
Destination IP/port: 202.38.1.3/1025
DS-Lite tunnel peer: -
VPN instance/VLAN ID/Inline ID: -/-/-
Protocol: TCP(6)
Inbound interface: GigabitEthernet1/0/1
Source security zone: Trust
State: TCP_ESTABLISHED
Application: HTTP
Rule ID: -/-/-
Rule name:
Start time: 2017-06-15 14:53:29 TTL: 3597s
Initiator->Responder: 7 packets 308 bytes
Responder->Initiator: 5 packets 312 bytes
Total sessions found: 1
· 某公司內部網絡中有一台FTP服務器,地址為192.168.1.4/24。
· 該公司擁有兩個外網IP地址:202.38.1.1和202.38.1.2。
需要實現如下功能:
· 外網主機可以通過202.38.1.2訪問內網中的FTP服務器。
· 內網主機也可以通過202.38.1.2訪問內網中的FTP服務器。
圖3-9 內網用戶通過NAT地址訪問內網服務器配置組網圖
該需求為典型的C-S模式的NAT hairpin應用,具體配置思路如下。
· 為使外網主機可以通過外網地址訪問內網FTP服務器,需要在外網側接口配置NAT內部服務器。
· 為使內網主機通過外網地址訪問內網FTP服務器,需要在內網側接口開啟NAT hairpin功能。其中,目的IP地址轉換通過匹配外網側接口上的內部服務器配置來完成,源地址轉換通過匹配內部服務器配置所在接口上的出方向動態地址轉換或出方向靜態地址轉換來完成,本例中采用出方向動態地址轉換配置。
# 配置接口IP地址、路由、安全域及域間策略保證網絡可達,具體配置步驟略。
# 配置ACL 2000,允許對內部網絡中192.168.1.0/24網段的報文進行地址轉換。
<Device> system-view
[Device] acl basic 2000
[Device-acl-ipv4-basic-2000] rule permit source 192.168.1.0 0.0.0.255
[Device-acl-ipv4-basic-2000] quit
# 在接口GigabitEthernet1/0/2上配置NAT內部服務器,允許外網主機使用地址202.38.1.2訪問內網FTP服務器,同時使得內網主機訪問內網FTP服務器的報文可以進行目的地址轉換。
[Device] interface gigabitethernet 1/0/2
[Device-GigabitEthernet1/0/2] nat server protocol tcp global 202.38.1.2 inside 192.168.1.4 ftp
# 在接口GigabitEthernet1/0/2上配置Easy IP方式的出方向動態地址轉換,使得內網主機訪問內網FTP服務器的報文可以使用接口GigabitEthernet1/0/2的IP地址進行源地址轉換。
[Device-GigabitEthernet1/0/2] nat outbound 2000
[Device-GigabitEthernet1/0/2] quit
# 在接口GigabitEthernet1/0/1上開啟NAT hairpin功能。
[Device] interface gigabitethernet 1/0/1
[Device-GigabitEthernet1/0/1] nat hairpin enable
[Device-GigabitEthernet1/0/1] quit
# 以上配置完成後,內網主機和外網主機均能夠通過外網地址訪問內網FTP Server。通過查看如下顯示信息,可以驗證以上配置成功。
[Device] display nat all
NAT outbound information:
Totally 1 NAT outbound rules.
Interface: GigabitEthernet1/0/2
ACL: 2000
Address group ID: ---
Port-preserved: N NO-PAT: N Reversible: N
Config status: Active
NAT internal server information:
Totally 1 internal servers.
Interface: GigabitEthernet1/0/2
Protocol: 6(TCP)
Global IP/port: 202.38.1.2/21
Local IP/port : 192.168.1.4/21
Rule name : ServerRule_1
NAT counting : 0
Config status : Active
NAT logging:
Log enable : Disabled
Flow-begin : Disabled
Flow-end : Disabled
Flow-active : Disabled
Port-block-assign : Disabled
Port-block-withdraw : Disabled
Alarm : Disabled
NO-PAT IP usage : Disabled
NAT hairpinning:
Totally 1 interfaces enabled with NAT hairpinning.
Interface: GigabitEthernet1/0/1
Config status: Active
NAT mapping behavior:
Mapping mode : Address and Port-Dependent
ACL : ---
Config status: Active
NAT ALG:
DNS : Enabled
FTP : Enabled
H323 : Disabled
ICMP-ERROR : Enabled
ILS : Disabled
MGCP : Disabled
NBT : Disabled
PPTP : Enabled
RTSP : Enabled
RSH : Disabled
SCCP : Disabled
SIP : Disabled
SQLNET : Disabled
TFTP : Disabled
XDMCP : Disabled
Static NAT load balancing: Disabled
NAT link-switch recreate-session: Disabled
NAT configuration-for-new-connection: Disabled
NAT global-policy compatible-previous-version rule-type ipv4-snat-and-dnat translate-before-secp : Disabled
NAT gratuitous-arp: Enabled
# 通過以下顯示命令,可以看到Host A訪問FTP server時生成NAT會話信息。
[Device] display nat session verbose
Slot 1:
Initiator:
Source IP/port: 192.168.1.2/1694
Destination IP/port: 202.38.1.2/21
DS-Lite tunnel peer: -
VPN instance/VLAN ID/Inline ID: -/-/-
Protocol: TCP(6)
Inbound interface: GigabitEthernet1/0/1
Source security zone: Trust
Responder:
Source IP/port: 192.168.1.4/21
Destination IP/port: 202.38.1.1/1025
DS-Lite tunnel peer: -
VPN instance/VLAN ID/Inline ID: -/-/-
Protocol: TCP(6)
Inbound interface: GigabitEthernet1/0/1
Source security zone: Trust
State: TCP_ESTABLISHED
Application: FTP
Rule ID: -/-/-
Rule name:
Start time: 2017-06-15 14:53:29 TTL: 3597s
Initiator->Responder: 7 packets 308 bytes
Responder->Initiator: 5 packets 312 bytes
Total sessions found: 1
某P2P應用環境中,內網中的客戶端首先需要向外網服務器進行注冊,外網服務器會記錄客戶端的IP地址和端口號。如果內網的一個客戶端要訪問內網的另一個客戶端,首先需要向服務器獲取對方的IP地址和端口號。
需要實現如下功能:
· 內網客戶端可以向外網中的服務器注冊,且注冊為一個相同的外網地址。
· 內網客戶端能夠通過從服務器獲得的IP地址和端口進行互訪。
圖3-10 內網用戶通過NAT地址互訪配置組網圖
該需求為典型的P2P模式的NAT hairpin應用,具體配置思路如下。
· 內網中的客戶端需要向外網中的服務器注冊,因此需要進行源地址轉換,可以通過在外網側接口配置出方向動態地址轉換實現。
· 服務器記錄客戶端的IP地址和端口號,且該地址和端口號是NAT轉換後的。由於服務器記錄的客戶端IP地址和端口號需要供任意源地址訪問,因此客戶端地址的轉換關係必須不關心對端地址,這可以通過配置EIM模式的動態地址轉換實現。
· 內部主機通過外網地址進行互訪,需要在內網側接口開啟NAT hairpin功能。
# 配置接口IP地址、路由、安全域及域間策略保證網絡可達,具體配置步驟略。
# 配置ACL 2000,允許對內部網絡中192.168.1.0/24網段的報文進行地址轉換。
<Device> system-view
[Device] acl basic 2000
[Device-acl-ipv4-basic-2000] rule permit source 192.168.1.0 0.0.0.255
[Device-acl-ipv4-basic-2000] quit
# 在外網側接口GigabitEthernet1/0/2上配置Easy IP方式的出方向動態地址轉換,允許使用接口GigabitEthernet1/0/2的IP地址對內網訪問外網的報文進行源地址轉換,因為多個內部主機共用一個外網地址,因此需要配置為PAT方式,即轉換過程中使用端口信息。
[Device] interface gigabitethernet 1/0/2
[Device-GigabitEthernet1/0/2] nat outbound 2000
[Device-GigabitEthernet1/0/2] quit
# 配置PAT方式下的地址轉換模式為EIM,即隻要是來自相同源地址和源端口號的且匹配ACL 2000的報文,不論其目的地址是否相同,通過PAT轉換後,其源地址和源端口號都被轉換為同一個外部地址和端口號。
[Device] nat mapping-behavior endpoint-independent acl 2000
# 在內網側接口GigabitEthernet1/0/1上開啟NAT hairpin功能。
[Device] interface gigabitethernet 1/0/1
[Device-GigabitEthernet1/0/1] nat hairpin enable
[Device-GigabitEthernet1/0/1] quit
# 以上配置完成後,Host A、Host B和Host C 分別向外網服務器注冊之後,它們之間可以相互訪問。通過查看如下顯示信息,可以驗證以上配置成功。
[Device] display nat all
NAT outbound information:
Totally 1 NAT outbound rules.
Interface: GigabitEthernet1/0/2
ACL: 2000
Address group ID: ---
Port-preserved: N NO-PAT: N Reversible: N
Config status: Active
NAT logging:
Log enable : Disabled
Flow-begin : Disabled
Flow-end : Disabled
Flow-active : Disabled
Port-block-assign : Disabled
Port-block-withdraw : Disabled
Alarm : Disabled
NO-PAT IP usage : Disabled
NAT hairpinning:
Totally 1 interfaces enabled with NAT hairpinning.
Interface: GigabitEthernet1/0/1
Config status: Active
NAT mapping behavior:
Mapping mode : Endpoint-Independent
ACL : 2000
Config status: Active
NAT ALG:
DNS : Enabled
FTP : Enabled
H323 : Disabled
ICMP-ERROR : Enabled
ILS : Disabled
MGCP : Disabled
NBT : Disabled
PPTP : Enabled
RTSP : Enabled
RSH : Disabled
SCCP : Disabled
SIP : Disabled
SQLNET : Disabled
TFTP : Disabled
XDMCP : Disabled
Static NAT load balancing: Disabled
NAT link-switch recreate-session: Disabled
NAT configuration-for-new-connection: Disabled
NAT global-policy compatible-previous-version rule-type ipv4-snat-and-dnat translate-before-secp : Disabled
NAT gratuitous-arp: Enabled
# 通過以下顯示命令,可以看到Client A訪問Client B時生成NAT會話信息。
[Device] display nat session verbose
Slot 1:
Initiator:
Source IP/port: 192.168.1.3/44929
Destination IP/port: 202.38.1.3/1
DS-Lite tunnel peer: -
VPN instance/VLAN ID/Inline ID: -/-/-
Protocol: UDP(17)
Inbound interface: GigabitEthernet1/0/1
Source security zone: Trust
Responder:
Source IP/port: 192.168.1.2/69
Destination IP/port: 202.38.1.3/1024
DS-Lite tunnel peer: -
VPN instance/VLAN ID/Inline ID: -/-/-
Protocol: UDP(17)
Inbound interface: GigabitEthernet1/0/1
Source security zone: Trust
State: UDP_READY
Application: TFTP
Rule ID: -/-/-
Rule name:
Start time: 2012-08-15 15:53:36 TTL: 46s
Initiator->Responder: 1 packets 56 bytes
Responder->Initiator: 1 packets 72 bytes
Total sessions found: 1
某公司兩個部門由於需要業務隔而分屬不同的VPN實例,且兩個部門內部使用了相同的子網地址空間。現在要求這兩個部門的主機Host A 和Host B之間能夠通過NAT地址互相訪問。
圖3-11 地址重疊的兩個VPN之間互訪配置組網圖
這是一個典型的兩次NAT應用:兩個VPN之間主機交互的報文的源IP地址和目的IP地址都需要轉換,即需要在連接兩個VPN的接口上先後進行兩次NAT,這可以通過在NAT設備的兩側接口上分別配置靜態地址轉換實現。
為實現VPN之間互訪,配置域間策略時,需要配置允許VPN實例報文通過,放行VPN實例間的流量。
# 配置接口IP地址、路由、安全域及域間策略,在域間策略中配置允許VPN實例報文通過,以保證網絡可達,具體配置步驟略。
# 配置VPN 1內的IP地址192.168.1.2到VPN 2內的IP地址172.16.1.2之間的靜態地址轉換映射。
<Device> system-view
[Device] nat static outbound 192.168.1.2 vpn-instance vpn1 172.16.1.2 vpn-instance vpn2
# 配置VPN 2內的IP地址192.168.1.2到VPN 1內的IP地址172.16.2.2之間的靜態地址轉換映射。
[Device] nat static outbound 192.168.1.2 vpn-instance vpn2 172.16.2.2 vpn-instance vpn1
# 在接口GigabitEthernet1/0/2上配置靜態地址轉換。
[Device] interface gigabitethernet 1/0/2
[Device-GigabitEthernet1/0/2] nat static enable
[Device-GigabitEthernet1/0/2] quit
# 在接口GigabitEthernet1/0/1上配置靜態地址轉換。
[Device] interface gigabitethernet 1/0/1
[Device-GigabitEthernet1/0/1] nat static enable
[Device-GigabitEthernet1/0/1] quit
# 以上配置完成後,Host A和Host B可以互通,且Host A的對外地址為172.16.1.2,Host B的對外地址為172.16.2.2。通過查看如下顯示信息,可以驗證以上配置成功。
[Device] display nat all
Static NAT mappings:
Totally 2 outbound static NAT mappings.
IP-to-IP:
Local IP : 192.168.1.2
Global IP : 172.16.1.2
Local VPN : vpn1
Global VPN : vpn2
Config status: Active
IP-to-IP:
Local IP : 192.168.1.2
Global IP : 172.16.2.2
Local VPN : vpn2
Global VPN : vpn1
Config status: Active
Interfaces enabled with static NAT:
Totally 2 interfaces enabled with static NAT.
Interface: GigabitEthernet1/0/1
Config status: Active
Interface: GigabitEthernet1/0/2
Config status: Active
NAT logging:
Log enable : Disabled
Flow-begin : Disabled
Flow-end : Disabled
Flow-active : Disabled
Port-block-assign : Disabled
Port-block-withdraw : Disabled
Alarm : Disabled
NO-PAT IP usage : Disabled
NAT mapping behavior:
Mapping mode : Address and Port-Dependent
ACL : ---
Config status: Active
NAT ALG:
DNS : Enabled
FTP : Enabled
H323 : Disabled
ICMP-ERROR : Enabled
ILS : Disabled
MGCP : Disabled
NBT : Disabled
PPTP : Enabled
RTSP : Enabled
RSH : Disabled
SCCP : Disabled
SIP : Disabled
SQLNET : Disabled
TFTP : Disabled
XDMCP : Disabled
Static NAT load balancing: Disabled
NAT link-switch recreate-session: Disabled
NAT configuration-for-new-connection: Disabled
NAT global-policy compatible-previous-version rule-type ipv4-snat-and-dnat translate-before-secp : Disabled
NAT gratuitous-arp: Enabled
# 通過以下顯示命令,可以看到Host A訪問Host B時生成NAT會話信息。
[Device] display nat session verbose
Slot 1:
Initiator:
Source IP/port: 192.168.1.2/42496
Destination IP/port: 172.16.2.2/2048
DS-Lite tunnel peer: -
VPN instance/VLAN ID/Inline ID: vpn1/-/-
Protocol: ICMP(1)
Inbound interface: GigabitEthernet1/0/1
Source security zone: Trust
Responder:
Source IP/port: 192.168.1.2/42496
Destination IP/port: 172.16.1.2/0
DS-Lite tunnel peer: -
VPN instance/VLAN ID/Inline ID: vpn2/-/-
Protocol: ICMP(1)
Inbound interface: GigabitEthernet1/0/2
Source security zone: Trust
State: ICMP_REPLY
Application: INVALID
Rule ID: -/-/-
Rule name:
Start time: 2012-08-16 09:30:49 TTL: 27s
Initiator->Responder: 5 packets 420 bytes
Responder->Initiator: 5 packets 420 bytes
Total sessions found: 1
某公司內部擁有3台FTP服務器對外提供FTP服務。
需要實現如下功能:
· 使用IP地址為202.38.1.1作為公司對外提供服務的IP地址。
· 3台FTP服務器可以同時對外提供服務,並進行負載分擔。
圖3-12 負載分擔內部服務器配置組網圖
# 配置接口IP地址、路由、安全域及域間策略保證網絡可達,具體配置步驟略。
# 配置內部服務器組0及其成員10.110.10.1、10.110.10.2和10.110.10.3。
<Device> system-view
[Device] nat server-group 0
[Device-nat-server-group-0] inside ip 10.110.10.1 port 21
[Device-nat-server-group-0] inside ip 10.110.10.2 port 21
[Device-nat-server-group-0] inside ip 10.110.10.3 port 21
[Device-nat-server-group-0] quit
# 在接口Gigabitethernet1/0/2上配置負載分擔內部服務器,引用內部服務器組0,該組內的主機共同對外提供FTP服務。
[Device] interface gigabitethernet 1/0/2
[Device-GigabitEthernet1/0/2] nat server protocol tcp global 202.38.1.1 ftp inside server-group 0
[Device-GigabitEthernet1/0/2] quit
# 以上配置完成後,外網主機可以訪問內網FTP服務器組。通過查看如下顯示信息,可以驗證以上配置成功。
[Device] display nat all
NAT server group information:
Totally 1 NAT server groups.
Group Number Inside IP Port Weight
0 10.110.10.1 21 100
10.110.10.2 21 100
10.110.10.3 21 100
NAT internal server information:
Totally 1 internal servers.
Interface: GigabitEthernet1/0/2
Protocol: 6(TCP)
Global IP/port: 202.38.1.1/21
Local IP/port : server group 0
10.110.10.1/21 (Connections: 1)
10.110.10.2/21 (Connections: 1)
10.110.10.3/21 (Connections: 1)
Rule name : ServerRule_1
NAT counting : 0
Config status : Active
NAT logging:
Log enable : Disabled
Flow-begin : Disabled
Flow-end : Disabled
Flow-active : Disabled
Port-block-assign : Disabled
Port-block-withdraw : Disabled
Alarm : Disabled
NO-PAT IP usage : Disabled
NAT mapping behavior:
Mapping mode : Address and Port-Dependent
ACL : ---
Config status: Active
NAT ALG:
DNS : Enabled
FTP : Enabled
H323 : Disabled
ICMP-ERROR : Enabled
ILS : Disabled
MGCP : Disabled
NBT : Disabled
PPTP : Enabled
RTSP : Enabled
RSH : Disabled
SCCP : Disabled
SIP : Disabled
SQLNET : Disabled
TFTP : Disabled
XDMCP : Disabled
Static NAT load balancing: Disabled
NAT link-switch recreate-session: Disabled
NAT configuration-for-new-connection: Disabled
NAT global-policy compatible-previous-version rule-type ipv4-snat-and-dnat translate-before-secp : Disabled
NAT gratuitous-arp: Enabled
# 通過以下顯示命令,可以看到外網主機訪問內網FTP server時生成NAT會話信息。
[Device] display nat session verbose
Slot 1:
Initiator:
Source IP/port: 202.38.1.27/5760
Destination IP/port: 202.38.1.1/21
DS-Lite tunnel peer: -
VPN instance/VLAN ID/Inline ID: -/-/-
Protocol: TCP(6)
Inbound interface: GigabitEthernet1/0/2
Source security zone: Untrust
Responder:
Source IP/port: 10.110.10.3/21
Destination IP/port: 202.38.1.27/5760
DS-Lite tunnel peer: -
VPN instance/VLAN ID/Inline ID: -/-/-
Protocol: TCP(6)
Inbound interface: GigabitEthernet1/0/1
Source security zone: DMZ
State: TCP_ESTABLISHED
Application: FTP
Rule ID: -/-/-
Rule name:
Start time: 2017-05-19 16:10:27 TTL: 3598s
Initiator->Responder: 15 packets 702 bytes
Responder->Initiator: 16 packets 891 bytes
Initiator:
Source IP/port: 202.38.1.26/30018
Destination IP/port: 202.38.1.1/21
DS-Lite tunnel peer: -
VPN instance/VLAN ID/Inline ID: -/-/-
Protocol: TCP(6)
Inbound interface: GigabitEthernet1/0/2
Source security zone: Untrust
Responder:
Source IP/port: 10.110.10.2/21
Destination IP/port: 202.38.1.26/30018
DS-Lite tunnel peer: -
VPN instance/VLAN ID/Inline ID: -/-/-
Protocol: TCP(6)
Inbound interface: GigabitEthernet1/0/1
Source security zone: DMZ
State: TCP_ESTABLISHED
Application: FTP
Start time: 2017-05-19 16:09:58 TTL: 3576s
Initiator->Responder: 15 packets 702 bytes
Responder->Initiator: 16 packets 891 bytes
Initiator:
Source IP/port: 202.38.1.25/35652
Destination IP/port: 202.38.1.1/21
DS-Lite tunnel peer: -
VPN instance/VLAN ID/Inline ID: -/-/-
Protocol: TCP(6)
Inbound interface: GigabitEthernet1/0/2
Source security zone: Untrust
Responder:
Source IP/port: 10.110.10.1/21
Destination IP/port: 202.38.1.25/35652
DS-Lite tunnel peer: -
VPN instance/VLAN ID/Inline ID: -/-/-
Protocol: TCP(6)
Inbound interface: GigabitEthernet1/0/1
Source security zone: DMZ
State: TCP_ESTABLISHED
Application: FTP
Start time: 2017-05-19 16:09:46 TTL: 3579s
Initiator->Responder: 15 packets 702 bytes
Responder->Initiator: 16 packets 891 bytes
Total sessions found: 3
某公司內部對外提供Web和FTP服務。公司內部網址為10.110.0.0/16。其中,Web服務器地址為10.110.10.1/16,FTP服務器地址為10.110.10.2/16。公司具有202.38.1.1至202.38.1.3三個公網IP地址。另外公司在外網有一台DNS服務器,IP地址為202.38.1.4。
需要實現如下功能:
· 選用202.38.1.2作為公司對外提供服務的IP地址。
· 外網用戶可以通過域名或IP地址訪問內部服務器。
· 內網用戶可以通過域名訪問內部服務器。
圖3-13 NAT DNS mapping配置組網圖
· 內網服務器對外提供服務,需要配置NAT內部服務器將各服務器的內網IP地址和端口映射為一個外網地址和端口。
· 內網主機通過域名訪問內網服務器時,首先需要通過出接口地址轉換分配的外網地址訪問外網的DNS服務器,並獲取內網服務器的內網IP地址。由於DNS服務器向內網主機發送的響應報文中包含的是內網服務器的外網地址,因此NAT設備需要將DNS報文載荷內的外網地址轉換為內網地址,這可以通過查找DNS mapping映射表配合DNS ALG功能實現。DNS mapping映射表用於實現根據“域名+外網IP地址+外網端口號+協議類型”查找到對應的“內網IP+內網端口號”。
# 配置接口IP地址、路由、安全域及域間策略保證網絡可達,具體配置步驟略。
# 開啟DNS的NAT ALG功能。
<Device> system-view
[Device] nat alg dns
# 進入接口GigabitEthernet1/0/2。
[Device] interface gigabitethernet 1/0/2
# 配置NAT內部Web服務器,允許外網主機使用地址202.38.1.2訪問內網Web服務器。
[Device-GigabitEthernet1/0/2] nat server protocol tcp global 202.38.1.2 inside 10.110.10.1 http
# 配置NAT內部FTP服務器,允許外網主機使用地址202.38.1.2訪問內網FTP服務器。
[Device-GigabitEthernet1/0/2] nat server protocol tcp global 202.38.1.2 inside 10.110.10.2 ftp
# 在接口GigabitEthernet1/0/2上配置Easy IP方式的出方向動態地址轉換。
[Device-GigabitEthernet1/0/2] nat outbound
[Device-GigabitEthernet1/0/2] quit
# 配置兩條DNS mapping表項:Web服務器的域名www.example.com對應IP地址202.38.1.2;FTP服務器的域名ftp.example.com對應IP地址202.38.1.2。
[Device] nat dns-map domain www.example.com protocol tcp ip 202.38.1.2 port http
[Device] nat dns-map domain ftp.example.com protocol tcp ip 202.38.1.2 port ftp
# 以上配置完成後,內網主機和外網主機均可以通過域名訪問內網服務器。通過查看如下顯示信息,可以驗證以上配置成功。
[Device] display nat all
NAT outbound information:
Totally 1 NAT outbound rules.
Interface: GigabitEthernet1/0/2
ACL: ---
Address group ID: ---
Port-preserved: N NO-PAT: N Reversible: N
Config status: Active
NAT internal server information:
Totally 2 internal servers.
Interface: GigabitEthernet1/0/2
Protocol: 6(TCP)
Global IP/port: 202.38.1.2/21
Local IP/port : 10.110.10.2/21
Rule name : ServerRule_2
NAT counting : 0
Config status : Active
Interface: GigabitEthernet1/0/2
Protocol: 6(TCP)
Global IP/port: 202.38.1.2/80
Local IP/port : 10.110.10.1/80
Rule name : ServerRule_1
NAT counting : 0
Config status : Active
NAT DNS mapping information:
Totally 2 NAT DNS mappings.
Domain name: ftp.example.com
Global IP : 202.38.1.2
Global port: 21
Protocol : TCP(6)
Config status: Active
Domain name: www.example.com
Global IP : 202.38.1.2
Global port: 80
Protocol : TCP(6)
Config status: Active
NAT logging:
Log enable : Disabled
Flow-begin : Disabled
Flow-end : Disabled
Flow-active : Disabled
Port-block-assign : Disabled
Port-block-withdraw : Disabled
Alarm : Disabled
NO-PAT IP usage : Disabled
NAT mapping behavior:
Mapping mode : Address and Port-Dependent
ACL : ---
Config status: Active
NAT ALG:
DNS : Enabled
FTP : Enabled
H323 : Disabled
ICMP-ERROR : Enabled
ILS : Disabled
MGCP : Disabled
NBT : Disabled
PPTP : Enabled
RTSP : Enabled
RSH : Disabled
SCCP : Disabled
SIP : Disabled
SQLNET : Disabled
TFTP : Disabled
XDMCP : Disabled
Static NAT load balancing: Disabled
NAT link-switch recreate-session: Disabled
NAT configuration-for-new-connection: Disabled
NAT global-policy compatible-previous-version rule-type ipv4-snat-and-dnat translate-before-secp : Disabled
NAT gratuitous-arp: Enabled
# 通過以下顯示命令,可以看到外網主機訪問內網Web Server時生成NAT會話信息。
[Device] display nat session verbose
Slot 1:
Initiator:
Source IP/port: 202.38.1.10/63593
Destination IP/port: 202.38.1.2/80
DS-Lite tunnel peer: -
VPN instance/VLAN ID/Inline ID: -/-/-
Protocol: TCP(6)
Inbound interface: GigabitEthernet1/0/2
Source security zone: Untrust
Responder:
Source IP/port: 10.110.10.1/80
Destination IP/port: 202.38.1.10/63593
DS-Lite tunnel peer: -
VPN instance/VLAN ID/Inline ID: -/-/-
Protocol: TCP(6)
Inbound interface: GigabitEthernet1/0/1
Source security zone: Trust
State: TCP_ESTABLISHED
Application: HTTP
Rule ID: -/-/-
Rule name:
Start time: 2017-05-21 15:09:11 TTL: 11s
Initiator->Responder: 5 packets 1145 bytes
Responder->Initiator: 3 packets 1664 bytes
Total sessions found: 1
內部網絡用戶10.110.10.1~10.110.10.10使用外網地址202.38.1.100訪問Internet。內網用戶地址基於NAT444端口塊靜態映射方式複用外網地址202.38.1.100,外網地址的端口範圍為10001~15000,端口塊大小為500。
圖3-14 NAT444端口塊靜態映射配置組網圖
# 配置接口IP地址、路由、安全域及域間策略保證網絡可達,具體配置步驟略。
# 創建NAT端口塊組1。
<Device> system-view
[Device] nat port-block-group 1
# 添加私網地址成員10.110.10.1~10.110.10.10。
[Device-port-block-group-1] local-ip-address 10.110.10.1 10.110.10.10
# 添加公網地址成員為202.38.1.100。
[Device-port-block-group-1] global-ip-pool 202.38.1.100 202.38.1.100
# 配置端口塊大小為500,公網地址的端口範圍為10001~15000。
[Device-port-block-group-1] block-size 500
[Device-port-block-group-1] port-range 10001 15000
[Device-port-block-group-1] quit
# 在接口GigabitEthernet1/0/2上配置NAT444端口塊靜態映射,引用端口塊組1。
[Device] interface gigabitethernet 1/0/2
[Device-GigabitEthernet1/0/2] nat outbound port-block-group 1
[Device-GigabitEthernet1/0/2] quit
# 以上配置完成後,內網主機可以訪問外網服務器。通過查看如下顯示信息,可以驗證以上配置成功。
[Device] display nat all
NAT logging:
Log enable : Disabled
Flow-begin : Disabled
Flow-end : Disabled
Flow-active : Disabled
Port-block-assign : Disabled
Port-block-withdraw : Disabled
Alarm : Disabled
NO-PAT IP usage : Disabled
NAT mapping behavior:
Mapping mode : Address and Port-Dependent
ACL : ---
Config status: Active
NAT ALG:
DNS : Enabled
FTP : Enabled
H323 : Disabled
ICMP-ERROR : Enabled
ILS : Disabled
MGCP : Disabled
NBT : Disabled
PPTP : Enabled
RTSP : Enabled
RSH : Disabled
SCCP : Disabled
SIP : Disabled
SQLNET : Disabled
TFTP : Disabled
XDMCP : Disabled
NAT port block group information:
Totally 1 NAT port block groups.
Port block group 1:
Port range: 10001-15000
Block size: 500
Local IP address information:
Start address End address VPN instance
10.110.10.1 10.110.10.10 ---
Global IP pool information:
Start address End address
202.38.1.100 202.38.1.100
NAT outbound port block group information:
Totally 1 outbound port block group items.
Interface: GigabitEthernet1/0/2
port-block-group: 1
Config status : Active
Static NAT load balancing: Disabled
NAT link-switch recreate-session: Disabled
NAT configuration-for-new-connection: Disabled
NAT global-policy compatible-previous-version rule-type ipv4-snat-and-dnat translate-before-secp : Disabled
NAT gratuitous-arp: Enabled
# 通過以下顯示命令,可以看到係統生成的靜態端口塊表項信息。
[Device] display nat port-block static
Slot 1:
Local VPN Local IP Global IP Port block Connections
--- 10.110.10.7 202.38.1.100 13001-13500 1
--- 10.110.10.5 202.38.1.100 12001-12500 1
--- 10.110.10.9 202.38.1.100 14001-14500 1
--- 10.110.10.3 202.38.1.100 11001-11500 1
--- 10.110.10.2 202.38.1.100 10501-11000 1
--- 10.110.10.4 202.38.1.100 11501-12000 1
--- 10.110.10.6 202.38.1.100 12501-13000 1
--- 10.110.10.1 202.38.1.100 10001-10500 1
--- 10.110.10.10 202.38.1.100 14501-15000 1
--- 10.110.10.8 202.38.1.100 13501-14000 1
Total mappings found: 10
· 某公司內網使用的IP地址為192.168.0.0/16。
· 該公司擁有202.38.1.2和202.38.1.3兩個外網IP地址。
需要實現,內部網絡中的192.168.1.0/24網段的用戶可以訪問Internet,其它網段的用戶不能訪問Internet。基於NAT444端口塊動態映射方式複用兩個外網地址202.38.1.2和202.38.1.3,外網地址的端口範圍為1024~65535,端口塊大小為300。當為某用戶分配的端口塊資源耗盡時,再為其增量分配1個端口塊。
圖3-15 NAT444端口塊動態映射配置組網圖
# 配置接口IP地址、路由、安全域及域間策略保證網絡可達,具體配置步驟略。
# 配置地址組0,包含兩個外網地址202.38.1.2和202.38.1.3,外網地址的端口範圍為1024~65535,端口塊大小為300,增量端口塊數為1。
<Device> system-view
[Device] nat address-group 0
[Device-address-group-0] address 202.38.1.2 202.38.1.3
[Device-address-group-0] port-range 1024 65535
[Device-address-group-0] port-block block-size 300 extended-block-number 1
[Device-address-group-0] quit
# 配置ACL 2000,僅允許對內部網絡中192.168.1.0/24網段的用戶報文進行地址轉換。
[Device] acl basic 2000
[Device-acl-ipv4-basic-2000] rule permit source 192.168.1.0 0.0.0.255
[Device-acl-ipv4-basic-2000] quit
# 在接口GigabitEthernet1/0/2上配置出方向動態地址轉換,允許使用地址組0中的地址對匹配ACL 2000的報文進行源地址轉換,並在轉換過程中使用端口信息。
[Device] interface gigabitethernet 1/0/2
[Device-GigabitEthernet1/0/2] nat outbound 2000 address-group 0
[Device-GigabitEthernet1/0/2] quit
# 以上配置完成後,Host A能夠訪問外網服務器,Host B和Host C無法訪問外網服務器。通過查看如下顯示信息,可以驗證以上配置成功。
[Device] display nat all
NAT address group information:
Totally 1 NAT address groups.
Address group ID: 0
Port range: 1024-65535
Port block size: 300
Extended block number: 1
Address information:
Start address End address
202.38.1.2 202.38.1.3
Exclude address information:
Start address End address
--- ---
NAT outbound information:
Totally 1 NAT outbound rules.
Interface: GigabitEthernet1/0/2
ACL: 2000
Address group ID: 0
Port-preserved: N NO-PAT: N Reversible: N
Config status: Active
NAT logging:
Log enable : Disabled
Flow-begin : Disabled
Flow-end : Disabled
Flow-active : Disabled
Port-block-assign : Disabled
Port-block-withdraw : Disabled
Alarm : Disabled
NO-PAT IP usage : Disabled
NAT mapping behavior:
Mapping mode : Address and Port-Dependent
ACL : ---
Config status: Active
NAT ALG:
DNS : Enabled
FTP : Enabled
H323 : Disabled
ICMP-ERROR : Enabled
ILS : Disabled
MGCP : Disabled
NBT : Disabled
PPTP : Enabled
RTSP : Enabled
RSH : Disabled
SCCP : Disabled
SIP : Disabled
SQLNET : Disabled
TFTP : Disabled
XDMCP : Disabled
Static NAT load balancing: Disabled
NAT link-switch recreate-session: Disabled
NAT configuration-for-new-connection: Disabled
NAT global-policy compatible-previous-version rule-type ipv4-snat-and-dnat translate-before-secp : Disabled
NAT gratuitous-arp: Enabled
# 通過以下顯示命令,可以看到NAT會話數、當前可分配的動態端口塊總數和已分配的動態端口塊個數。
[Device] display nat statistics
Total session entries: 1
Session creation rate: 0
Total EIM entries: 0
Total inbound NO-PAT entries: 0
Total outbound NO-PAT entries: 0
Total static port block entries: 0
Total dynamic port block entries: 430
Active static port block entries: 0
Active dynamic port block entries: 1
# 通過以下顯示命令,可以看到生成的動態端口塊表項信息。
[Device] display nat port-block dynamic
Slot 1:
Local VPN Local IP Global IP Port block Connections BackUp
--- 192.168.1.10 202.38.1.2 65224-65523 1 N
Total mappings found: 1
支持DS-Lite協議的私網IPv4主機(即:DS-Lite host)和公網IPv4 network通過IPv6網絡相連。通過在DS-Lite host和AFTR之間建立DS-Lite隧道,並在AFTR連接IPv4 network接口上配置NAT,為DS-Lite host動態分配端口塊,實現IPv4私網穿越IPv6網絡訪問IPv4公網。
圖3-16 DS-Lite隧道配置組網圖
需要將創建的DS-Lite隧道接口加入到安全域,並放行域間流量。(本例即將Tunnel 2加入安全域IPv6Zone,同時放行IPv6Zone域到IPv4Zone域間的相關流量。)
(1) 配置AFTR端
# 創建安全域IPv6Zone和IPv4Zone,按照組網圖將接口分別加入到對應的安全域中,配置域間策略保證網絡可達,具體配置步驟略。
# 配置接口GigabitEthernet1/0/1的地址。
<Device> system-view
[Device] interface gigabitethernet 1/0/1
[Device-GigabitEthernet1/0/1] ip address 20.1.1.1 24
[Device-GigabitEthernet1/0/1] quit
# 配置接口GigabitEthernet1/0/2(隧道的實際物理接口)的地址。
[Device] interface gigabitethernet 1/0/2
[Device-GigabitEthernet1/0/2] ipv6 address 1::2 64
[Device-GigabitEthernet1/0/2] quit
# 創建模式為AFTR端DS-Lite隧道的接口Tunnel2。
[Device] interface tunnel 2 mode ds-lite-aftr
# 配置Tunnel2接口的IP地址。
[Device-Tunnel2] ip address 30.1.2.2 255.255.255.0
# 配置Tunnel2接口的源接口為GigabitEthernet1/0/2。
[Device-Tunnel2] source gigabitethernet 1/0/2
[Device-Tunnel2] quit
# 將Tunnel2接口加入到安全域IPv6Zone。
[Device] security-zone name IPv6Zone
[Device-security-zone-IPv6Zone] import interface Tunnel 2
[Device-security-zone-IPv6Zone] quit
# 在接口GigabitEthernet1/0/1上開啟DS-Lite隧道功能。
[Device] interface gigabitethernet 1/0/1
[Device-GigabitEthernet1/0/1] ds-lite enable
[Device-GigabitEthernet1/0/1] quit
# 配置NAT地址組0,包含兩個外網地址20.1.1.11和20.1.1.12,外網地址的端口範圍為1024~65535,端口塊大小為300。
[Device] nat address-group 0
[Device-address-group-0] address 20.1.1.11 20.1.1.12
[Device-address-group-0] port-range 1024 65535
[Device-address-group-0] port-block block-size 300
[Device-address-group-0] quit
# 配置IPv6 ACL 2100,僅允許對1::/64網段的IPv6源地址進行地址轉換。
[Device] acl ipv6 basic 2100
[Device-acl-ipv6-basic-2100] rule permit source 1::/64
[Device-acl-ipv6-basic-2100] quit
# 在接口GigabitEthernet1/0/1上配置出方向動態地址轉換,允許使用地址組0中的地址對匹配IPv6 ACL 2100的DS-Lite B4報文進行源地址轉換,並在轉換過程中使用端口信息。
[Device] interface gigabitethernet 1/0/1
[Device-GigabitEthernet1/0/1] nat outbound ds-lite-b4 2100 address-group 0
[Device-GigabitEthernet1/0/1] quit
(2) 配置DS-Lite host
配置DS-Lite host的IPv4地址為10.0.0.1,IPv6地址為1::1/64,並配置DS-Lite tunnel路由。(具體配置過程略)
# 完成上述配置後,在AFTR上執行display interface tunnel命令,可以看出Tunnel接口處於up狀態。(具體顯示信息略)
# 從DS-Lite host上可以ping通IPv4 Application server。
C:\> ping 20.1.1.2
Pinging 20.1.1.2 with 32 bytes of data:
Reply from 20.1.1.2: bytes=32 time=51ms TTL=255
Reply from 20.1.1.2: bytes=32 time=44ms TTL=255
Reply from 20.1.1.2: bytes=32 time=1ms TTL=255
Reply from 20.1.1.2: bytes=32 time=1ms TTL=255
Ping statistics for 20.1.1.2:
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 1ms, Maximum = 51ms, Average = 24ms
# 通過以下顯示命令,可以看到出方向動態地址轉換的配置信息。
[Device] display nat outbound
NAT outbound information:
Totally 1 NAT outbound rules.
Interface: GigabitEthernet1/0/1
DS-Lite B4 ACL: 2100
Address group ID: 0
Port-preserved: N NO-PAT: N Reversible: N
Config status: Active
# 通過以下顯示命令,可以看到NAT會話數、當前可分配的動態端口塊總數和已分配的動態端口塊個數。
[Device] display nat statistics
Total session entries: 1
Session creation rate: 0
Total EIM entries: 0
Total inbound NO-PAT entries: 0
Total outbound NO-PAT entries: 0
Total static port block entries: 0
Total dynamic port block entries: 430
Active static port block entries: 0
Active dynamic port block entries: 1
# 通過以下顯示命令,可以看到生成的DS-Lite B4動態端口塊表項。
[Device] display nat port-block dynamic ds-lite-b4
Slot 1:
Local VPN DS-Lite B4 addr Global IP Port block Connections BackUp
--- 1::1 20.1.1.11 65224-65523 1 N
關於此典型配置舉例的具體內容,請參見“高可靠性配置指導”中的“雙機熱備(RBM)”。
關於此典型配置舉例的具體內容,請參見“高可靠性配置指導”中的“雙機熱備(RBM)”。
不同款型規格的資料略有差異, 詳細信息請向具體銷售和400谘詢。H3C保留在沒有任何通知或提示的情況下對資料內容進行修改的權利!