IP选路
一、IP層工作流程

二、 簡單路由表
輸入netstate -rn,得到如下

其中flag的標志如下
該標志區分了間接路由和直接路由。區別在于,發往直接路由的分組中不但具有指明的端的IP地址,還具有其鏈路層地址。當分組被發往一個間接路由時,IP地址指明的是最終目的地,而鏈路層地址指明的是網關(下一條路由器)。
搜索路由表時,主機地址必須和目的地址完全匹配,而網絡地址只需要匹配目的地址的網絡號和子網號就可以了。
給主機發送數據報的四種方法
前兩種情況下,對路由表搜索得到匹配的網絡地址140.252.13.32,并把報文傳送給以太網驅動程序。IP報文中的目的地址是本機IP地址,因此把此報文送給環回驅動程序,然后由驅動程序把報文放入IP輸出隊列中。
后兩總情況,由于指定了環回接口的名字或IP地址,第一次搜索就找到了匹配的主機地址,因此報文直接被送給環回驅動程序,然后由驅動程序把報文放入IP輸出隊列中。
三、 ICMP主機與網絡不可達差錯
當路由器收到一份IP數據報但又在路由表中搜索不到對應的表項時,就要發送一份ICMP“主機不可達”差錯報文。
四、ICMP重定向差錯
當IP數據報應該被發送到另一個路由器時,收到數據報的路由器就要發送ICMP重定向差錯報文給IP數據報的發送端。

重定向一般用來讓具有很少選路信息的主機逐漸建立更完善的路由表。ICMP重定向允許TCP/IP主機在進行選路時不需要具有智能特性,而把所有的只能特性放在路由器端。

ICMP重定向報文的接收者必須查看3個IP地址:
在作為ICMP重定向報文數據返回的IP首部中
包含重定向信息的IP數據報中的源地址
在ICMP報文的4~7字節
關于ICMP的一些規則:
- 重定向只能由路由器產生
- 重定向報文是為主機而不是為路由器準備的
- 路由器應該發送的只是對主機的重定向,而不是對網絡的重定向
五、ICMP路由器發現報文
主機在引導以后要廣播或多播一份路由器請求報文。一臺或更多臺路由器響應一份路由器通告報文。另外,路由器定期地廣播或多播傳送他們的路由器通告報文,允許每個正在監聽的主機相應地更新它們的路由表。


路由器發現報文一般由用戶進程(守護程序)創建和處理。
轉載于:https://www.cnblogs.com/huahuahu/p/IP-xuan-lu.html
總結
- 上一篇: SVN 分支
- 下一篇: 这款桌面分区软件太好用了