雙網卡雙網關設置問題

首先要聲明一點,雙網卡一臺電腦擁有兩個網關是不可能的,因爲默認網關(default gateway)只能是一個。

給服務器安裝兩塊網卡,分別設置不同的ip和網關(內網和外網),外網的通過外網網卡來訪問,內網的通過內網網卡來訪問,似乎實現起來很簡單,但事實上很難啊,因爲默認網關(default gateway)只能是一個!

解決的辦法就是:

1、將其中一塊網卡(如外網)設置默認網關;

2、手工加上一條靜態路由,讓另一個網段(內網)的數據經過第二個網卡。使用route命令,命令的範例如下,希望能幫某些同志一點小忙。

參考命令:

範例1、route add -p 10.0.0.0 mask 255.255.255.0 10.40.4.200(讓對10.0.0.1的訪問走10.40.4.200的網卡,mask 後面是子網掩碼)

範例2、route add -p 10.0.0.0 mask 255.0.0.0 10.40.4.200

範例3、route add -p 0.0.0.0 mask 0.0.0.0 10.40.4.200(不用說了吧,讓所有的訪問走10.40.4.200)

說明:

1、加上-p參數,加入的路由爲永久路由,不會因爲電腦重新啓動而被初始化。10.40.4.200是我的電腦網卡IP。 輸入route 可以得到更多的幫助。

2、如果你的電腦已經有兩個網關(如使用了SoftEther),用route print可以看到兩條0.0.0.0的路由,可以先刪除0.0.0.0的路由,然後重新添加。

route delete 0.0.0.0         “刪除所有0.0.0.0的路由”

附:在網絡上找資料時,常常看到有人在問類似的問題,可以看出大家對路由方面的知識很陌生。於是提供以下資料,供大家參考:

1、《解讀route命令》http://www.kpcn.org/news/Read.asp?NewsID=8527
2、《學習Windows網絡命令之route命令小檔案》http://www.kpcn.org/news/Read.asp?NewsID=8528

========= 以下是另一篇文章的內容 ============

經常遇到一臺計算機要同時訪問兩個網絡(一個是互聯網,一個是企業內部網)的要求。以本單位爲例:地址是虛構的^_^
機器有兩塊網卡,接到兩臺交換機上
internet地址:218.22.123.123,子網掩碼:255.255.255.0,網關:218.22.123.254
企業內部網地址:10.128.123.123,子網掩碼:255.255.255.0,網關:10.128.123.254
如果按正常的設置方法設置每塊網卡的ip地址和網關,再cmd下使用route print查看時會看到
Network Destination Netmask Gateway Interface Metric
0.0.0.0 0.0.0.0 218.22.123.254 218.22.123.123 20
0.0.0.0 0.0.0.0 10.128.123.254 10.128.123.123 1
即指向0.0.0.0的有兩個網關,這樣就會出現路由衝突,兩個網絡都不能訪問。要實現同時訪問兩個網絡就要用到route命令
第一步:route delete 0.0.0.0         ”刪除所有 0.0.0.0 的路由"
第二步:route add 0.0.0.0 mask 0.0.0.0 218.22.123.254          "添加 0.0.0.0 網絡路由"
第三步:route add 10.0.0.0 mask 255.0.0.0 10.128.123.254   "添加 10.0.0.0 網絡路由"
這時就可以同時訪問兩個網絡了,但碰到一個問題,使用上述命令添加的路由在系統重新啓動後會自動丟失,怎樣保存現有的路由表呢?
在win2000 下可以使用route add -p 添加靜態路由,即重啓後,路由不會丟失。注意使用前要在tcp/ip設置裏去掉接在企業內部網的網卡的網關。

============= Linux下雙網卡雙網關配置路由表 =============

http://hi.baidu.com/xibeihuohu/blog/item/a54d27fd18b8bf1f08244d1a.html

由於電信和網通之間互聯互通的問題,很多人選擇雙線路機房, 所謂雙線路機房就是擁有兩條出口,一條電信一條網通。最近在一個雙線路機房測試一臺服務器,打算作爲論壇的數據庫服務器使用,服務器操作系統爲 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


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章