1. 程式人生 > >Linux 網路協議棧開發番外篇(六)—— Windows路由表詳解

Linux 網路協議棧開發番外篇(六)—— Windows路由表詳解

一、檢視Windows路由表

  路由表是Windows的TCP/IP協議棧的一個重要的部分。但是,路由表不是Windows作業系統向普通使用者顯示的東西。如果你要看到這個路由表,你必須要開啟一個命令提示符對話方塊,然後輸入“ROUTE PRINT”命令。結果如下:


路由詳解:

第一條   0.0.0.0             0.0.0.0         192.168.123.254     192.168.123.88      1

預設路由

       意思就是說,當一個數據包的目的網段不在你的路由記錄中,那麼你的路由器該把那個資料包傳送到哪裡!預設路由的閘道器是由你的連線上的default gateway

決定的

該路由記錄的意思是:

       當我接收到一個數據包的目的網段不在我的路由記錄中,我會將該資料包通過192.168.123.88這個介面傳送到192.168.123.254這個地址,這個地址是下一個路由器的一個介面,這樣這個資料包就可以交付給下一個路由器處理,與我無關。該路由記錄的線路質量 1

第二條   0.0.0.0            0.0.0.0        192.168.123.254     192.168.123.68      1 

預設路由

該路由記錄的意思是:

      當我接收到一個數據包的目的網段不在我的路由記錄中,我會將該資料包通過192.168.123.68這個介面

傳送到192.168.123.254這個地址,這個地址是下一個路由器的一個介面,這樣這個資料包就可以交付給下一個路由器處理,與我無關。該路由記錄的線路質量 1 

第三條  127.0.0.0            255.0.0.0            127.0.0.1          127.0.0.1           1

本地環路

127.0.0.0這個網段內所有地址都指向自己機器,如果收到這樣一個數據,應該發向哪裡該路由記錄的線路質量 1 

第四條   192.168.123.0      255.255.255.0       192.168.123.68      192.168.123.68      1

直聯網段的路由記錄

     當路由器收到發往直聯網段的資料包時該如何處理,這種情況,路由記錄的interface和gateway是同一個

     當我接收到一個數據包的目的網段是192.168.123.0時,我會將該資料包通過192.168.123.68這個介面直接傳送出去,因為這個埠直接連線著192.168.123.0這個網段,該路由記錄的線路質量 1 


第五條   192.168.123.0      255.255.255.0       192.168.123.88       192.168.123.88       1

直聯網段的路由記錄

      當我接收到一個數據包的目的網段是192.168.123.0時,我會將該資料包通過192.168.123.88這個介面直接傳送出去,因為這個埠直接連線著192.168.123.0這個網段,該路由記錄的線路質量 1 

第六條   192.168.123.68     255.255.255.255       127.0.0.1           127.0.0.1           1

本地主機路由

     當路由器收到傳送給自己的資料包時將如何處理

     當我接收到一個數據包的目的網段是192.168.123.68時,我會將該資料包收下,因為這個資料包時傳送給我自己的,該路由記錄的線路質量 1  


第七條   192.168.123.88     255.255.255.255       127.0.0.1           127.0.0.1           1

本地主機路由

      當路由器收到傳送給自己的資料包時將如何處理  

      當我接收到一個數據包的目的網段是192.168.123.88時,我會將該資料包收下,因為這個資料包時傳送給我自己的,該路由記錄的線路質量 1  

第八條   192.168.123.255  255.255.255.255  192.168.123.68   192.168.123.68  1

本地廣播路由

       當路由器收到傳送給直聯網段的本地廣播時如何處理  

       當我接收到廣播資料包的目的網段是192.168.123.255時,我會將該資料從192.168.123.68介面以廣播的形勢傳送出去,該路由記錄的線路質量 1  

第九條  192.168.123.255   255.255.255.255     192.168.123.88     192.168.123.88     1 

本地廣播路由

      當路由器收到傳送給直聯網段的本地廣播時如何處理 

      當我接收到廣播資料包的目的網段是192.168.123.255時,我會將該資料從192.168.123.88介面以廣播的形勢傳送出去,該路由記錄的線路質量 1  

