溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Netscaler立身之本——NAT

發(fā)布時(shí)間:2020-06-11 22:57:44 來源:網(wǎng)絡(luò) 閱讀:2701 作者:曹進(jìn)_Gene 欄目:建站服務(wù)器

一、前言

ADC的主要作用是作為服務(wù)器的反向代理來進(jìn)行應(yīng)用發(fā)布的,介于客戶端和服務(wù)器端之間,那么NAT就是它必然要面臨的工作。歸根結(jié)底,NAT就是ADC的數(shù)據(jù)轉(zhuǎn)發(fā)立身之本。能否支持更多、更靈活、控制力更強(qiáng)的NAT轉(zhuǎn)換就是衡量一個(gè)ADC是否合格的關(guān)鍵因素之一。這也對工程師提出了最基本的要求,如果連如何控制NAT都不清楚,那么遇到各種不同的場景就無法做出對應(yīng)的方案。

二、什么是NAT

1.NAT簡介

借助于NAT,私有(保留)地址的"內(nèi)部"網(wǎng)絡(luò)通過路由器發(fā)送數(shù)據(jù)包時(shí),私有地址被轉(zhuǎn)換成合法的IP地址,一個(gè)局域網(wǎng)只需使用少量IP地址(甚至是1個(gè))即可實(shí)現(xiàn)私有地址網(wǎng)絡(luò)內(nèi)所有計(jì)算機(jī)與Internet的通信需求。

NAT將自動(dòng)修改IP報(bào)文的源IP地址和目的IP地址,Ip地址校驗(yàn)則在NAT處理過程中自動(dòng)完成。有些應(yīng)用程序?qū)⒃?/span>IP地址嵌入到IP報(bào)文的數(shù)據(jù)部分中,所以還需要同時(shí)對報(bào)文進(jìn)行修改,以匹配IP頭中已經(jīng)修改過的源IP地址。否則,在報(bào)文數(shù)據(jù)都分別嵌入IP地址的應(yīng)用程序就不能正常工作。

2.NAT實(shí)現(xiàn)方式

NAT的實(shí)現(xiàn)方式有三種,即靜態(tài)轉(zhuǎn)換Static Nat、動(dòng)態(tài)轉(zhuǎn)換Dynamic Nat 和 端口多路復(fù)用OverLoad。

靜態(tài)轉(zhuǎn)換是指將內(nèi)部網(wǎng)絡(luò)的私有IP地址轉(zhuǎn)換為公有IP地址,IP地址對是一對一的,是一成不變的,某個(gè)私有IP地址只轉(zhuǎn)換為某個(gè)公有IP地址。借助于靜態(tài)轉(zhuǎn)換,可以實(shí)現(xiàn)外部網(wǎng)絡(luò)對內(nèi)部網(wǎng)絡(luò)中某些特定設(shè)備(如服務(wù)器)的訪問。

動(dòng)態(tài)轉(zhuǎn)換是指將內(nèi)部網(wǎng)絡(luò)的私有IP地址轉(zhuǎn)換為公用IP地址時(shí),IP地址是不確定的,是隨機(jī)的,所有被授權(quán)訪問上Internet的私有IP地址可隨機(jī)轉(zhuǎn)換為任何指定的合法IP地址。也就是說,只要指定哪些內(nèi)部地址可以進(jìn)行轉(zhuǎn)換,以及用哪些合法地址作為外部地址時(shí),就可以進(jìn)行動(dòng)態(tài)轉(zhuǎn)換。動(dòng)態(tài)轉(zhuǎn)換可以使用多個(gè)合法外部地址集。當(dāng)ISP提供的合法IP地址略少于網(wǎng)絡(luò)內(nèi)部的計(jì)算機(jī)數(shù)量時(shí)??梢圆捎脛?dòng)態(tài)轉(zhuǎn)換的方式。

