網絡中兩臺主機通訊的完整過程

主機A和主機B通訊報文的轉發過程
    一、主機A和主機B在同一個二層網絡中,直接走二層交換
    主機A 查看本身的ARP緩存,檢查是否有主機B的IP到MAC的映射, 若是有映射,構造報文,目的IP爲主機B的IP,源IP爲主機A的IP,目的MAC爲主機B的MAC,源MAC爲主機A的MAC,將報文發送給交換機C,交換機C進行MAC地址表學習,將主機A的MAC和報文入端口號記錄下來,而後交換機C查看本身的MAC轉發表,檢查是否有主機B的MAC到端口的映射,若是有映射,獲取對應的端口,將報文今後端口轉發出去,報文到達主機B。若是交換機C沒有主機B的MAC轉發表映射,採用洪泛的形式廣播報文,主機B收到報文後向主機A回覆,交換機C進行MAC表學習,將主機B的MAC和報文入端口號記錄下來。
        若是主機A沒有主機B的ARP映射,主機A須要發送ARP請求,以獲取主機B的MAC,將報文發往交換機C,交換機C採用洪泛的形式廣播報文,主機B收到廣播報文後,在本身的ARP緩存表中寫入主機A的IP到MAC的映射,將本身的MAC封裝到ARP回覆報文中,單播給主機A,主機A獲取到主機B的MAC後,在本身的ARP緩存表中寫入主機B的IP到MAC的映射,構造報文發送給主機B,過程同上。
    主機B向主機A回覆報文的過程相似。
    
    二、主機A和主機B不在同一個網絡中,走三層路由
    主機A查看本身的ARP緩存表,檢查是否有路由器E的IP到MAC的映射,若是有映射,獲取路由器E的MAC,構造報文,目的IP爲主機B的IP,源IP爲主機A的IP,目的MAC爲路由器E的MAC,源MAC爲主機A的MAC,將報文經過交換機C發往路由器E,過程同上。  若是主機A沒有路由器E的IP到MAC的映射,須要發送ARP請求,獲取路由器E的MAC,過程同上。路由器E收到主機A的報文後,剝離報文的MAC幀頭,查詢路由表,發現目標主機B所在的網絡是直連的,查看本身的ARP緩存表,若是有主機B的IP到MAC的映射關係,獲取主機B的MAC,封裝報文MAC幀頭,目的MAC爲主機B的MAC,源MAC爲路由器E的MAC,將報文經過交換機D發往主機B,若是路由器E沒有主機B的IP到MAC的映射關係,須要發送ARP請求,獲取主機B的MAC,過程同上。
    主機B向主機A回覆報文的過程相似。
注:路由器上的路由表通常是配置靜態路由或者經過路由協議自動學習的。
相關文章
相關標籤/搜索