第十條   224.0.0.0           224.0.0.0          192.168.123.68       192.168.123.68       1

組播路由

    當路由器收到一個組播資料包時該如何處理

    當我接收到組播資料包時,我會將該資料從192.168.123.68介面以組播的形式傳送出去,該路由記錄的線路質量 1

第十一條   224.0.0.0           224.0.0.0          192.168.123.88       192.168.123.88       1

組播路由

     當路由器收到一個組播資料包時該如何處理

     當我接收到組播資料包時,我會將該資料從192.168.123.88介面以組播的形式傳送出去,該路由記錄的線路質量 1 

第十二條   255.255.255.255   255.255.255.255      192.168.123.68       192.168.123.68       1

廣播路由

     當路由器收到一個絕對廣播時該如何處理  

     當我接收到絕對廣播資料包時,將該資料包丟棄掉

相關推薦

Linux 網路協議開發—— Windows路由

一、檢視Windows路由表  路由表是Windows的TCP/IP協議棧的一個重要的部分。但是,路由表不是Windows作業系統向普通使用者顯示的東西。如果你要看到這個路由表,你必須要開啟一個命令提示符對話方塊,然後輸入“ROUTE PRINT”命令。結果如下: 路由

Linux 網路協議開發程式碼分析之VLAN—— VLAN收發處理

        以一個例子來說明,當主機收到報文,交由vlan協議模組處理後(vlan_rcv),此時需要更換skb->dev所指向的裝置,以使上層協議認為報文是來自於虛擬網絡卡(比如eth1.1),而不知道網絡卡eth1的存在。更換裝置就需要知道skb->dev更換的目標。這由兩個因素決定:sk

Linux 網路協議開發基礎十二—— 使用wireshark分析TCP/IP協議中TCP包頭的格式

摘要: 本文簡單介紹了TCP面向連線理論知識,詳細講述了TCP報文各個欄位含義,並從Wireshark俘獲分組中選取TCP連線建立相關報文段進行分析。 一、概述 TCP是面向連線的可靠傳輸協議,兩個程序互發資料之前需要建立連線,這裡的連線只不過是端系統中分配的一些快

Linux 網路協議開發基礎—— VID與PVID

一、PVID的作用及和VID的區別        PVID和VID經常出現於二、三層交換機裡,由於PVID和VID的設定不合理,造成VLAN劃分變得混亂。        PVID是交換機上的概念,說的是進入該埠的報文如果沒有打vlan id就按PVID的值打上,VID是報文

Linux 網路協議開發—— 網路協議核心分析

1.1 傳送端 1.1.1 應用層 (1) Socket 應用層的各種網路應用程式基本上都是通過 Linux Socket 程式設計介面來和核心空間的網路協議棧通訊的。Linux Socket 是從 BSD Socket 發展而來的,它是 Linux 作業系統的重要組成部分之一,它是網路應用程式

Linux 網路協議開發—— 二層橋轉發藍圖