端口多路復(fù)用(Port address Translation,PAT)是指改變外出數(shù)據(jù)包的源端口并進(jìn)行端口轉(zhuǎn)換,即端口地址轉(zhuǎn)換(PATPort Address Translation).采用端口多路復(fù)用方式。內(nèi)部網(wǎng)絡(luò)的所有主機(jī)均可共享一個(gè)合法外部IP地址實(shí)現(xiàn)對Internet的訪問,從而可以最大限度地節(jié)約IP地址資源。同時(shí),又可隱藏網(wǎng)絡(luò)內(nèi)部的所有主機(jī),有效避免來自internet的***。因此,目前網(wǎng)絡(luò)中應(yīng)用最多的就是端口多路復(fù)用方式。

3.NetscalerNAT

下面我們主要討論netscalerNAT是如何做的,哪些參數(shù)影響到netscalerNAT動(dòng)作。

影響netscalerNAT的參數(shù)主要分為以下8類:

ü RNAT

ü INAT

ü IP mode

ü Netprofile

ü USIP

ü MAC mode

ü Service port=*

ü Service use proxy port

我們分別針對每個(gè)參數(shù)做測試和理解,以下是環(huán)境概述


實(shí)驗(yàn)環(huán)境:

Client ip192.168.20.1

SNIP:   192.168.20.11

     192.168.0.21

     192.168.10.11

VIP:     172.16.10.10

     172.16.10.11

     10.10.1.2

Server ip: 192.168.0.50

   10.10.1.1

 

三、影響NAT的參數(shù)測試

1.RNAT

客戶端的網(wǎng)關(guān)是netscaler,但服務(wù)器沒有客戶端的回程路由

客戶端直接訪問服務(wù)器,網(wǎng)絡(luò)不通

Netscaler立身之本——NAT 


抓包情況:

因?yàn)榉?wù)器沒有客戶端192.168.20.1的回程路由,所以ICMP無響應(yīng)

Netscaler立身之本——NAT


Netscaler上配置RNAT

Netscaler立身之本——NAT

客戶端的地址由192.168.20.1netscaler替換為192.168.10.11,遂可以訪問服務(wù)器資源

Netscaler立身之本——NAT 

抓包情況:

Netscaler立身之本——NAT

2.INAT

netscaler上配置INAT策略,將10.10.1.2轉(zhuǎn)換為192.168.0.50

Netscaler立身之本——NAT


Netscaler中沒有建立10.10.1.2vserver

 Netscaler立身之本——NAT

抓包情況:

用戶端192.168.20.1訪問10.10.1.2netscaler轉(zhuǎn)換為192.168.0.21訪問192.168.0.50.

Netscaler立身之本——NAT

用戶成功打開頁面,在INAT中也可以靈活控制源端口、源地址、目的端口等是否轉(zhuǎn)換。

 

 

3.IP mode

IP mode的工作機(jī)制是默認(rèn)同時(shí)做源地址和目的地址的替換,即相當(dāng)于靜態(tài)NAT

Netscaler立身之本——NAT

抓包情況:

用戶端192.168.20.1訪問172.16.10.10,被Netscaler替換為192.168.0.21訪問192.168.0.50

Netscaler立身之本——NAT 

4.Netprofile

建立兩個(gè)Netprofile

Netscaler立身之本——NAT 

Netprofile_vs綁定到Vserver

Netscaler立身之本——NAT 

抓包情況:

客戶端192.168.20.1訪問172.16.10.10Netscaler替換為192.168.10.11訪問192.168.0.50,源地址不是snip192.168.0.21而是Netprofile_vs的地址192.168.10.11

Netscaler立身之本——NAT 

Netprofile_vs綁定到Vserver同時(shí)將Netprofile_service綁定到service

Vserver

Netscaler立身之本——NAT 

Service

Netscaler立身之本——NAT 

抓包情況:

客戶端192.168.20.1訪問172.16.10.10Netscaler替換為192.168.10.22訪問192.168.0.50,源地址而非Netprofile_vs中的192.168.10.11

 

Netscaler立身之本——NAT 

