當前網(wǎng)絡(luò)為某企業(yè)分支網(wǎng)絡(luò),拓撲如圖1所示,通過電信專線分別接入總部及互聯(lián)網(wǎng),出口路由器分別配置內(nèi)網(wǎng)IP及運營商分配的外網(wǎng)接入IP,通過配置靜態(tài)路由結(jié)合默認路由實現(xiàn)訪問內(nèi)網(wǎng)10.0.0.0/8網(wǎng)段流量通過內(nèi)網(wǎng)專線轉(zhuǎn)發(fā)至總部側(cè)的匯聚交換機,其他流量通過外網(wǎng)專線鏈路接入運營商網(wǎng)絡(luò),出口路由器同時作為DHCP服務(wù)器為內(nèi)網(wǎng)用戶分配私網(wǎng)IP地址,并做NAT地址轉(zhuǎn)換。
圖1 改造前網(wǎng)絡(luò)拓撲
總部出于安全管控及實施安全審計策略的目的,要求各下屬單位不得通過網(wǎng)絡(luò)設(shè)備進行地址轉(zhuǎn)換接入內(nèi)網(wǎng),要嚴格按照總部給各單位分配的網(wǎng)段進行內(nèi)網(wǎng)接入,網(wǎng)關(guān)要配置在總部匯聚交換機上。
按照常規(guī)做法,應(yīng)在關(guān)閉分支出口路由器NAT功能后,由總部分配內(nèi)網(wǎng)設(shè)備互聯(lián)地址,并回指分部內(nèi)網(wǎng)業(yè)務(wù)網(wǎng)段路由到分支出口路由器互聯(lián)地址。但經(jīng)了解,總部網(wǎng)絡(luò)接入機房為無人值守站點,且協(xié)調(diào)設(shè)備配置調(diào)整流程較為繁瑣無法在短期內(nèi)通過該方式解決問題。備選方案是在主機上配置內(nèi)、外網(wǎng)IP各一,內(nèi)網(wǎng)IP不配置默認網(wǎng)關(guān),外網(wǎng)IP配置默認網(wǎng)關(guān),去掉內(nèi)、外網(wǎng)專線接入路由器,直接將進線連接到交換機的兩個接口上,在主機上通過route命令配置一條到10/8網(wǎng)段的靜態(tài)路由,下一跳地址指向總部內(nèi)網(wǎng)網(wǎng)關(guān),外網(wǎng)通過默認路由接入互聯(lián)網(wǎng)。經(jīng)分析該方式雖能滿足需求,但近百臺主機配置工作量較大,急需一種簡便易行的方法解決問題。
使用一臺3層交換機替換原有普通二層交換機,將原連接至出口路由器的內(nèi)網(wǎng)專線調(diào)整至新交換機,其余連接保持不變,調(diào)整后的拓撲如圖2所示。
首先,在三層交換機建立 10、20、30 三 個 VLAN,其中vlan30與總部內(nèi)網(wǎng)互聯(lián)、vlan20與出口路由器互聯(lián)、vlan10連接內(nèi)部用戶PC。依據(jù)總部為該分支分配了一個10.43.108.0/24的C類網(wǎng)段,統(tǒng)計后內(nèi)網(wǎng)終端數(shù)量不超過100臺,可將該網(wǎng)段劃分為兩個子網(wǎng),其中10.43.108.128/25作為與內(nèi)網(wǎng)匯聚交換機互聯(lián)用,interface-vlan30接 口 配置10.43.108.198/25地 址,10.43.108.0/25為用戶分配地 址,interface-vlan10分 配10.43.108.126/25地址,作為該網(wǎng)段用戶接入網(wǎng)關(guān)。Interfacevlan20配置 192.168.1.2/24做為與出口路由器的互聯(lián)地址。交換機配置一條靜態(tài)路由,其中10.0/8網(wǎng)段指向總部匯聚交換機地址10.43.108.193共內(nèi)網(wǎng)接入使用,配置一條默認路由下一跳指向出口路由器互聯(lián)地址192.168.1.1,連接 Internet。
其次,考慮簡化用戶IP地址信息分配,仍沿用通過出口路由器DHCP自動分配的方式,但需要對出口路由器配置做一定調(diào)整,將原有DHCP 池地址改為10.43.108.0/25,網(wǎng)關(guān)為10.43.108.126(交換機interfacevlan10地址)。路由器配置到10.43.108.0/25網(wǎng)段的回程路由,下一跳指向192.168.1.2(交換機 interface-vlan20地址)從而保證內(nèi)部網(wǎng)絡(luò)的連通性。由于交換機劃分了VLAN,用戶PC與路由器不在同一VLAN,用戶的DHCP請求廣播無法跨越VLAN傳遞至出口路由器,需要在交換機用戶接入vlan10中配置DHCP-relay(DHCP中繼),從而保證PC正常獲得由出口路由器分配的10.43.108.0/25網(wǎng)段的IP信息。
圖1 改造后網(wǎng)絡(luò)拓撲
dhcp relay server-group 10 ip 192.168.1.1 //配置dhcp服務(wù)器為出口路由器地址
通過上述配置后,可以通過下面命令查看交換機當前的DHCP中繼狀態(tài)(dhcp server與client的數(shù)據(jù)交互統(tǒng)計信息)
完成上述配置后PC機正常獲得地址,可正常訪問Internet,但無法訪問信息內(nèi)網(wǎng),在三層交換機上Ping內(nèi)網(wǎng)匯聚交換機地址正常,說明網(wǎng)絡(luò)通道沒有問題,在交換機上debugging arp packet命令發(fā)現(xiàn)在主機Ping內(nèi)網(wǎng)匯聚交換機地址時,收到對端匯聚交換機發(fā)送的ARP請求:
sender_ip_addr:10.43.108.193,target_eth_addr:0000-0000-0000, target_ip_addr:10.43.108.1 *Mar 18 15:46:44:265 2015 HX_S3700 ARP/7/arp_rcv: Receive an ARP Packet, operation:1,sender_eth_addr:000f-e200-0201
但沒有任何ARP相應(yīng)信息。究其根本原因?qū)τ谏嫌螀R聚交換機10.43.108.0/24網(wǎng)段為直連路由,當有去往該網(wǎng)段的數(shù)據(jù)包時,會直接通過10.43.108.193接口發(fā)送ARP請求目的主機的MAC地址,后重新封包、發(fā)送至目標主機。由于接入交換機劃分子網(wǎng)和VLAN后,vlan20收到的ARP廣播不可能擴散至vlan10的主機中,因此上游交換機無法獲得主機MAC地址從而無法重新封裝數(shù)據(jù)包轉(zhuǎn)發(fā)至目標主機。通過在交換機vlan30中使用 [HX_S3700-Vlan-interface30]proxy-arp enable 命令開啟ARP代理功能后interface-vlan30接口代表vlan10中的PC響應(yīng)上游75交換機發(fā)送的ARP請求,匯聚交換機將去往 128/25網(wǎng)段主機的MAC地址都會對應(yīng)到interfacevlan 30 的接口MAC上,數(shù)據(jù)包發(fā)送過來的后,交換機根據(jù)直連路由表轉(zhuǎn)發(fā)數(shù)據(jù)包至vlan10中的主機從而保證了主機正常訪問內(nèi)網(wǎng)。開啟代理ARP后,debugging arp packet輸出信息 Send an ARP Packet,operation: 2,sender_eth_addr:000f-e200-0101,sender_ip_addr : 10.43.108.1, target_eth_addr :000f-e200-0201,target_ip_addr:10.43.108.193,其中 108.1為PC自動換取的IP,MAC地址000f-e200-0101為交換機interface-vlan30的MAC地址,該信息說明交換機代表PC對上游匯聚交換機發(fā)送的ARP請求予以了相應(yīng)。至此PC已能夠正常訪問總部內(nèi)網(wǎng)及Internet,問題得到較好解決。