1. 程式人生 > >Centos 6.5雙網卡雙IP雙網關配置

Centos 6.5雙網卡雙IP雙網關配置

ip地址配置

因公司業務需要需在服務器上配置電信,聯通兩個運營商的IP地址,實現數據分別從兩個地址傳輸,即兩個IP地址都能與外界網絡互通。

當時我發現在服務器的兩塊網卡上分別配置兩個IP地址及網關,重啟網絡服務之後,系統會默認選取其中一塊網卡的網關做為數據傳輸網關,這樣造成的後果就是一塊網卡無法與外界通信,後來手動為那塊無法通信的網卡添加路由指向之後,結果不是把系統的默認路由替換掉就是路由指向不生效,導致還是無法讓那個兩塊網卡同時與外界網絡互相通信,後來嘗試在系統中創建兩張路由表分別傳輸兩張網卡的數據:

具體操作如下:


電信網絡192.168.1.2/24網關192.168.1.1
聯通網絡172.16.1.2/24網關172.16.1.1


第一步:
第一塊網卡添加電信網絡完整的地址信息,包括IP地址,掩碼,網關
#vim /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
TYPE=Ethernet
ONBOOT=yes
BOOTPROTO=static
IPADDR=192.168.1.2
NETMASK=255.255.255.0
GATEWAY=192.168.1.1

第二塊網卡只添加IP地址,掩碼,不添加網關
#vim /etc/sysconfig/network-scripts/ifcfg-eth1
DEVICE=eth1
TYPE=Ethernet
ONBOOT=yes
BOOTPROTO=static
IPADDR=172.16.1.2
NETMASK=255.255.255.0

第二步:
分別為電信,聯通創建兩個路由表
#vim /etc/iproute2/rt_tables
252 tel
252 cnc

第三步:增加路由規則
#ip route flush table tel
#ip route add default via 192.168.1.1 dev eth0 src 192.168.1.2 table tel
#ip rule add from 192.168.1.2 table tel
此處是設置電信為網關,並可實現讓電信的資源訪問只從eth0網卡出去

#ip route flush table cnc
#ip route add default via 172.16.1.1 dev eth1 src 172.16.1.2 table cnc
#ip rule add from 172.16.1.2 table cnc
此處是設置聯通的網關,並可實現讓聯通的資源訪問只從eth1網卡出去

第四步:配置networking啟動腳本文件
#vim /etc/init.d/networking
ip route flush table tel
ip route add default via 192.168.1.1 dev eth0 src 192.168.1.2 table tel
ip rule add from 192.168.1.2 table tel
ip route flush table cnc
ip route add default via 172.16.1.1 dev eth1 src 172.16.1.2 table cnc
ip rule add from 172.16.1.2 table cnc
exit 0
第五步:退出並重啟網絡
#chmod u+x /etc/init.d/networking
#/etc/init.d/networking restart

第六步:設置開機自啟
因為已經做好的啟動腳本,只需要在開機自啟文件中加入開機時執行啟動腳本即可
#vim /etc/rc.local
/etc/init.d/networking restart

此時電信跟聯通的地址都可以正常訪問。



Centos 6.5雙網卡雙IP雙網關配置