很多公司都擁有兩個ISP的出口,比如電信和網(wǎng)通。公司內(nèi)部署了內(nèi)部服務(wù)器供外網(wǎng)用戶訪問。要求內(nèi)部服務(wù)器私網(wǎng)地址10.1.1.1分別針對電信用戶和網(wǎng)通用戶在防火墻上配置兩個NAT Server,供不同用戶訪問,即NAT Server雙出口功能。
配置完成后發(fā)現(xiàn),電信用戶可以通過公網(wǎng)地址2.2.2.2訪問內(nèi)部服務(wù)器,網(wǎng)通用戶也可以通過公網(wǎng)地址3.3.3.3訪問內(nèi)部服務(wù)器,但網(wǎng)通用戶無法訪問電信公網(wǎng)服務(wù)器地址2.2.2.2,電信用戶也無法訪問網(wǎng)通公網(wǎng)服務(wù)器地址3.3.3.3。
通常內(nèi)部服務(wù)器以公網(wǎng)地址對外提供訪問時,我們是通過配置全局的NAT Server來實現(xiàn)的。每配置一條NAT Server后會生成兩張全局映射表,一張是正向映射表,用于外網(wǎng)用戶訪問內(nèi)部服務(wù)器時的地址轉(zhuǎn)換映射;一張是反向映射表,用于內(nèi)部服務(wù)器主動訪問外網(wǎng)時的地址映射。
當(dāng)內(nèi)部服務(wù)器一個私網(wǎng)IP地址映射成兩個公網(wǎng)IP地址時,會建立兩個反向映射表,這種情況下當(dāng)內(nèi)部服務(wù)器主動訪問外網(wǎng)時,會有兩個映射關(guān)系,這是不允許的。
在配置NAT Server雙出口過程中,通常采用以下兩種方式:
1、基于不同安全區(qū)域進行配置,將電信用戶和網(wǎng)通用戶分別劃入不同安全區(qū)域,分別提供不同的公網(wǎng)IP地址。
此方式下,內(nèi)部服務(wù)器主動訪問外網(wǎng)時基于不同的安全區(qū)域來選擇相應(yīng)的反向表做地址映射。
[sysname] nat server zone zone1 global 2.2.2.2 inside 10.1.1.1
[sysname] nat server zone zone2 global 3.3.3.3 inside 10.1.1.1
zone1對應(yīng)電信用戶所在安全區(qū)域;zone2對應(yīng)網(wǎng)通用戶所在安全區(qū)域。
2、配置no-reverse參數(shù),取消反向表的建立。
此方式下,通常不允許內(nèi)部服務(wù)器主動訪問外網(wǎng),如果內(nèi)部服務(wù)器需要主動訪問外網(wǎng),則要針對此服務(wù)器在上另外配置基于源IP地址的NAT功能。
[sysname] nat server global 2.2.2.2 inside 10.1.1.1 no-reverse
[sysname] nat server global 3.3.3.3 inside 10.1.1.1 no-reverse
完成上述配置后,電信用戶可以通過2.2.2.2地址訪問內(nèi)部服務(wù)器,網(wǎng)通用戶可以通過3.3.3.3地址訪問內(nèi)部服務(wù)器。
當(dāng)電信用戶訪問網(wǎng)通服務(wù)器的地址3.3.3.3時,報文到達,根據(jù)正向映射表將3.3.3.3轉(zhuǎn)換為10.1.1.1,并將報文送到內(nèi)部服務(wù)器;內(nèi)部服務(wù)器回應(yīng)報文到達后,命中會話表,通過查找路由,發(fā)現(xiàn)是送往電信用戶的報文,則就近將報文從電信用戶直連接口送出,即報文從網(wǎng)通用戶接口到達,但從電信用戶接口送出。
此時,如果電信用戶與之間還部署了其他防火墻設(shè)備,并且這個防火墻設(shè)備配置了鏈路狀態(tài)檢測功能,對于來回路徑不一致的報文,不允許通過,最后導(dǎo)致報文被丟棄。
配置NAT Server雙出口功能主要是為了實現(xiàn)外網(wǎng)用戶就近訪問,建議網(wǎng)通用戶通過網(wǎng)通的公網(wǎng)IP地址訪問內(nèi)部服務(wù)器,電信用戶通過電信公網(wǎng)IP地址訪問內(nèi)部服務(wù)器,從而實現(xiàn)快速訪問,盡量避免交叉訪問,以免影響正常業(yè)務(wù)。