struct sk_buff *br_handle_vlan(struct net_bridge *br,                      struct net_bridge_vlan_group *vg,                      struct sk_b

數學分析教程 3:空間解析幾何初步 學習感受

與上一個番外篇一樣,這本來也是要專門上一門課的,這裡只是點到為止,講講基本內容。 首先是平面,就是一個2元1次方程,最標準的是點法式。其次是空間直線,有兩種表達:點向式和一般式。其中一般式就是兩個平面相交。 對於空間曲面主要是介紹常見的二次曲面和它們對應的圖形,需要注意的是

Java併發程式設計如何結束一個執行緒

本篇部落格介紹下如何結束一個執行緒。在Java 的設計中,當一個執行緒的run方法中程式碼執行結束後,該執行緒就自動結束了。但是,在我們的實際開發過程中,可能會需要手動的結束一個執行緒,此時我們應該怎麼安全地結束一個執行緒呢? 1. stop方法 根據J

python爬蟲進程,線程的初步了

換來 文本 上下 處理器 www 同時 正在 cnblogs 多人 原文地址https://www.cnblogs.com/zhaof/p/6994991.html 整理這番外篇的原因是希望能夠讓爬蟲的朋友更加理解這塊內容,因為爬蟲爬取數據可能很簡單,但是如何高效持久的爬

床頭筆記之Android開發報錯解決

已有專案時新建專案執行報錯 your project contains error(s),please fix them before running your application 工程上有紅叉,不知道少了什麼,但是工程中卻沒有任何錯誤,執行程式報錯為: Y

床頭筆記之Android開發報錯解決

問題描述: 在佈局新增控制元件手動新增還是拖的新增,新增edittext後佈局就不好用 總之,Android介面佈局新增EditText元件後介面無法預覽 報錯 Exception raised during rendering: java.lang.Syst

linux網路協議(五)網路層 (1)L2與L3

5.1、L2與L3: 網路的目的是使可以訪問不同主機的資源,僅以最簡單的使用如訪問我們軟體四部閘道器技術組的伺服器,是通過訪問192.168.36.XXX的IP地址達到訪問那臺主機的目的,而我們自己的主機IP都是192.168.10.XXX,我們的主機和閘道器技術組的主機不

linux網路協議(四)鏈路層 (5)vlan處理

4.6、VLAN處理: 4.6.1、vlan原理 對於帶vlan的乙太網報文,其乙太網型別為0x8100,所以鏈路層中對於帶vlan報文的處理就是對於乙太網型別為0x8100的報文的處理; vlan,用於在鏈路層劃分廣播域,實現資料在鏈路層分流,在二層交換機中,vlan實際

linux網路協議分析筆記14-路由4-FIB3

看完fib的查詢,弄清了一些資料結構的組織,我們再來看看路由表是如何建立的 從ip_fib_init註冊的兩個通知鏈來看,在IP地址傳送變動時會觸發通知鏈的處理函式,都會呼叫fib_add_ifaddr()來新增地址到路由中 這個裡面由呼叫了fib_magic來進行路由地址的操作。 static void

Linux網路協議之資料包處理過程(非技術人員勿看)

1.中斷處理函式中:    網絡卡收到一幀------------------------〉   引發中斷-------------------〉   cpu呼叫相應的中斷處理函式(指向此網絡卡驅動中的相應的處理函式)(把此packet讀到ram中)--------------------〉   呼叫neti

Linux 網路協議之核心鎖—— 程序上下文與中斷上下文的理解

一.什麼是核心態和使用者態 核心態:在核心空間執行,通常是驅動程式,中斷相關程式,核心排程程式,記憶體管理及其操作程式。 使用者態:使用者程式執行空間。 二.什麼是程序上下文與中斷上下文 1.程序上下文: (1)程序上文:其是指程序由使用者態切換到核心態是需

Linux網路協議(二)——套接字快取(socket buffer)

Linux網路核心資料結構是套接字快取(socket buffer),簡稱skb。它代表一個要傳送或處理的報文,並貫穿於整個協議棧。 1、    套接字快取 skb由兩部分組成: (1)    報文資料:它儲存了實際在網路中傳輸的資料; (2)    管理資料:供核心處理報

linux網路協議(四)鏈路層 (1)鏈路層原理

四:鏈路層: 4.1、鏈路層原理: 4.1.1、鏈路層在幹什麼: 在報文接收方向上,網絡卡驅動把接收到的資料按照其對應的鏈路層協議(如乙太網)組裝成報文,然後把它上交給鏈路層,介面是netif_receive_skb,至此網絡卡驅動的任務就結束了,報文交給鏈路層處理; 在報

Linux 網路協議收訊息過程-Ring Buffer

想看能不能完整梳理一下收訊息過程。從 NIC 收資料開始,到觸發軟中斷,交付資料包到 IP 層再經由路由機制到 TCP 層,最終交

linux基礎:基於Redhat7系統的網路設定

常用網路協議 ipv4 IPv4,是網際網路協議(Internet Protocol,IP)的第四版,也是第一個被廣泛使用,構成現今 網際網路技術的基礎的協議。1981年 Jon Postel 在RFC791中定義了IP,Ipv4可以執行在各種 各樣的底層網路上,比如端