Contents ...
udn網路城邦
在Linux下配置多個網段ip
2015/09/22 18:59
瀏覽1,006
迴響0
推薦0
引用0
前段時間有個需求,需要在一臺服務器上配置多個不同vlan的IP,折騰半天,終於搞定。
需求:在一臺Linux服務器單網卡上配置屬於不同vlan的IP,要求按照來訪問的IP原路返回。
我是在Centos 6.2 64位系統上操作的
配置過程:
1、首先確認Linux系統內核是否已經支持VLAN功能,加載了8021q模塊,lsmod |grep 8021q
2、關於網卡的解釋,好多人不知道網卡接口上的冒號和點好的區別,以下是一些解釋(我也是從網上查的,僅供參考)
a、物理網卡:物理網卡指的是服務器上實際的網絡接口設備,如在系統中看到的2個物理網卡分別對應是eth0和eth1這兩個網絡接口。
b、子網卡:子網卡並不是實際上的網絡接口設備,但是可以作為網絡接口在系統中出現,如eth0:1、eth1:2這種網絡接口。它們必須要依賴於物理網卡,雖然可以與物理網卡的網絡接口同時在系統中存在並使用不同的IP地址,而且也擁有它們自己的網絡接口配置文件。但是當所依賴的物理網卡不啟用時(Down狀態)這些子網卡也將一同不能工作。
c、虛擬VLAN網卡:這些虛擬VLAN網卡也不是實際上的網絡接口設備,也可以作為網絡接口在系統中出現,但是與子網卡不同的是,他們沒有自己的配置文件。他們只是通過將物理網加入不同的VLAN而生成的VLAN虛擬網卡。如果將一個物理網卡添加到多個VLAN當中去的話,就會有多個VLAN虛擬網卡出現,他們的信息以及相關的VLAN信息都是保存在/proc/net /vlan/config這個臨時文件中的,而沒有獨自的配置文件。它們的網絡接口名是eth0.1、eth1.2這種名字。
3、系統上的配置(我以在eth1網卡上添加2個vlan為例)
a、如果系統沒有自帶vconfig包,則先安裝vconfig包
b、vconfig add eth1 4
vconfig add eth1 5
c、對這兩個虛擬vlan網卡配置IP
ifconfig eth1.4 A.A.A.A netmask 255.255.255.0 up
ifconfig eth1.5 B.B.B.B netmask 255.255.255.0 up
d、重啟網卡
/etc/init.d/network restart
此時ifconfig會看到eth1.4 和eth1.5的信息,這樣你的虛擬網卡已經配置成功了,route -n也會看到路由信息。
e、編輯記錄路由表的文件
/etc/iproute2/rt_tables 此文件存有linux 系統路由表默認表有255 254 253三張表
在該文件最下方,添加如下(cl4、cl5是我起的路由表的名稱)
252     cl4
251     cl5
f、先清空路由表
ip route flush table cl4
ip route flush table cl5
g、添加規則
ip rule add from A.A.A.A table cl4
ip rule add from B.B.B.B table cl5
h、添加路由(此處路由已X.X.X.254為例)
ip route add default via A.A.A.254 dev eth1.4 src A.A.A.A table cl4
ip route add default via B.B.B.254 dev eth1.5 src B.B.B.B table cl5
此時系統部分已經配置完成了,但是為了防止重啟無效,要將這些配置寫到腳本裏,開機執行哦!
4、網絡配置
在該服務器的物理網卡接的交換機端口上,改成trunk口,並允許配置的那些vlan通過。也要保證從接入交換機和核心整個鏈路上均允許這些vlan通過。
還有一點,就是在接入設備上一定呀創建vlan4,vlan5,否則會一直不通哦!!!

一切配置Ok後,就會通了,你也可以抓包看下哈,從另一臺服務器上訪問本來機器,看是不是原路返回。

限會員,要發表迴響,請先登入