每一個Windows系統中都具有 IP路由表 ,它存儲了本地計算機可以到達的網絡目的地址范圍和如何到達的路由信息。路由表是TCP/IP通信的基礎,本地計算機上的任何TCP/IP通信都受到路由表的控制。
理解路由表
你可以運行 route print 或 netstat -r 顯示本地計算機上的路由表,如下圖所示:
C:/Documents and Settings/administrator> route print
===========================================================================
Interface List
0x1 ........................... MS TCP Loopback interface
0x10003 ...00 50 8d 4f 5f c5 ...... Realtek RTL8139/810x Family Fast Ethernet NIC
===========================================================================
===========================================================================
Active Routes:
|
Network Destination |
Netmask |
Gateway |
Interface |
Metric |
1 |
0.0.0.0 |
0.0.0.0 |
192.168.1.1 |
192.168.1.6 |
30 |
2 |
127.0.0.0 |
255.0.0.0 |
127.0.0.1 |
127.0.0.1 |
1 |
3 |
192.168.1.0 |
255.255.255.0 |
192.168.1.6 |
192.168.1.6 |
30 |
4 |
192.168.1.240 |
255.255.255.240 |
192.168.1.8 |
192.168.1.6 |
20 |
5 |
192.168.1.240 |
255.255.255.240 |
192.168.1.7 |
192.168.1.6 |
15 |
6 |
192.168.1.6 |
255.255.255.255 |
127.0.0.1 |
127.0.0.1 |
30 |
7 |
192.168.1.255 |
255.255.255.255 |
192.168.1.6 |
192.168.1.6 |
30 |
8 |
224.0.0.0 |
240.0.0.0 |
192.168.1.6 |
192.168.1.6 |
30 |
9 |
255.255.255.255 |
255.255.255.255 |
192.168.1.6 |
192.168.1.6 |
1 |
Default Gateway: 192.168.1.1
===========================================================================
Persistent Routes:
None
路由表中的每一個路由項具有五個屬性,在此我將它們分為四個部分:
1、 網絡地址 ( Network Destination )、 網絡掩碼 ( Netmask ):網絡地址和網絡掩碼相與的結果用于定義本地計算機可以到達的網絡目的地址范圍。通常情況下,網絡目的地址范圍包含以下四種:
-
主機地址;某個特定主機的網絡地址,網絡掩碼為255.255.255.255,如上表中的6、7、9;
-
子網地址,某個特定子網的網絡地址,如上表中的4、5;
-
網絡地址;某個特定網絡的網絡地址,如上表中的2、3、8;
-
默認路由;所有未在路由表中指定的網絡地址,如上表中的1,在后文將詳細描述;
在添加路由時, Windows要求輸入的網絡地址和網絡掩碼相與后的結果必須等于網絡地址 ,否則路由添加會失敗。
2、 網關 ( Gateway ,又稱為 下一跳服務器 ):在發送IP數據包時,網關定義了針對特定的網絡目的地址,數據包發送到的下一跳服務器。如果是本地計算機直接連接到的網絡,網關通常是本地計算機對應的網絡接口, 但是此時接口必須和網關一致 ;如果是遠程網絡或默認路由,網關通常是本地計算機所連接到的網絡上的某個服務器或路由器。
3、 接口 ( Interface ):接口定義了針對特定的網絡目的地址,本地計算機用于發送數據包的網絡接口。 網關必須位于和接口相同的子網 ,否則造成在使用此路由項時需調用其他路由項,從而可能會導致路由死鎖。
4、 躍點數 ( Metric ):躍點數用于指出路由的成本,通常情況下代表到達目標地址所需要經過的躍點數量,一個躍點代表經過一個路由器。躍點數越低,代表路由成本越低;躍點數越高,代表路由成本越高。當具有多條到達相同目的網絡的路由項時,TCP/IP會選擇具有更低躍點數的路由項。
路由確定過程
當TCP/IP需要向某個IP地址發起通信時,它會對路由表進行評估,以確定如何發送數據包。評估過程如下:
-
TCP/IP使用需要通信的目的IP地址和路由表中每一個路由項的網絡掩碼進行相與計算,如果相與后的結果匹配對應路由項的網絡地址,則記錄下此路由項;
-
當計算完路由表中所有的路由項后,TCP/IP選擇記錄下的路由項中的 最長匹配路由 (網絡掩碼中具有最多“ 1 ”位的路由項)來和此目的IP地址進行通信。如果存在多個最長匹配路由,那么選擇具有 最低躍點數 的路由項;如果存在多個具有最低躍點數的最長匹配路由,那么:
-
如果是發送響應數據包,并且數據包的源IP地址是某個最長匹配路由的接口的IP地址,那么選擇此最長匹配路由;
-
其他情況下均根據最長匹配路由所對應的網絡接口在 網絡連接 的 高級設置 中的綁定優先級來決定,如下圖所示:
-
網關和接口確定過程
在確定使用的路由項后,網關和接口通過以下方式確定:
-
如果路由項中的網關地址為空或者為本地計算機上的某個網絡接口,那么在發送數據包時:
-
通過路由項中對應的網絡接口發送;
-
源IP地址為此網絡接口的IP地址;
-
源MAC地址為此網絡接口的MAC地址;
-
目的IP地址為接收此數據包的目的主機的IP地址;
-
目的MAC地址為接收此數據包的目的主機的MAC地址;
-
-
如果路由項中的網關地址并不屬于本地計算機上的任何網絡接口,那么在發送數據包時:
-
通過路由項中對應的網絡接口發送;
-
源IP地址為路由項中對應網絡接口的IP地址;
-
源MAC地址路由項中對應網絡接口的MAC地址;
-
目的IP地址為接收此數據包的目的主機的IP地址;
-
目的MAC地址為網關的MAC地址;
-
在此我以上面的路由表為基礎,舉例進行說明:
-
和單播IP地址 192.168.1.8 的通信:在進行相與計算時,1、3 項匹配,但是3項為最長匹配路由,因此選擇3項。3項的網關地址為本地計算機的網絡接口192.168.1.6,因此發送數據包時,目的IP地址為192.168.1.8、目的MAC地址為192.168.1.8的MAC地址(通過ARP解析獲得)。
-
和單播IP地址 192.168.1.6 的通信:在進行相與計算時,1、3、6 項匹配,但是6項為最長匹配路由,因此選擇6項。6項的網關地址為本地環回地址127.0.0.1,因此直接將數據包發送至本地環回地址。
-
和單播IP地址 192.168.1.245 的通信:在進行相與計算時,1、3、4、5 項匹配,但是4、5項均為最長匹配路由,所以此時根據躍點數進行選擇,5 項具有更低的躍點數,因此選擇5項;在發送數據包時,目的IP地址為192.168.1.254、目的MAC地址為192.168.1.7的MAC地址(通過ARP解析獲得)。
-
和單播IP地址 10.1.1.1 的通信:在進行相與計算時,只有 1 項匹配;在發送數據包時,目的IP地址為10.1.1.1、目的MAC地址為192.168.1.1的MAC地址(通過ARP解析獲得)。
-
和子網廣播地址 192.168.1.255 的通信:在進行相與計算時,1、3、4、5、7 項匹配,但是7項為最長匹配路由,因此選擇7項。7項的網關地址為本地計算機的網絡接口,因此在發送數據包時,目的IP地址為192.168.1.255,目的MAC地址為以太網廣播地址FF:FF:FF:FF:FF:FF。
默認路由與默認網關
由于在路由表中存儲針對每個主機或子網的路由項不可行,因此提出了默認路由的概念,默認路由中的網關稱為默認網關。默認路由的網絡地址為0.0.0.0,網絡掩碼為0.0.0.0,它匹配任何網絡通信,因此當到達特定主機或特定子網的路由并未在路由表中指定時,均可以通過默認路由來進行轉發。如果沒有設置默認路由,那么無法到達未在路由表中指定路由項的網絡目的地址。
設置默認路由后,把數據包的路由責任移交到了路由器,優點是簡化了本地計算機上的路由表和配置,缺點則是計算機無法明確目的地址是否可達,從而可能發送針對不可到達地址的流量。雖然位于路由路徑上的路由器知道目的地址不可達時會使用ICMP目的地址不可達信息來通知原始發送主機,但是這個過程中,已經占用了額外的網絡流量。
在Windows系統中,創建默認路由可以通過以下兩種方式實現:
-
在網絡接口的TCP/IP選項中設置默認網關,從而創建默認路由;
-
使用 route add 命令添加網絡地址為0.0.0.0、網絡掩碼為0.0.0.0的默認路由;
推薦大家總是使用前一種方式。
配置多個默認網關
你可以在單個網絡接口、多個網絡接口上同時配置多個默認網關,但是TCP/IP同時只會使用一個默認網關(默認路由),這個當前使用的默認網關稱為活動默認網關(活動默認路由)。當不同網絡接口所連接的網絡之間沒有連接性時(如一個網絡接口連接到Internet,而一個網絡接口連接到內部網絡),在多個網絡接口上同時配置默認網關可能會帶來連接性問題(具體的問題我將在后文描述),因此微軟不推薦大家在多個網絡接口上同時配置默認網關,并且當你進行這種配置時會進行警告,不過不會阻止你的操作。
當在配置多個默認網關時,將根據以下條件來選擇活動默認網關:
-
當路由表中具有多個默認網關時,TCP/IP根據躍點數來進行選擇,躍點數最低的默認網關具有最高的優先級;
-
如果路由表中具有多個具有最低躍點數的默認網關,那么TCP/IP根據默認網關對應的網絡接口在 網絡連接 的 高級設置 中的綁定優先級來決定,如下圖所示:
死網關檢測
TCP/IP會通過死網關檢測算法來檢測當前活動的默認網關是否存活,如果活動默認網關發生故障,則TCP/IP會及時調整路由表,選擇使用下一個默認網關,選擇方式與原方式一致,只是排除了發生故障的原活動默認網關。
死網關檢測算法的完整描述如下:
當TCP/IP在通過活動默認網關向某個目標IP地址進行TCP通信時,如果失敗的嘗試次數達到TcpMaxDataRetransmissions注冊表值(默認為5)的一半(即3次)還沒有收到響應,TCP/IP將到達該目標IP地址的通信改為使用列表中的下一默認網關。當超過25%的TCP連接轉向下一默認網關時,TCP/IP將活動默認網關修改為這些連接當前使用的默認網關。
如果此時原始默認網關從故障中回復,TCP/IP將繼續使用當前的活動默認網關,而不會轉移到原始默認網關,除非重啟計算機。如果當前的活動默認網關也出現故障,那么TCP/IP就會繼續嘗試使用列表中的下一個默認網關,在嘗試完整個列表后將返回到列表的開始,又從第一個默認網關開始進行嘗試。
死網關檢測僅監視TCP流量 ,如果其他類型的流量連接失敗,不會切換默認網關。另外TCP是端到端的協議,因此即使當前默認網關完全正常,本地計算機的TCP通信失敗也可能會導致切換默認網關。
當不同網絡接口所連接的網絡之間沒有連接性時(如一個網絡接口連接到Internet,而一個網絡接口連接到內部網絡),如果在多個網絡接口上同時配置默認網關,在活動默認網關出現故障導致切換默認網關時,就可能會引起連接性故障。比如活動默認網關為Internet連接,當它出現問題時,此時默認網關切換為內部連接,此時,本地計算機將無法再訪問位于Internet連接上的主機。對于這種情況,微軟建議使用 route add 來添加對應目的網絡的匹配路由,而不是設置多個默認網關。
MSDN的文章
windows TCP/IP 的默認網關行為
TCP/IP主機可以使用以下方法到達遠程目標地:
? |
存儲針對每個遠程目的地的特定于主機的路由。 這顯然不實用或不可行,因為路由器表可能必須包含數千甚至數百萬(對于Internet的情況)個路由。主機路由表必須在添加新地址或刪除地址時進行變更。 |
? |
存儲針對每個遠程子網的網絡路由。 雖然這種方法更為可行,但是也不實用,因為路由器表仍然可能必須包含數百或數萬(對于Internet的情況)個路由。主機路由表將必須在添加新子網或刪除子網時進行變更。 |
? |
存儲單個默認路由,其可以有效地匯總不在本地子網上的所有位置。 這種方法切實可行,只需單個路由,并且在從網絡中添加或刪除節點或子網時不需要進行變更。 |
通過使用默認路由,對于網絡拓撲結構和可達目的地集的認知將被載入路由器,而不是發送主機的職責。這種方法的優點是易于配置,缺點則是主機可能發送針對不可到達地址的流量。當這種情況發生時,到目標地址的路徑中的某個路由器會使用一條ICMP Destination Unreachable-Host Unreachable(ICMP目的地址不可達-主機不可達)信息來通知發送主機。
在IP路由表中創建默認路由的默認網關設置是TCP/IP主機配置的重要組成部分。默認網關的作用是對不在其子網上的所有目的地提供下一跳IP地址和接口。如果沒有默認網關,與遠程目標地址的通信就無法進行,除非向IP路由表添加額外的路由。
默認網關配置
您可以通過以下方式在運行Windows XP或Windows Server 2003的計算機上配置一個默認網關:
? |
當使用DHCP來獲得IP地址配置時,默認網關就變成了“路由器DHCP”(Router DHCP)選項中的第一個IP地址的值;可在DHCP服務器上配置“路由器DHCP”選項,其可指定一個或多個默認網關的有序列表。 |
? |
當使用用戶配置的備用配置來獲得IP地址配置時,默認網關是“網絡連接”中“Internet協議(TCP/IP)”組件屬性的 備用配置 選項卡上的 默認網關 字段中所指定的IP地址。您可以僅指定單個默認網關。 |
? |
當手動指定一個IP地址配置時,默認網關是在“Internet連接協議(TCP/IP)”屬性的 常規 選項卡上的 默認網關 字段中鍵入的IP地址。為了指定多個默認網關,您必須從“Internet連接協議(TCP/IP)”高級屬性中的 IP設置 選項卡上進行添加。 |
當使用“自動專用IP尋址”(Automatic Private IP Addressing,APIPA)來獲得IP地址配置時,未配置默認網關。APIPA僅適用于單個子網。
默認網關配置將在IP路由表中創建一個默認路由。該默認路由的目的地為:0.0.0.0,子網掩碼為:0.0.0.0。在網絡前綴表示法中,該默認路由為:0.0.0.0/0,有時被縮寫成:0/0。下一跳地址,即 route print 命令中的 網關 地址,被設置為默認網關的IP地址。下一跳接口是 route print 命令的 Interface 列中所分配地址的接口。
基于路由確定程序,默認路由與所有目的地相匹配。如果沒有針對目標地址的更匹配的路由,則使用默認路由來確定下一跳地址和接口。 默認路由流量是被轉發到默認網關的發送到遠程網絡的流量(而不是發送到默認網關的IP地址的流量)。
有關路由確定過程的更多信息,請參見 理解IP路由表 (Cable Guy 2001年12月文章)。
默認路由量度
默認情況下,Windows XP和Windows Server 2003的TCP/IP基于默認網關所配置的適配器的速度來自動計算默認路由量度。例如,對于一個100 Mbps的以太網絡適配器,默認路由量度被設定為20,而對于一個10 Mbps的以太網絡適配器,默認路由量度被設定為30。
為了改變DHCP分配的默認網關的這種行為,可以使用“Router Metric Base Microsoft-specific DHCP”選項。為了改變手動配置的默認網關的這種行為,您可以針對所配置的默認網關,在“Internet連接協議(TCP/IP)”的高級屬性中的“IP設置”選項卡上,清除 TCP/IP網關地址 對話框上的 自動量度 復選框。 TCP/IP網關地址 對話框如下圖所示。
配置多個網關
如果您有多個接口,并為每個接口配置了一個默認網關,那么基于接口速度的默認量度確定就會導致將最快的接口用于默認網關流量。這在計算機連接到相同網絡的某些配置中也許是可取的。例如,如果您有一個100 Mbps的以太網絡適配器和一個10 Mbps的以太網絡適配器,它們連接到同一個組織的intranet(企業內聯網),那么你會希望使用100 Mbps的適配器來發送默認網關流量。
然而,當計算機連接到兩個或更多分散的(disjoint)網絡(即在網絡層沒有提供對稱可達性的網絡)時,這種默認行為可能構為問題。只有當數據包能夠從任意目的地發送和接收時,才存在對稱可達性。例如,Ping工具可用于測試對稱可達性。
分散網絡的示例如下:
? |
沒有網絡層連接的網絡,比如:組織的intranet和測試實驗室網絡,它們之間沒有用于轉發數據包的路由器。計算機能夠同時連接到這兩個網絡,但是如果沒有同時到達這兩個網絡的路由,并且連接它們的計算機沒有轉發數據包,那么這兩個網絡就是分散的。 |
? |
具有對Internet的路由連接的專用intranet。在這種情況下存在非對稱或單向可達性;intranet主機能夠從專用IP地址向Internet主機發送數據包,但是返回流量無法送達,因為用于專用地址空間的路由在Internet的路由器礎結構中不存在。 |
當組織使用以下配置時,針對分散網絡的連接性能將變得很重要:
? |
使用一個代理服務器(比如:Microsoft Internet Security and Acceleration (ISA) Server 2000)或者一個網絡地址轉換器(NAT),將其專用的intranet連接到Internet。在任一種情況下,不管該組織是正在使用的是專用尋址還是公用尋址,intranet的地址空間對Internet主機來說都無法直接觸及。Intranet主機能夠通過代理或轉換功能間接訪問Internet,但是Internet主機不能直接訪問任意intranet位置。 因而,它們之間不存在對稱可達性。這就是組織給他們的員工所提供的Internet連接的常用配置。 |
? |
使用虛擬專用網絡(VPN)服務器來允許遠程用戶或遠程站點通過Internet連接到專用intranet。雖然該VPN服務器同時連接到Internet和一個專用intranet,并且充當路由器,但是Internet接口上的數據包過濾器配置阻止其接受任何不是基于VPN的流量。如果沒有經過身份驗證的VPN連接,Internet主機就無法直接達到intranet位置。 |
由于在任何時候對于默認路由流量,TCP/IP協議僅使用路由表中的單個默認路由,因此在連接到分散網絡的多個接口上配置的默認網關可能產生不必要的結果。
對于ISA或VPN服務器的例子,默認路由流量要么被轉發到Internet,要么被轉發到intranet,但是不會同時轉發到這兩個網絡。從ISA或VPN服務器的角度看,Internet上的所有位置都是可觸及的,或者intranet上的所有位置都是觸及的,但是無法同時觸及。然而,IAS或VPN服務器需要Internet和intranet上的所有位置實現同時對稱可達性,才能正確運作。
當在多個接口上配置默認網關時,選擇用于當前使用的默認路由將基于以下條件:
? |
當路由表中存在具有不同量度的多個默認路由時,Windows XP和Windows Server 2003選擇具有最低量度的默認路由。如果適配器具有不同的速度,那么具有最高速度的適配器默認具有最低的量度,因此將使用其轉發默認路由流量。 |
? |
當路由表中存在多個具有最低量度的默認路由時,Windows XP和Windows Server 2003的TCP/IP將使用與綁定次序排位最高的適配器相對應的默認路由。您可以在“網絡連接”的 高級設置 對話框中的 適配器和綁定 選項卡上查看和修改綁定次序,如下圖所示。 |
為了防止分散網絡不可達的問題,您必須在ISA或VPN服務器上完成以下步驟:
? |
在連接到具有最多路由數量的網絡的接口上配置一個默認網關。在大多數分散網絡的配置中,具有最多路由數量的網絡是Internet。 |
? |
不要在其他任何接口上配置默認網關。相反,您應該使用靜態路由或動態路由協議,將其他分散網絡的地址匯總到本地IP路由表。 |
例如,假設一臺ISA服務器連接到Internet和一個專用intranet。該專用intranet使用專用IP地址空間。要配置這臺服務器以便兩個分散網絡上的所有地址對ISA服務器來說都可達,您需要在ISA服務器上完成以下步驟:
? |
在連接到Internet的適配器上配置一個默認網關。 這樣將創建一個指向Internet的默認路由,使得所有Internet位置可達。 |
? |
通過Route工具,使用連接到intranet的適配器作為持久靜態路由來添加10.0.0.0/8、172.16.0.0/12和192.168.0.0/16路由。這樣將創建用于匯總所有專用intranet地址的路由,使得所有intranet位置均可達。 |
這個例子添加了靜態路由。也可以將ISA服務器配置為一個“路由信息協議(RIP)”或“開放最短路徑優先(OSPF)”動態路由器,以便您不必匯總整個專用IP地址空間,而是基于當前intranet路由拓撲結構來從IP路由表中動態添加或刪除特定于子網的路由。要使用RIP或OSPF,您可以配置“路由和遠程訪問”服務。
失效網關檢測
失效網關檢測由Windows TCP/IP用于檢測默認網關的故障,以及用于調整IP路由表,以便在配置了多個默認網關的情況下使用下一個默認網關。
當通過默認網關轉發的某個TCP連接的TCP網段重傳三次時(默認情況),失效網關檢測將更改該遠程IP地址的路由緩存項(Route Cache Entry,RCE),從而使用列表中的下一個默認網關來作為下一跳地址。RCE是路由表中的一個條目,用于存儲目的地的下一跳IP地址。
當四分之一通過默認網關來路由的TCP連接都將它們的RCE調整為下一個默認網關時,失效網關檢測就會通知IP將計算機的默認網關改為調整后的連接正在使用的那個網關。如果TCP連接繼續發生失敗,失效網關檢測就會嘗試使用列表中的下一個默認網關,在嘗試完整個列表后將返回第一個默認網關。
失效網關檢測僅監視TCP流量。如果其他類型的流量的連接失敗,默認網關不會被切換。失效網關檢測可能會在某個遠程路由器失敗時導致默認網關配置發生變化。主機和目的地之間的路徑中發生故障的遠程路由器也可能導致沿著該路徑轉發的TCP連接失敗,并導致主機切換它的默認網關。由于失效網關檢測依賴端到端的協議(比如:TCP),即使當前默認網關完全正常,主機也可能會切換它的默認網關。
有關 Internet 協議路由中的“自動躍點計數”功能的說明
概要
<script type="text/javascript">loadTOCNode(1, 'summary');</script>更多信息
<script type="text/javascript">loadTOCNode(1, 'moreinformation');</script>當路由表中包含用于同一目的地的多個路由時,“自動躍點計數”功能便非常有用。例如,如果您的計算機具有一個 10 兆位 (Mb) 的網絡接口和一個 100 Mb 的網絡接口,并且該計算機具有一個在兩個網絡接口上均已配置的默認網關,那么“自動躍點計數”功能就會為較慢的網絡接口分配較高的躍點數。該功能會強制流向 Internet 的所有流量,例如,使用可用的最快網絡接口。
注意 :通常情況下,Microsoft 不建議您跨越不相連的網絡來添加默認網關。例如,諸如網絡地址轉換 (NAT) 服務器和代理服務器等邊緣服務器,通常都被配置為連接兩個或多個不相連的網絡:公共 Internet 和一個或多個專用 Intranet。在這種情況下,不應在專用接口上分配默認網關,因為這樣做有可能導致網絡上的路由不正確。
下表概述了為綁定到各種速度的網絡接口的路由分配躍點數的標準:
鏈接速度 躍點數
大于 200 Mb | 10 |
大于 20 Mb,并且小于或等于 200 Mb | 20 |
大于 4 Mb,并且小于或等于 20 Mb | 30 |
大于 500 千位 (Kb),并且小于或等于 4 Mb | 40 |
小于或等于 500 Kb | 50 |
下表列出了運行 windows XP Service Pack 2 的計算機的鏈接速度和躍點數。
鏈接速度 躍點數
大于 200 Mb | 10 |
大于 80 Mb,并且小于或等于 200 Mb | 20 |
大于 20 Mb,并且小于或等于 80 Mb | 25 |
大于 4 Mb,并且小于或等于 20 Mb | 30 |
大于 500 Kb,并且小于或等于 4 Mb | 40 |
小于或等于 500 Kb | 50 |
“自動躍點計數”功能分別為網絡中的每一個網絡接口配置躍點數。該功能非常適用于有多個相同速度的網絡接口的場合,例如,當每個網絡接口都被分配了一個默認網關時。在這種情況下,您可能需要手動配置一個網絡接口上的躍點數,然后啟用“自動躍點計數”功能來配置其他網絡接口上的躍點數。使用這種設置可以控制在 IP 流量路由中首先使用的網絡接口。
此外,可以單獨為每一個網關配置分配給特定默認網關的躍點數。這將有助于進一步控制用于本地路由的躍點數。例如,可以啟用“自動躍點計數”功能來配置分配給網絡接口的路由,同時手動配置分配給默認網關的躍點數。
注意 :如果躍點數是在網絡接口級別指定的,而網關被添加和配置了“自動躍點計數”功能,則該網關可以繼承分配給網絡接口的躍點數。例如,如果在網絡接口級別分配了一個“5”的躍點數,然后添加了一個網關,并為該網關選中了“自動躍點計數”功能,則該網關也會被分配一個“5”的躍點數。
這種“自動躍點計數”功能和“間隔網關檢測”功能不同,后者強制網絡來切換基于傳輸控制協議 (TCP) 重發的默認網關。此外,“路由和遠程訪問”功能也不激活“間隔網關檢測”功能。這種激活由計算機中啟動 TCP 會話的 TCP/IP 堆棧來執行。
有關其他信息,請單擊下面的文章編號,以查看 Microsoft 知識庫中相應的文章:
1. | 在控制面板中,雙擊 網絡連接 。 |
2. | 右鍵單擊一個網絡接口,然后單擊 屬性 。 |
3. | 單擊 Internet 協議 (TCP/IP) ,然后單擊 屬性 。 |
4. | 在 常規 選項卡上,單擊 高級 。 |
5. | 要指定躍點數,請在 IP 設置 選項卡上,單擊以清除 自動躍點計數 復選框,然后在 接口躍點數 字段中鍵入您需要的躍點數。 |
幾個故障解析
快速切換機器的ip地址
有些人因為工作需要,經常改變機器的ip地址,如網管人員。(我的機器就有多個運營商的ip,最多時有3個運營商的,其中又分私有地址和公網地址)
有專門的軟件可以做到快速切換,但是我所下載的一個卻不起作用。
其實
windows
nt 系列的操作系統(nt 2k xp 2003)都支持一個網卡綁定多個ip地址,設多個網關。
一臺機器用哪一個ip地址訪問外網,取決于相關網關的躍點數,機器會優先使用躍點數值最低的網關,所用的ip地址自然是與網關相對應的。在winxp環境下,在tcp/ip屬性中,修改網關的躍點數(取消自動躍點),比如把其中的一個改為最?。ū绕渌男?,不一定為1),就能達到使用相關聯ip地址的目的。
雙網卡的問題
呵呵,這個問題我遇到過
現在已經完全解決了
主要是你的網卡的配置躍點數不對,你的肯定是設置成了自動躍點,先看看躍點數概念:
躍點數表示使用路由的開銷,通常是到IP目標位置的躍點數目。本地子網上的任何東西都是一個躍點,其后經過的每個路由器是另一個躍點。如果到同一目標有不同躍點數的多個路由,則選擇躍點數最低的路由。
由于你的內網和外網的躍點數都是自動的,所以系統自動設置躍點數為20,所以就沖突啦,就會發生禁用其中一個另一個才能正常使用的現象:禁用了內部局域網才能上網,或者是禁用外網才能搜索到局域網的機子
其實你可以把你的內網的躍點數改成10,問題就完全解決了,全過程不到一分鐘!
由于系統在查找路由的時候就會先找躍點數低(10)的內網,然后才找躍點數高(20)的外網,就能先找內網再找外網,于是都能正常使用了
具體設置方法如下:
網上鄰居---右鍵---屬性---本地連接(內網)---右鍵---屬性---選TCP/IP協議---屬性---高級---取消"自動躍點計數"前面的鉤---填入"10"---確定,另一個外網的不用設置躍點數。
當然了,兩個網卡的躍點數你也可以自己設置,只要設置成不同的,而且是內網的躍點數必須要低于外網的躍點數就行
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
