內(nèi)網(wǎng)通過域名或公網(wǎng)IP訪問ERP的解決方案
內(nèi)網(wǎng)通過域名或公網(wǎng)IP 訪問ERP 的解決方案內(nèi)網(wǎng)通過域名或公網(wǎng)IP 訪問ERP 的解決方案 Nov 18, 2014關(guān)鍵字公網(wǎng)IP 、路由回流、NAT 、DNS 、DNS Mapping。1. 需
內(nèi)網(wǎng)通過域名或公網(wǎng)IP 訪問ERP 的解決方案
內(nèi)網(wǎng)通過域名或公網(wǎng)IP 訪問ERP 的解決方案 Nov 18, 2014
關(guān)鍵字
公網(wǎng)IP 、路由回流、NAT 、DNS 、DNS Mapping。
1. 需求分析
ERP 系統(tǒng)安裝部署完畢后,經(jīng)常會遇到這樣的問題,就是外網(wǎng)用戶可以使用公網(wǎng)IP 能正常訪問ERP 系統(tǒng),但是內(nèi)網(wǎng)用戶卻無法使用公網(wǎng)IP 訪問ERP 系統(tǒng),這個問題會經(jīng)常遇到,解決的方法也有很多。那么為什么會出現(xiàn)這樣的問題?解決問題前,首先介紹一下路由回流。
2. 路由回流
當(dāng)用路由器防火墻等設(shè)備將內(nèi)網(wǎng)服務(wù)器發(fā)布到公網(wǎng)上,供Internet 用戶訪問的過程中出現(xiàn)的一種現(xiàn)象,就是你發(fā)現(xiàn)web 服務(wù)器已經(jīng)成功發(fā)布了,Internet 用戶也已經(jīng)可以通過你路由器公網(wǎng)接口地址成功訪問了,而你卻發(fā)現(xiàn)自己在內(nèi)網(wǎng)中與web 服務(wù)器同網(wǎng)段的主機(jī)上直接訪問那個路由器公網(wǎng)地址是無法訪問到web 服務(wù)器的頁面內(nèi)容的,這就是路由回流。
造成路由回流的原因主要是出口設(shè)備路由器或者是防火墻做了NAT/PAT(也被稱作源地址轉(zhuǎn)換)和端口映射(也被稱為目標(biāo)地址轉(zhuǎn)換)造成的。
舉例說明,內(nèi)網(wǎng)PC 的IP 地址為:192.168.1.10,內(nèi)網(wǎng)ERP 服務(wù)器的IP 地址為:192.168.1.100,路由器外網(wǎng)接口IP 地址為:202.103.100.100,外網(wǎng)通過http://202.103.100.100就可以訪問內(nèi)網(wǎng)的ERP 服務(wù)器192.168.1.100,當(dāng)然在出口設(shè)備上目標(biāo)地址轉(zhuǎn)換已經(jīng)完成。
第 1 頁 共 5 頁
,ERP 服務(wù)器 當(dāng)內(nèi)網(wǎng)PC 通http://202.103.100.100訪問內(nèi)網(wǎng)服務(wù)ERP 服務(wù)器的時(shí)候,源地址為:192.168.1.10,目標(biāo)地址為:202.103.100.100,內(nèi)網(wǎng)PC 發(fā)現(xiàn)202.103.100.100和自己的IP 地址192.168.1.10不在一個網(wǎng)段,會查找路由表,將數(shù)據(jù)包發(fā)給路由器。當(dāng)路由器接到請求后,做目標(biāo)地址轉(zhuǎn)換,此時(shí)源地址不變,還是192.168.1.10,但是目標(biāo)地址變?yōu)椋?92.168.1.100。內(nèi)網(wǎng)WEB 服務(wù)器會應(yīng)答,應(yīng)答的源地址為自己的IP 地址:192.168.1.100,目標(biāo)地址為:192.168.1.10,此時(shí)源地址和目標(biāo)地址在同一個網(wǎng)段,不需要查找路由表,也就是說不需要經(jīng)過路由器,只需要在交換機(jī)上查找MAC 地址表,做轉(zhuǎn)發(fā)就可以了。
問題就出現(xiàn)在上面,內(nèi)網(wǎng)ERP 服務(wù)器做出的應(yīng)答,內(nèi)網(wǎng)PC 收到后,發(fā)現(xiàn)應(yīng)答的源地址是192.168.1.100而不是202.103.100.100,內(nèi)網(wǎng)PC 收到數(shù)據(jù)包后,會把數(shù)據(jù)包丟棄,然后內(nèi)網(wǎng)PC 會一直等啊等,等源地址為:202.103.100.100,目標(biāo)地址為自己IP :192.168.1.10的數(shù)據(jù)包,但是一直到超時(shí)都等不到,最終結(jié)果可想而知。
同樣,192.168.1.100等待192.168.1.10的應(yīng)答,也同樣等到超時(shí)也等不到應(yīng)答。
HTTP 協(xié)議是基于TCP 的,以上發(fā)生在TCP 的三次握手階段,TCP 三次握手無法完整的建立。
說明:后面的配置都以此拓?fù)鋱D為例。
3. 解決方案
已經(jīng)知道了路由回流是造成內(nèi)網(wǎng)用戶無法使用公網(wǎng)IP 訪問ERP 系統(tǒng)的原因,那么怎么解決呢?解決方法有多種,下面分別介紹幾種解決方案。
3.1 內(nèi)部NAT 解決方案
第 2 頁 共 5 頁
,內(nèi)網(wǎng)通過域名或公網(wǎng)IP 訪問ERP 的解決方案
路由器上除了g0/0/1接口上配置端口映射(目標(biāo)地址轉(zhuǎn)換),外網(wǎng)用戶通過訪問http:// 202.103.100.100就可以訪問ERP 服務(wù)器192.168.100了,如果要內(nèi)網(wǎng)用戶也可以通過http:// 202.103.100.100訪問ERP 服務(wù)器192.168.100,還需要在路由器的g0/0/0接口上配置端口映射(目標(biāo)地址轉(zhuǎn)換)。這里以華為路由器為例,其它廠商的路由器請自己查找相關(guān)資料配置。
[R1]acl number 2000
[R1-acl-basic-2000]rule 0 permit source 192.168.1.0 0.0.0.255
[R1-acl-basic-2000]rule 1 deny
[R1-acl-basic-2000]quit
[R1]interface GigabitEthernet 0/0/2
[R1-GigabitEthernet0/0/2]nat outbound 2000
[R1-GigabitEthernet0/0/2]nat server protocol tcp global 202.103.100.100 80 inside 192.168.1.100 80
[R1-GigabitEthernet0/0/2]quit
[R1]interface GigabitEthernet 0/0/0
[R1-GigabitEthernet0/0/0]nat outbound 2000
[R1-GigabitEthernet0/0/0]nat server protocol tcp global 202.103.100.100 80 inside 192.168.1.100 80
紅色字體部門就是內(nèi)部NAT 配置。
3.2 內(nèi)網(wǎng)DNS 解決方案
按照我們一般的習(xí)慣,訪問網(wǎng)站一般采用域名,這樣方便記憶,同樣訪問明源ERP 系統(tǒng)的時(shí)候采用域名比采用IP 要方便,注冊域名讓公網(wǎng)IP 同域名綁定,外網(wǎng)用戶就可以使用域名訪問明源ERP 系統(tǒng)了。那么內(nèi)網(wǎng)用戶如何才能使用域名正常的訪問明源ERP 系統(tǒng)呢?
ERP 服務(wù)器
內(nèi)網(wǎng)用戶能否直接使用外網(wǎng)的域名訪問明源的ERP 系統(tǒng)能,直接訪問是不行的,因?yàn)檫€是存在路由回流的問題,所以需要在內(nèi)網(wǎng)配置一臺DNS 服務(wù)器,內(nèi)網(wǎng)的所有客戶端的DNS 的IP 都填寫這臺內(nèi)網(wǎng)的DNS 服務(wù)器
第 3 頁 共 5 頁
,內(nèi)網(wǎng)通過域名或公網(wǎng)IP 訪問ERP 的解決方案
的IP 地址,那么問題來了,內(nèi)網(wǎng)的用戶要想訪問外網(wǎng)像百度這樣的網(wǎng)站該怎么辦呢,這個很容易解決,只需要在內(nèi)網(wǎng)DNS 服務(wù)器上配置轉(zhuǎn)發(fā)器,轉(zhuǎn)發(fā)器中填寫公網(wǎng)上的運(yùn)營商DNS 服務(wù)器的IP 地址就可以解決問題了。內(nèi)網(wǎng)DNS 服務(wù)器可以搭建在Windows Server 2003/2008上。
3.3 防火墻 DNS Mapping解決方案
DNS Mapping應(yīng)用于內(nèi)網(wǎng)用戶通過域名訪問內(nèi)網(wǎng)服務(wù)器,設(shè)置DNS Mapping后,當(dāng)內(nèi)網(wǎng)用戶發(fā)送DNS 請求的時(shí)候,防火墻設(shè)備主動將域名解析成服務(wù)器的內(nèi)網(wǎng)IP 地址,返回給客戶端,客戶端實(shí)際是直接訪問服務(wù)器的內(nèi)網(wǎng)IP ,不需要經(jīng)過NAT 轉(zhuǎn)換。
域名填寫:erp.mysoft.com.cn ,公網(wǎng)IP 地址填寫:202.103.100.100,內(nèi)網(wǎng)IP 地址填寫:192.168.1.100。
如果公司內(nèi)部沒有DNS 服務(wù)器,如果有防火墻,防火墻支持DNS Mapping ,也可以解決路由回流的問題。注意不是所有的防火墻都支持路由回流,購買前請咨詢防火墻廠商。
說明:該截圖為深信服防火墻的配置界面。
3.4 路由器 DNS Mapping解決方案
路由器的DNS Mapping 和防火墻的類似,只是將出口的防火墻換成路由器而已,配置略有差異,這里以華為路由器為例,配置DNS Mapping,其中ERP 服務(wù)器的域名為:erp.mysoft.com.cn ,內(nèi)網(wǎng)IP 地址為:192.168.1.100,80為ERP 服務(wù)器的端口號,tcp 是因?yàn)閔ttp 協(xié)議是基于TCP 的。
[R1] nat dns-map erp.mysoft.com.cn 192.168.1.100 80 tcp
3.5 其它解決方案
這種解決方案不是常規(guī)的解決方案,但是在某些情況可以考慮。一般服務(wù)器有多塊網(wǎng)卡,此處是給服務(wù)器另外一塊網(wǎng)卡配置公網(wǎng)的IP ,但是該服務(wù)器的這塊網(wǎng)卡不能直接配置網(wǎng)關(guān),需要使用命令配置,同時(shí)該網(wǎng)卡的網(wǎng)關(guān)在核心交換機(jī)上。這樣使用公網(wǎng)的IP 訪問ERP 服務(wù)器的時(shí)候,不需要經(jīng)過出口的防火墻或者路由器,直接通過核心交換機(jī)實(shí)現(xiàn)不同VLAN 之間的路由。
第 4 頁 共 5 頁
,ERP 服務(wù)器
ERP 服務(wù)器上,在命令行下輸入:
route add 192.168.1.0 mask 255.255.255.0 202.103.100.101 –p
核心交換機(jī)上的配置:
[switch]vlan 100
[switch-vlan100]quit
[switch]interface GigabitEthernet 0/0/1
[switch-GigabitEthernet0/0/1]port link-type access
[switch-port-group-defa]port default vlan 100
[switch-port-group-defa]quit
[switch]interface vlan 100
[switch-Vlanif100]ip address 202.103.100.101 255.255.255.0
[switch-Vlanif100]quit
4. 小結(jié)
上述幾種解決方案中,內(nèi)網(wǎng)DNS 解決方案最符合一般人的習(xí)慣,安裝配置也是最簡單的,但是需要一臺DNS 服務(wù)器,如果訪問量不大,可以考慮將DNS 服務(wù)器和其他的服務(wù)器合并,如果是域環(huán)境,首選內(nèi)網(wǎng)DNS 解決方案,因?yàn)橛蚩刂破餍枰蠨NS 支持。
內(nèi)部NAT 解決方案在企業(yè)級的路由器或者防火墻上很容實(shí)現(xiàn),但是難度比內(nèi)網(wǎng)DNS 方案略大。
防火墻DNS Mapping 和路由器DNS Mapping 需要防火墻和路由器支持,目前大多數(shù)防火墻和路由器支持,但是購買前請咨詢廠商。
其它解決方案不是推薦的解決方案,一般要求ERP 服務(wù)器要能連接到三層交換機(jī)上才能實(shí)現(xiàn)。
第 5 頁 共 5 頁