A. Windows系統中通過route命令添加自定義永久路由的方法
問題:如何為 windows 系統添加自定義路由?簡單說明:要為 windows 系統指定自定義路由,可以使用命令行工具"route"。此工具允許管理員手動配置靜態路由,以將網路流量定向到特定的網關或子網。閱讀本指南,了解:如何使用 route 命令添加自定義路由的語法不同路由表項的含義為常見網路配置添加自定義路由的示例排查和修復常見路由問題
首先,在cmd中,輸入route print,可以查看到本機當前的網卡介面號、mac地址和網卡名稱:
(下面會用到第一列的網卡介面號數字)
例如,我們想添加一條路由,目標網段是192.168.5.0/24(掩碼是255.255.255.0),下一跳是192.168.2.254,並且這條路由應用在「24」網卡介面上,那麼我們就可以輸入這樣一條命令:
route add 192.168.5.0 mask 255.255.255.0 192.168.2.254 if 24 -p
在這個例子中:
192.168.5.0表示目標網段;
mask後面接掩碼,255.255.255.0表示目標網段的掩碼;
192.168.2.254表示路由的下一跳地址,也就是,想要到達192.168.5.0的數據,本機都會發給192.168.2.254去轉發;
if後面接本機的網卡介面號,如果本機有多個網卡,那麼就需要區分你想要用哪個網卡去訪問目標網段,這里的介面號就是開頭說的通過route print命令查看到的。
例如我的24號介面能夠通到目標網段,那麼這里就輸入24;
「-p」這個參數表示該條路由永久生效。如果不加這個參數,那麼需要注意,你的這條路由在本機重啟後將會失效。
輸入完成之後,我們再次輸入「route print」命令來查看一下本機當前路由,可以發現多了一條剛剛配置的路由條目:
附:Windows中,route命令的詳解:
操作網路路由表。ROUTE [-f] [-p] [-4|-6] command [destination][MASK netmask] [gateway] [METRIC metric] [IF interface]-f 清除所有網關項的路由表。如果與某個命令結合使用,在運行該命令前,應清除路由表。-p 與 ADD 命令結合使用時,將路由設置為在系統引導期間保持不變。默認情況下,重新啟動系統時,不保存路由。忽略所有其他命令,這始終會影響相應的永久路由。-4 強制使用 IPv4。-6 強制使用 IPv6。command 其中之一:PRINT 列印路由ADD 添加路由DELETE 刪除路由CHANGE 修改現有路由destination 指定主機。MASK 指定下一個參數為「netmask」值。netmask 指定此路由項的子網掩碼值。如果未指定,其默認設置為 255.255.255.255。gateway 指定網關。interface 指定路由的介面號碼。METRIC 指定躍點數,例如目標的成本。用於目標的所有符號名都可以在網路資料庫文件 NETWORKS 中進行查找。用於網關的符號名稱都可以在主機名稱資料庫文件 HOSTS 中進行查找。如果命令為 PRINT 或 DELETE。目標或網關可以為通配符,(通配符指定為星號「*」),否則可能會忽略網關參數。如果 Dest 包含一個 * 或 ?,則會將其視為 Shell 模式,並且只列印匹配目標路由。「*」匹配任意字元串,而「?」匹配任意一個字元。示例: 157.*.1、157.*、127.*、*224*。只有在 PRINT 命令中才允許模式匹配。診斷信息注釋:無效的 MASK 產生錯誤,即當 (DEST MASK) != DEST 時。示例: route ADD 157.0.0.0 MASK 155.0.0.0 157.55.80.1 IF 1路由添加失敗: 指定的掩碼參數無效。(Destination Mask) != Destination。示例: route PRINT route PRINT -4 route PRINT -6 route PRINT 157* .... 只列印那些匹配 157* 的項 route ADD 157.0.0.0 MASK 255.0.0.0 157.55.80.1 METRIC 3 IF 2destination^^mask^gateway metric^ ^Interface^如果未給出 IF,它將嘗試查找給定網關的最佳介面。 route ADD 3ffe::/32 3ffe::1 route CHANGE 157.0.0.0 MASK 255.0.0.0 157.55.80.5 METRIC 2 IF 2CHANGE 只用於修改網關和/或躍點數。 route DELETE 157.0.0.0 route DELETE 3ffe::/32
B. 如何通過cmd命令行查看靜態路由
在Windows中,通過CMD命令行可以方便地管理靜態路由,包括添加、刪除和修改。以下是這些操作的詳細步驟:
1. 添加路由:要將所有發送到192.168.20.0/24的流量轉發到2號網卡(介面),並通過192.168.4.1網關,可以使用以下命令:
route add 192.168.20.0 mask 255.255.255.0 192.168.4.1 metric 2
這里的"metric"參數代表優先順序,數值越小優先順序越高。
2. 刪除路由:刪除特定路由時,可以指定精確的網路地址,如刪除192.168.10.0路由:
route delete 192.168.10.0 mask 255.255.255.0
若需刪除所有以112開頭的路由,使用模糊匹配:
route delete 112*
注意,刪除後需謹慎操作,可能需要重新添加特定路由。
3. 修改路由:僅能通過CHANGE參數修改網關和跳數,例如:
route change 192.168.20.0 mask 255.255.255.0 new_gateway 192.168.4.2 new_metric 3
4. 查看路由表:路由表顯示了連接的所有網段、子網掩碼、網關、介面和跳數。例如,查看116.69.106.1介面的路由信息:
route print
可以看到數據包通過116.69.106.120網關轉發,管理距離(跳數)為1,表示其可信度高。
5. 廣播信息:CMD命令可以查看廣播信息,但這里並未具體列出廣播信息的查看方法,通常通過相關命令如"netstat -r"或者"route print"來查看。