通過Netprofile測試說明了Netprofile綁在service的優(yōu)先級高于vserver

 

5.USIP

保留Netprofileservice上開啟USIP,并將服務(wù)器的網(wǎng)關(guān)指向netscaler

Netscaler立身之本——NAT 

抓包情況:

用戶端192.168.20.1訪問172.16.10.10,只有目的地址被Netscaler替換為192.168.0.50,源地址不變。

Netscaler立身之本——NAT 

此項(xiàng)說明一旦啟用USIP,netscaler所有基于源地址替換的操作全部禁用,不管是默認(rèn)用SNIP輪訓(xùn)還是指定Netprofile都不生效。

6.MAC mode

MAC mode不做目的地址替換,必須是any的協(xié)議才能啟用,主要用在LLB。

配置mac modeVS、servicegroup、member

Netscaler立身之本——NAT

Netscaler立身之本——NAT

Netscaler立身之本——NAT

 

10.10.1.1是服務(wù)器的第二IP

抓包情況:

客戶端192.168.20.1訪問10.10.1.1,被netscaler替換源地址192.168.10.11后直接訪問10.10.1.1,目的地址不做替換。

 

Netscaler立身之本——NAT 

 

Netscaler立身之本——NAT 

當(dāng)然如果需要也可以控制是否做源地址、源端口、目的端口的替換。

 

 

7.Service port=*


服務(wù)器同時(shí)開啟8000口的服務(wù)

建立兩個(gè)service

Netscaler立身之本——NAT 

 

http協(xié)議的8000口和TCP協(xié)議的any

建立兩個(gè)vserver

Netscaler立身之本——NAT 

抓包情況:

用戶端192.168.20.1帶端口訪問172.16.10.10:3000

Netscaler立身之本——NAT 

NS同時(shí)替換源IP+端口和目的IP+端口,源地址變?yōu)?/span>192.168.0.2130748目的地址變?yōu)?/span>192.168.0.508000.

Netscaler立身之本——NAT 

但如果用戶訪問的是anyVserver話目的端口不會(huì)改變

抓包情況:

用戶端192.168.20.1訪問172.16.10.11:8000

Netscaler立身之本——NAT 

netscaler替換為192.168.0.21:40948訪問192.168.0.50:8000

Netscaler立身之本——NAT 

訪問過程目的端口不會(huì)改變。

8.Proxy port

如果想源端口也不變需要去掉use proxy port選項(xiàng),同時(shí)開啟USIP

Netscaler立身之本——NAT 

抓包情況:

用戶端192.168.20.1:4503訪問172.16.10.10:3000

Netscaler立身之本——NAT 

netscaler替換為192.168.20.1:4503訪問192.168.0.50:8000,源地址和源端口不做替換

Netscaler立身之本——NAT 

 

一、總結(jié):

以上展示了可以控制netscaler NAT行為的所有參數(shù),可知netscaler有非常豐富的參數(shù)來根據(jù)需要靈活控制NAT行為(對于INAT部分有另一篇文章做詳細(xì)討論)根據(jù)數(shù)通設(shè)備習(xí)慣的NAT術(shù)語,總結(jié)了netscaler各個(gè)參數(shù)對應(yīng)的NAT類型。

項(xiàng)目

Netscaler默認(rèn)情況

Netscaler可調(diào)整情況

RNAT

動(dòng)、靜態(tài)SNAT

動(dòng)、靜態(tài)PNAT

INAT

靜態(tài)DNAT

靜態(tài)PNAT

IP mode

動(dòng)、靜態(tài)SNAT+DNAT

動(dòng)、靜態(tài)PNAT

Netprofile

動(dòng)、靜態(tài)SNAT

動(dòng)、靜態(tài)PNAT

USIP

靜態(tài)SNAT

靜態(tài)PNAT

MAC mode

動(dòng)態(tài)SNAT(固定目的IP


Service port=*

目的端口不變PNAT


Service use proxy port

源端口不變PNAT

動(dòng)、靜PNAT


向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI