梁文生
摘要:該文詳細(xì)介紹校園機(jī)房中二層交換機(jī)VLAN的劃分,通過(guò)架設(shè)Linux服務(wù)器做網(wǎng)關(guān),配置NAT規(guī)則,讓多VLAN能同時(shí)訪問(wèn)Internet,并以實(shí)例加以說(shuō)明。給校園機(jī)房組網(wǎng)提供一個(gè)可行的、穩(wěn)定的組網(wǎng)方法。
關(guān)鍵詞: 校園網(wǎng);Linux;VLAN;網(wǎng)關(guān);NAT
中圖分類(lèi)號(hào):TP393 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2014)04-0709-03
目前高職校園計(jì)算機(jī)實(shí)訓(xùn)室越來(lái)越多,計(jì)算機(jī)數(shù)量也越來(lái)越多,劃分VLAN成為計(jì)算機(jī)實(shí)訓(xùn)室局域網(wǎng)中抑制廣播風(fēng)暴、增強(qiáng)安全性、提高網(wǎng)絡(luò)可管理性的首選方案。同時(shí),現(xiàn)在機(jī)房一般都要求連接Internet,在此情況下,使用Linux雙網(wǎng)卡搭建NAT網(wǎng)關(guān),實(shí)現(xiàn)多VLAN訪問(wèn)Internet就是其中一個(gè)比較良好的方法。
1 某實(shí)訓(xùn)樓機(jī)房網(wǎng)絡(luò)布局情況簡(jiǎn)介
某一實(shí)訓(xùn)樓有4個(gè)機(jī)房,各個(gè)機(jī)房屬于不同的VLAN,并各有一條主線(xiàn)連接到一臺(tái)劃分有VLAN的二層交換機(jī)(Cisco2960)上,網(wǎng)絡(luò)環(huán)境如圖1所示。
1)一個(gè)帶VLAN功能的二層交換機(jī),用于實(shí)現(xiàn)VLAN劃分,并通過(guò)Linux網(wǎng)關(guān)實(shí)現(xiàn)VLAN內(nèi)主機(jī)與外網(wǎng)的通信。
2)一個(gè)Linux系統(tǒng)(CentOS5)雙網(wǎng)卡主機(jī)做網(wǎng)關(guān),其中eth0網(wǎng)卡連接學(xué)校中心網(wǎng)絡(luò),并可以訪問(wèn)互聯(lián)網(wǎng),網(wǎng)卡eth1連接二層交換機(jī)的Trunk端口,實(shí)現(xiàn)路由轉(zhuǎn)發(fā)功能。
2 Cisco2960交換機(jī)上VLAN的配置
本例所用交換機(jī)為Cisco2960,劃分4個(gè)VLAN,將1號(hào)端口設(shè)置為trunk模式(中繼線(xiàn)路),將2—6號(hào)端口劃分到默認(rèn)的VLAN 1,將7—12號(hào)端口劃分到VLAN12,將13—18號(hào)端口劃分到VLAN13,將19—24號(hào)端口劃分到VLAN14。VLAN的劃分采用一般的按端口劃分方法。
2.1交換機(jī)Cisco2960的配置:
3 Linux網(wǎng)關(guān)主機(jī)中雙網(wǎng)卡的設(shè)置
由環(huán)境可以得知,Linux系統(tǒng)主機(jī)主要是實(shí)現(xiàn)轉(zhuǎn)發(fā)功能,讓內(nèi)網(wǎng)主機(jī)可以相互訪問(wèn)并能成功的訪問(wèn)外網(wǎng)。因此,首先介紹一下Linux系統(tǒng)主機(jī)的配置。Linux主機(jī)是可以通過(guò)eth1直接連接學(xué)校中心網(wǎng)絡(luò)上外網(wǎng)的。Eth1的IP地址、網(wǎng)關(guān)和DNS都是通過(guò)網(wǎng)絡(luò)服務(wù)中心自動(dòng)獲取或者是手動(dòng)分配的。此處Eth1 的IP配置為:192.168.1.1/24,eth0配置為:IP: 192.168.100.250/24、GW: 192.168.100.1、DNS:192.168.100.2。
3.1 確認(rèn)Linux系統(tǒng)內(nèi)核是否已經(jīng)支持VLAN功能
一般來(lái)說(shuō)RH9以后的Linux發(fā)行版本,諸如RHEL4、RHEL5、CentOS4、CentOS5都已經(jīng)默認(rèn)支持了VLAN的功能,本例系統(tǒng)使用CentOS5,已經(jīng)默認(rèn)支持VLAN功能。
3.2 物理網(wǎng)卡、虛擬VLAN網(wǎng)卡的關(guān)系
物理網(wǎng)卡:物理網(wǎng)卡這里指的是服務(wù)器上實(shí)際的網(wǎng)絡(luò)接口設(shè)備,本例Linux網(wǎng)關(guān)主機(jī)上安裝兩個(gè)網(wǎng)卡,在系統(tǒng)中看到的2個(gè)物理網(wǎng)卡分別對(duì)應(yīng)是eth0和eth1。
虛擬VLAN網(wǎng)卡:虛擬VLAN網(wǎng)卡不是實(shí)際上的網(wǎng)絡(luò)接口設(shè)備,只是通過(guò)將物理網(wǎng)卡加入不同的VLAN而生成的VLAN虛擬網(wǎng)卡,并作為網(wǎng)絡(luò)接口在系統(tǒng)中出現(xiàn),但沒(méi)有自己的配置文件。如果將一個(gè)物理網(wǎng)卡添加到多個(gè)VLAN當(dāng)中去的話(huà),就會(huì)有多個(gè)VLAN虛擬網(wǎng)卡出現(xiàn),以eth0.1、eth1.2這種名字形式表示,它們的信息以及相關(guān)的VLAN信息都是保存在/proc/net/vlan/config這個(gè)臨時(shí)文件中的,沒(méi)有獨(dú)自的配置文件,重啟后會(huì)被自動(dòng)刪除。
3.3 Linux網(wǎng)卡配置
由于在Linux上eth1要被設(shè)定為T(mén)runk與Cisco交換機(jī)2960中繼連接,因此,網(wǎng)絡(luò)中有幾個(gè)VLAN的話(huà),那么中繼網(wǎng)卡eth1上也必須要加入對(duì)應(yīng)的VLAN才能支持到(默認(rèn)的本征vlan 1不需要添加,屬于本征vlan 1的端口設(shè)置IP與該物理網(wǎng)卡網(wǎng)段一致,并將網(wǎng)關(guān)指向eth1即可)。
3.3.1 將eth1添加到VLAN 2中:
第一次添加VLAN虛擬網(wǎng)卡的時(shí)候就一定會(huì)出現(xiàn)上面的那句提示,原因是因?yàn)槟J(rèn)下/proc/net/vlan/config這個(gè)專(zhuān)門(mén)用來(lái)保存VLAN信息的文件是沒(méi)有的。由于第一次添加VLAN網(wǎng)卡,那么這個(gè)文件也會(huì)被自動(dòng)建立起來(lái)。另外,在/proc/目錄下面的文件都是系統(tǒng)的臨時(shí)文件,所以在配置并測(cè)試VLAN成功后,需要將相關(guān)命令添加到rc.local這個(gè)啟動(dòng)腳本當(dāng)中去。
按同樣方式將eth1添加到VLAN 3、4中:
4 啟用轉(zhuǎn)發(fā)功能
以上配置完成后,VLAN內(nèi)的主機(jī)還不可以互相訪問(wèn),,因?yàn)椴⑽撮_(kāi)啟Linux系統(tǒng)主機(jī)的轉(zhuǎn)發(fā)功能。執(zhí)行如下命令:
# echo 1 > /proc/sys/net/ipv4/ip_forward
把ip_forward的值改為1,表示開(kāi)啟了轉(zhuǎn)發(fā)功能,使用“service network restart”命令重新啟動(dòng)網(wǎng)絡(luò)服務(wù)后,VLAN間的主機(jī)即可互相訪問(wèn)了。
5 配置NAT規(guī)則
經(jīng)過(guò)以上的配置后,VLAN間的主機(jī)可以相互訪問(wèn),但是內(nèi)網(wǎng)主機(jī)還是無(wú)法訪問(wèn)互聯(lián)網(wǎng)。因此需要把VLAN內(nèi)的主機(jī)IP轉(zhuǎn)換成Linux系統(tǒng)主機(jī)可以上網(wǎng)的IP,本例只需將內(nèi)網(wǎng)的IP轉(zhuǎn)換成Linux系統(tǒng)eth0接口的IP即可。配置的NAT為源NAT轉(zhuǎn)換:
#iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o eth0 -j MASQUERADE經(jīng)過(guò)以上的配置之后,VLAN內(nèi)所有主機(jī)就可以正常的訪問(wèn)互聯(lián)網(wǎng)了。但是這些配置信息是寫(xiě)到系統(tǒng)臨時(shí)文件的,系統(tǒng)重啟將會(huì)導(dǎo)致配置丟失,因此需要在啟動(dòng)腳本/etc/rc.local中增加以下語(yǔ)句:
6 結(jié)束語(yǔ)
Linux是一個(gè)功能強(qiáng)大而且運(yùn)行非常穩(wěn)定的免費(fèi)操作系統(tǒng),本例根據(jù)高職院校計(jì)算機(jī)實(shí)訓(xùn)室的實(shí)際情況,使用Linux做網(wǎng)關(guān)服務(wù)器實(shí)現(xiàn)多VLAN網(wǎng)絡(luò)的設(shè)計(jì),使VLAN內(nèi)主機(jī)可以順利高效訪問(wèn)Internet,達(dá)到對(duì)計(jì)算機(jī)實(shí)訓(xùn)室的有效管理,確保計(jì)算機(jī)實(shí)訓(xùn)室多VLAN網(wǎng)絡(luò)的正常穩(wěn)定運(yùn)行。
參考文獻(xiàn):
[1] 郭雅.計(jì)算機(jī)網(wǎng)絡(luò)實(shí)驗(yàn)指導(dǎo)書(shū)[M].北京:電子工業(yè)出版社,2012.
[2] 唐燈平.利用Packet Tracer模擬組建大型單核網(wǎng)絡(luò)的研究[J].實(shí)驗(yàn)室研究與探索,2011(1):186-198.
[3] 甘剛.網(wǎng)絡(luò)設(shè)備配置與管理[M].北京:人民郵電出版社,2011.
[4] 王達(dá).Cisco交換機(jī)配置與管理完全手冊(cè)[M].北京:中國(guó)水利水電出版社,2013.
[5] 余柏山.Linux系統(tǒng)管理與網(wǎng)絡(luò)管理[M].北京:清華大學(xué)出版社,2010.