由於電信和網通之間互聯互連的問題,很多人選擇雙線路機房,所謂雙線路機房就是擁有兩條出口,一條電信一條網通。最近在一個雙線路機房測試一台伺服器,打
算作為論壇的資料庫伺服器使用,伺服器作業系統為
Linux。計劃配置為雙IP,雙網域名稱,使得瀏覽者通過電信和網通兩條線路都能正常訪問伺服器,而且各走各的,互不影響。在配置網路的時候遇到了問題,由
於Linux預設只有一個網關,在網路上查詢了很久,找到一個解決方案,因此整理了一下。感謝原文作者jac003ke。
伺服器作業系統RedHat linux 9,設定兩張路由表
1. vi /etc/iproute2/rt_tables,增加網通和電信兩個路由表
251 tel 電信路由表
252 cnc 網通路由表
2. 給網卡綁定兩個地址用於電信和網通兩個線路
ip addr add 192.168.0.2/24 dev eth0
ip addr add 10.0.0.2/24 dev eth1
3、分別設定電信和網通的路由表
電信路由表:
#確保找到本地子網
ip route add 192.168.0.0/24 via 192.168.0.2 dev eth0 table tel
#內部迴環網路
ip route add 127.0.0.0/8 dev lo table tel
#192.168.0.1為電信網路預設閘道地址
ip route add default via 192.168.0.1 dev eth0 table tel
網通線路路由表:
#確保找到本地子網
ip route add 10.0.0.0/24 via 10.0.0.2 dev eth1 table cnc
#內部迴環網路
ip route add 127.0.0.0/8 dev lo table cnc
#10.0.0.1是網通的預設閘道
ip route add default via 10.0.0.1 dev eth1 table cnc
4、電信和網通各有自己的路由表,制定策略,讓192.168.0.2的回應資料包走電信的路由表路由,10.0.0.2的回應資料包走網通的路由表路由
ip rule add from 192.168.0.1 table tel
ip rule add from 10.0.0.1 table cnc