前一陣子到總公司上課時,臨時要使用內部網路走VPN連回公司處理問題,而同時間又需要使用Wireless上網。可是當我的Wireless連接上時,Notebook的Default Gateway就會變成Wireless設定的Gateway,此時就無法透過內部的網路走VPN連回公司。
解決步驟:
使用Windows的『route』指令可以設定Static Route,變更順序。
一、指令說明:
ROUTE [-f] [-p] [command [destination]
[MASK netmask] [gateway] [METRIC metric] [IF interface]
-f 清除路由
-p 保留設定值,不會因電腦重開機而失效。
Command 包含以下命令
PRINT 列出目前的路由表
ADD 增加一筆靜態路由
DELETE 刪除一筆靜態路由
CHANGE 修改現存的路由
destination 路由的目標IP位址或網段。
netmask 子網路遮罩
gateway 指定要走的Gateway
interface 指定送出封包時的網卡ID
METRIC 可視為封包傳遞的優先權,數字愈低優先權愈高。
二、範例
假設目前電腦環境如下
有線網卡:interface=0x1、IP=192.168.1.101/24、Gateway=192.168.1.1
無線網卡:interface=0x2、IP=10.10.1.101/24、Gateway=10.10.1.1
VPN:192.168.99.0/24
為了閱讀方便,將使用Route Print查詢的結果以表格呈現如下:
Network Destination | Netmask | Gateway | Interface | Metric |
0.0.0.0 | 0.0.0.0 | 10.10.1.1 | 10.10.1.101 | 20 |
0.0.0.0 | 0.0.0.0 | 192.168.1.1 | 192.168.1.101 | 20 |
127.0.0.0 | 255.0.0.0 | 127.0.0.1 | 127.0.0.1 | 1 |
192.168.1.0 | 255.255.255.0 | 192.168.1.1 | 192.168.1.101 | 20 |
192.168.1.101 | 255.255.255.255 | 127.0.0.1 | 127.0.0.1 | 20 |
192.168.1.255 | 255.255.255.255 | 192.168.1.101 | 192.168.1.101 | 20 |
10.10.1.0 | 255.255.255.0 | 10.10.1.101 | 10.10.10.101 | 20 |
10.10.1.101 | 255.255.255.255 | 127.0.0.1 | 127.0.0.1 | 20 |
10.10.1.255 | 255.255.255.255 | 10.10.1.101 | 10.10.10.101 | 20 |
255.255.255.255 | 255.255.255.255 | 192.168.1.101 | 192.168.1.101 | 1 |
255.255.255.255 | 255.255.255.255 | 10.10.1.101 | 10.10.1.101 | 1 |
紅色代表經無線網卡的路由
前2筆代表著,要連至不存在Routing Table中的其他所有位址都由該Gateway出去。
但由於2者的Metric都是20,因此無法控制固定由哪個Gateway出去
因此可使用以下的命令來修改Metric的值【調整Gateway的優先權】,讓所有對外的連線固定透過無線網卡出去。
route change 0.0.0.0 mask 0.0.0.0 10.10.1.1 if 0x2 metric 10
另外,若要透過有線網卡連VPN回公司,則可新增下列一筆路由
route add 192.168.99.0 mask 255.255.255.0 192.168.1.1 if 0x2 metric 20
如果要刪除新增的路由,則可使用以下命令
route delete 192.168.99.0 mask 255.255.255.0