1.路由器的工做原理
當IP子網中的一臺主機發送IP分組給同一IP子網的另外一臺主機時,它將直接把IP分組送到網絡上,對方就能收到。而要送給不一樣IP子網上的主機時,它要 選擇一個能到達目的子網上的路由器,把IP分組送給該路由器,由路由器負責把IP分組送到目的地。若是沒有找到這樣的路由器,主機就把IP分組送給一個稱 爲「缺省網關(default gateway)」的路由器上。「缺省網關」是每臺主機上的一個配置參數,它是接在同一個網絡上的某個路由器端口的IP地址。
路由器轉發IP分組時,只根據IP分組目的IP地址的網絡號部分,選擇合適的端口,把IP分組送出去。同主機一 樣,路由器也要斷定端口所接的是不是目的子網,若是是,就直接把分組經過端口送到網絡上,不然,也要選擇下一個路由器來傳送分組。路由器也有它的缺省網 關,用來傳送不知道往哪兒送的IP分組。這樣,經過路由器把知道如何傳送的IP分組正確轉發出去,不知道的IP分組送給「缺省網關」路由器,這樣一級級地 傳送,IP分組最終將送到目的地,送不到目的地的IP分組則被網絡丟棄了。
目前TCP/IP網絡,所有是經過路由器互 連起來的,Internet就是成千上萬個IP子網經過路由器互連起來的國際性網絡。這種網絡稱爲以路由器爲基礎的網絡(router based network),造成了以路由器爲節點的「網間網」。在「網間網」中,路由器不只負責對IP分組的轉發,還要負責與別的路由器進行聯絡,共同肯定「網間 網」的路由選擇和維護路由表。
路由動做包括兩項基本內容:尋徑和轉發。尋徑即斷定到達目的地的最佳路徑,由路由選擇算法來實現。因爲涉及到不一樣的路由選擇協議和路由選擇算法,要相對復 雜一些。爲了斷定最佳路徑,路由選擇算法必須啓動並維護包含路由信息的路由表,其中路由信息依賴於所用的路由選擇算法而不盡相同。路由選擇算法將收集到的 不一樣信息填入路由表中,根據路由表可將目的網絡與下一站(nexthop)的關係告訴路由器。路由器間互通訊息進行路由更新,更新維護路由表使之正確反映 網絡的拓撲變化,並由路由器根據量度來決定最佳路徑。這就是路由選擇協議(routing protocol),例如路由信息協議(RIP)、開放式最短路徑優先協議(OSPF)和邊界網關協議(BGP)等。
轉發即沿尋徑好的最佳路徑傳送信息分組。路由器首 先在路由表中查找,判明是否知道如何將分組發送到下一個站點(路由器或主機),若是路由器不知道如何發送分組,一般將該分組丟棄;不然就根據路由表的相應 表項將分組發送到下一個站點,若是目的網絡直接與路由器相連,路由器就把分組直接送到相應的端口上。這就是路由轉發協議(routed protocol)。
路由轉發協議和路由選擇協議是相互配合又相互獨立的概念,前者使用後者維護的路由表,同時後者要利用前者提供的功能來發布路由協議數據分組。下文中提到的路由協議,除非特別說明,都是指路由選擇協議,這也是廣泛的習慣。
2.查看主機路由表
這是route命令的第一個參數的輸出,首先是最上方給出了接口列表,一個本地循環,一個是無線網卡,最後一個網卡接口,網卡接口給出了網卡的mac地址。
再說說每一列的內容吧,從作到右依次是:Network Destination(目的地址),Netmask(掩碼),Gateway(網關),Interface(接口),Metric(是一個度量值或是管理距離)。
下面說說每一行內容表明的內容,首先是
Network Destination Netmask Gateway Interface Metric
0.0.0.0 0.0.0.0 192.168.0.1 192.168.0.103 20
這表示發向任意網段的數據經過本機接口192.168.0.103被送往一個默認的網關:192.168.0.1 ,它的管理距離是20,這裏對管理距離說說,管理距離指的是在路徑選擇的過程當中信息的可信度,管理距離越小的,可信度越高。
再看看第二行
Network Destination Netmask Gateway Interface Metric
127.0.0.0 255.0.0.0 127.0.0.1 127.0.0.1 1
A類地址中127.0.0.0留住本地調試使用,因此路由表中因此發向127.0.0.0網絡的數據經過本地迴環127.0.0.1發送給指定的網關:127.0.0.1,也就是從本身的迴環接口發到本身的迴環接口,這將不會佔用局域網帶寬。
第三行
Network Destination Netmask Gateway Interface Metric
192.168.0.0 255.255.255.0 192.168.0.103 192.168.0.103 20
這裏的目的網絡與本機處於一個局域網,因此發向網絡192.168.0.0(也就是發向局域網的數據)使用本機: 192.168.0. 103 做爲網關,這便再也不須要路由器路由或不須要交換機交換,增長了傳輸效率。
第四行
Network Destination Netmask Gateway Interface Metric
192.168.0. 103 255.255.255.255 127.0.0.1 127.0.0.1 20
表示從本身的主機發送到本身主機的數據包,若是使用的是本身主機的IP地址,跟使用迴環地址效果相同,經過一樣的途徑被路由,也就是若是我有本身的站點,我要瀏覽本身的站點,在IE地質欄裏面輸入localhost與192.168.0.103是同樣的,儘管localhost被解析爲127.0.0.1。
第五行
Network Destination Netmask Gateway Interface Metric
192.168.0.255 255.255.255.255 192.168.0.103 192.168.0.103 20
這裏的目的地址是一個局域廣播地址,系統對這樣的數據包的處理方法是把本機192.168.0.103做爲網關,發送局域廣播幀,這個幀將被路由器過濾。
第六行
Network Destination Netmask Gateway Interface Metric
224.0.0.0 240.0.0.0 192.168.0.103 192.168.0.103 20
這裏的目的地址是一個組播(muticast)網絡,組播指的是數據包同時發向幾個指定的IP地址,其餘的地址不會受到影響。系統的處理依然是適用本機做爲網關,進行路由。這裏有一點要說明的組播可被路由器轉發,若是路由器不支持組播,則採用廣播方式轉發。
第八行
Network Destination Netmask Gateway Interface Metric
255.255.255.255 255.255.255.255 192.168.0.103 192.168.0.103 1
目的地址是一個廣域廣播,一樣適用本機爲網關,廣播廣播幀,這樣的包到達路由器以後被轉發仍是丟棄根據路由器的配置決定。
還有個半行沒有解釋
Default Gateway: 192.168.0.1
這是一個缺省的網關,要是發送的數據的目的地址根前面例舉的都不匹配的時候,就將數據發送到這個缺省網關,由其決定路由。
3.windows server 2008 r2路由器
經過抓包工具看數據包的傳遞
目前我尚未裝路由遠程訪問,此時當192.168.3.1ping192.168.2.2此時首先客戶端發送一個廣播只有是路由器收到該廣播數據包後纔會將其轉發。
在裝了路由遠程訪問後
此時啓用LAN路由後此時能夠ping192.168.2.2時能夠ping通但ping192.168.2.1時卻不通
當192.168.3.2ping192.168.2.2的數據包不是192.168.2.2回覆的而是192.168.3.1網卡回覆的。首先該數據包會被廣播,此時該網絡中的路由器收到該廣播數據包後,計算機會查看其路由表發現有目標網絡的路由,並且此時目標計算機剛好本身,所以該網就直接回復該ping的請求了。
可是ping192.168.2.1一樣數據包會被路由到192.168.2.0網絡但此時,目標計算機的IP地址不是本計算機所以會轉發到另外一臺路由器此時另外一路由器中並無收到192.168.3.0網絡的路由請求所以沒法響應客戶端來自192.168.3.0的請求
添加永久靜態路由
查看添加靜態路由的server的路由表
同理配置另外一臺路由器
從192.168.3.2的客戶端ping192.168.1.2的客戶端數據包走向狀況
經過命令來添加靜態路由
經過命令添加永久的靜態路由
本地鏈接(數據包出站)
數據包進站
同理在另外一臺路由器上添加永久的靜態路由
測試客戶端可否相互訪問
php