<del id="nnjnj"></del><track id="nnjnj"></track>

<p id="nnjnj"></p>

<address id="nnjnj"></address>

    <pre id="nnjnj"><pre id="nnjnj"></pre></pre>

      <noframes id="nnjnj"><ruby id="nnjnj"><ruby id="nnjnj"></ruby></ruby>

      • 自動秒收錄
      • 軟件:1973
      • 資訊:58033|
      • 收錄網站:279947|

      IT精英團

      三.七 IP地址,ARP協議,MAC

      三.七 IP地址,ARP協議,MAC

      瀏覽次數:
      評論次數:
      編輯: 小美
      信息來源: 51CTO博客
      更新日期: 2022-09-28 17:09:46
      摘要

      IP地址是因特網上的主機和路由器所使用的地址,用于標識兩部分信息。ARP協議屬于TCP/IP的網際層,其作用是已知設備所分配到的IP地址,使用ARP協議可以通過該IP地址獲取設備的MAC地址。

      • 正文開始
      • 相關閱讀
      • 推薦作品

      IP地址是TCP/IP體系結構網際層所使用的地址 --- 網際層
      ARP協議屬于TCP/IP的網際層,其作用是已知設備所分配到的IP地址,使用ARP協議可以通過該IP地址獲取設備的MAC地址。
      MAC地址是以太網的MAC子層所使用的地址 ---數據鏈路層

      網際層:他們三個在我們日常使用網絡都離不開,雖然MAC和另外兩不在同一層,但是是有關系的,所以放在一起討論。

       

      3.7.1 MAC地址

      兩臺主機通過鏈路進行通信,很顯然他們不需要地址就可以通信,因為信道上的主機只有他們兩


       image.png

       

      但是總線型網絡就沒這么簡單了,有多個主機,那發送完怎么知道接收方是誰呢?


       image.png

       

      這個時候我們就得給每個主機分配一個數據鏈路層的地址,用大寫字母表示。


               image.png

       

      每個主機發送的幀中必須攜帶發送主機的地址和接收主機的地址,由于這類地址是用于媒體接入控制,因此這類地址稱為MAC地址。


      • 一般MAC地址在網卡里面,因此也叫硬件地址

      • image.png



      • MAC地址有時也被稱為物理地址,但這并不代表它是物理層的。不能因為姓尹就說人家是韓國人。

      • image.png


      • 一般情況下,用戶主機會包含兩個網絡適配器:有線網卡和無線網卡。每個網卡都有一個全球唯一的MAC地址。而交換機和路由器往往擁有更多的接口,所以會擁有多個MAC地址,換句話說,MAC地址是有一個接口就有一個MAC地址,嚴格來說,MAC地址是對網絡上各接口的唯一標識,而不是對網絡上各設備的唯一標識。

      接下來我們介紹一下IEEE 802局域網的MAC地址格式。

      由48比特構成,每8個比特為1字節


       

       

      前三個字節是組織唯一標識符OUI,生產網絡設備的廠商,需要向注冊機構申請一個或多個OUI。

      image.png

       

       

      后三個字節是廠商自定義的。叫做EUI (可擴展唯一標識符)。


       

       

      MAC地址的標準表示方法,是將每4個比特表示為16進制字符,共12個,每兩個一組共6組。組之間用短線連接。

      image.png

       

       

      也可以將短線改為冒號。linus 蘋果 安卓的表示方法

      image.png

       

       

      還可以將4個字符為一組,共三組,組之間用點連接。

      1664357545800625.png

       

       

      image.png

       

       

      請大家思考一下:我們每個人擁有幾個全球管理的單播地址?EUI-48地址空間會耗盡嗎?

      • 臺式機,筆記本電腦有多個接口那就有多個全球單播的NAC地址。EUI-48會耗盡?,F在都使用EUI-64的了。地址數量也就是2的64次方個。

      接下來我們介紹MAC地址的發送順序:


       

       

      外面從左往右,里面從右往左。

      下面我們舉例說明單播MAC地址的作用:

      image.png

       

       

      再來看廣播MAC地址的作用:

      image.png

       

       

      再來看多播MAC地址的作用:

      我們先來介紹一下如何快速判斷一個地址是不是多播地址。

      image.png

       

       

      接下來我們看看A發送多播的過程

      A先加上多播地址,源地址,然后幀首部,尾部,數據部分構成一個多播幀。

      image.png

       

       

      BC發現是發給自己的,接收并移交上層。D找不到不接受。

      image.png

       

       

      需要注意的是:給主機配置多播組列表進行私有應用使,不能使用公有的多播地址。

      最后我們來看看隨機MAC地址的概念:

      據斯諾登爆料。漂亮國國家安全局有一套系統。通過監視電子設備的MAC地址,來跟蹤城市中每個人的行動,因此蘋果首先在IOS系列設備掃描網絡時使用隨機MAC地址。隨后WIN10,安卓6.0,linux3.18也提供隨機MAC地址的功能。

      image.png

       

       

       

      3.7.2 IP地址

      IP地址的分類和詳細信息我們主要在網絡層介紹,本節課我們主要介紹IP地址的作用。

      IP地址是因特網上的主機和路由器所使用的地址,用于標識兩部分信息。

      • 網絡編號:標識因特網上數以百萬計的網絡。

      • 主機編號:標識同一網絡上不同主機(或路由器各接口)

      image.png

       

       

      同一個網絡上的各主機和路由器對應的接口網絡號部分相同,都是192.168.0標識是在同一個網絡中的設備。主機號不相同,為1,2,254,標識是不同的設備。

      因特網中各網絡的編號各不相同:

       

       

      需要注意的是,在一個IP地址中,哪部分是網絡編號,哪部分是地址編號,并不是和上圖中的是一樣的結構。我們將在后續網絡層繼續介紹。

      很顯然,之間介紹的MAC地址不具備區分不同網絡的功能。

      • 如果只是一個單獨的網絡,那就不要IP地址也行,只使用MAC地址。

      • 如果主機所在的網絡要接入因特網,那就得IP地址和MAC地址一起使用了。

      從網絡體系結構看IP地址與MAC地址。

       

       

      接下來我們看看轉發過程中IP地址與MAC地址的變化情況。

       

       

      思考:我們路由器之間明明是不同的網絡的,為什么不需要IP地址,只需要填寫MAC地址就能轉發?

       

       

      本例中主機H1 路由器R1和R2都存在一個共同的問題,知道IP地址,但是不知道MAC地址,這就涉及到我們下節課的內容了。如果把IP地址轉變為MAC地址。

      練習題:

      image.png

       

       

      記住一句話:源IP和目的IP始終不變,MAC地址反復橫跳,三姓家奴。

       

      3.7.3 ARP協議

      如何通過IP地址找到MAC地址?

      • ARP協議

      ARP協議的工作原理:

      每個主機都有一個ARP高速緩存表,里面放置IP地址和MAC地址的映射,要發送的時候先去緩存表里面找找有沒有對應的。

       

       

      如果沒找到的話,主機B就發送一個ARP請求報文去獲取主機C的MAC地址。

       

       

      主機A的網卡收到ARP請求報文,交給上層的ARP進程讀取,發現不是找自己的,不理會。

      主機C的網卡收到ARP請求報文,交給上層的ARP請求報文處理,發現是找自己的。他先雞賊的將B的IP地址和MAC地址記到自己的ARP高速緩存表中,

       

       

      然后再給主機B發送響應報文,里面有自己的MAC地址。

       

       

      之后B將C的記到自己的高速緩存表中

      image.png

       

       

      主機B現在就可以給主機C發送之前想要發送的數據了。

      高速緩存表中的數據類型有兩種:

      • 動態:自動獲取的,活不過兩分鐘。(IP地址和MAC地址并不是永久性的,比如網卡壞了換新網卡,MAC地址變了)

      • 靜態:手工配置的,不同操作系統下面生命周期不同。

       

      接下來請大家思考一下:主機H1是否可以通過ARP協議獲取到主機H2的MAC地址?

      3.7 MAC IP地址 ARP協議_mac地址_31

       

       

      不能。ARP協議只能在一段鏈路上使用或一個網絡上使用,而不能跨網絡使用。

      image.png

       

       

      最后注意:ARP協議沒有安全驗證機制,存在ARP欺騙(攻擊)問題。

       

       

      Spring Data JPA
      ? 上一篇 2022-09-28
      • Spring Data JPA
        2閱讀 0條評論 個贊
        Spring Data JPA,首先了解JPA是什么?JPA(JavaPersistenceAPI)是Sun官方提出的Java持久化規范。它為Java開發人員提供了一種對象/關聯映射工具來管理Java應用中的關系數據。它的出現主要是為了簡化現有的持久化開發工作和整合ORM技術,結束現在Hibernate、TopLink、JDO等ORM框架各自為營的局面。值得注意的是,JPA是在充……
      • ATMHYH C語言分享筆記
        1閱讀 0條評論 個贊
        ATMHYH C語言分享筆記,入學C語言……
      • python爬蟲抓取國家科技報告服務系統數據 共計30多萬條
        1閱讀 0條評論 個贊
        python爬蟲爬取國家科技報告服務系統數據,共計30余萬條,爬取國家科技報告服務系統數據按學科分類【中圖分類】共計三十余萬條科技報告數據……
      • [C language _2]整數和浮點數據類型
        0閱讀 0條評論 個贊
        【C語言_2】整型和浮點型數據類型,整型數據類型整型數據類型名稱及關鍵詞類型名稱關鍵詞注釋字符型char用于表示很小的整數短整型short用于表示較小的整數整型int生活中一般的整數都可以表示長整型long用于表示較大的整數加長整型longlong用于表示非常大的整數為什么要定義不同的整型類型????因為不同的數據類型所占用的內存大小是不同的,他們可表示的數據范圍也是不同的。那么char,sho……
      • 設計的永恒法則是不會讓我思考的設計
        0閱讀 0條評論 個贊
        經久不衰的設計定律是不要讓我思考的設計,1前言什么是設計?什么是好的設計?如何思考設計背后的哲學?工作當中也有跟設計師接觸。有時候發現自己的角度(普通用戶)和設計師的初衷可能真的大相徑庭。作者主頁,可以點??此處??,以下是《不要讓我思考》(Dont'tmakemethink)讀書筆記。本書是一本很薄的書,短小精煉,適合任何想要了解設計的人:設計師、開發人員、網頁制作人員、項目經理閱讀此書不會讓人感到壓力,不需要面面俱到。任何……
      發表評論 共有條評論
      用戶名: 密碼:
      驗證碼: 匿名發表
      • 基于位置變化的市縣彈出引導切換
        31閱讀 0條評論 個贊
        目錄1.背景2.模型方案產出3.總結01背景58App業務中有城市和縣域兩個首頁,兩者中間有一個過渡選擇頁,用戶通過點擊該頁面下的條目內容可以切換到對應條目的首頁;比如:點擊“北京”會跳轉到北京(市)……
      • Linux驅動開發十六 輸入系統33543 系統附帶的輸入驅動程序
        0閱讀 0條評論 個贊
        前面兩章我們通過input子系統構建了一個按鍵類型的輸入設備的驅動,其實Linux的內核還提供了一套基于GPIO的按鍵驅動程序,和LED設備一樣,我們只需要在編譯內核的過程中進行配置然后在設備樹中定義……
      • Spring Data JPA系列5:讓IDEA自動為你編寫JPA實體定義代碼
        1閱讀 0條評論 個贊
        Spring Data JPA系列5:讓IDEA自動幫你寫JPA實體定義代碼,通過前面的系列文檔,我們一起對SpringDataJPA從淺入深的進行了全方位的探討。正所謂“工欲善其事、必先利其器”,面對一個優秀的框架,如果再結合一些外部的工具,其實可以讓我們的開發效率與程序員開發過程的體驗更上一層樓的。本篇內容,我們就一起來聊一聊這方面?!?/div>
      • 卡夫卡數據丟失問題優化總結及重復消費原因分析(二)
        0閱讀 0條評論 個贊
        .css-1yuhvjn{margin-top:16px;}.css-3jt6os.FileLinkCard{-webkit-align-items:center;-webkit-box-align……
      • c#異步高級————通道[1]
        0閱讀 0條評論 個贊
        前言該系列為異步編程的進階篇,其實也不能這么講。世界上本沒有進階篇,只能說是高級篇(高級篇不能說多高級,是對底層的封裝的意思),只要是加深理解都是進階。本章先介紹一下channel。正文下面沒什么好說……
      • 全志A40i核心板全國產化 照亮動力設備國產化之路
        1閱讀 0條評論 個贊
        國產化三個字近幾年來在電力行業內很火,新的設備、新的項目都開始有國產化的趨勢,要求自主可控,然而很多人只是泛泛地去看待“國產化”這三個字而沒有去深究它的重要性。自主可控有多重要?今天,我們就來認真地聊……
      • SpringMVC 03: 請求和響應的亂碼解決 + SpringMVC響應Ajax請求
        1閱讀 0條評論 個贊
        請求或響應的中文亂碼問題tomcat9解決了get請求和響應的中文亂碼問題,但是沒有解決post請求或響應的中文亂碼問題tomcat10解決了get和post請求以及響應的中文亂碼問題考慮到實際項目中……
      • Go語言知識|基本數據類型
        0閱讀 0條評論 個贊
        前言學習Go半年之后,我決定重新開始閱讀《TheGoProgramingLanguage》,對書中涉及重點進行全面講解,這是Go語言知識查漏補缺系列的文章第二篇,前一篇文章則對應書中一二兩章。我……
      • 在Winform開發中 我們使用幾個下拉列表來顯示字典數據
        0閱讀 0條評論 個贊
        在Winform開發中中,我們為了方便客戶選擇,往往使用系統的字典數據選擇,畢竟選擇總比輸入來的快捷、統一,一般我們都會簡單封裝一下,以便方便對控件的字典值進行展示處理,本篇隨筆介紹DevExpres……
      • ASP.NET核心6框架揭示示例演示[34]:緩存整個響應內容
        0閱讀 0條評論 個贊
        我們利用ASP.NET開發的大部分API都是為了對外提供資源,對于不易變化的資源內容,針對某個維度對其實施緩存可以很好地提供應用的性能?!秲却婢彺媾c分布式緩存的使用》介紹的兩種緩存框架(本地內存緩存和……
      • 2流高手速成記(之二):跳羚之基礎網開發
        8閱讀 0條評論 個贊
        現在,我們已經能自行完成SpringBoot的初級項目搭建了,接下來看如何實現一些Web開發中的基礎功能。先看項目完整的目錄結構:1.返回Json數據創建model文件夾,并新建Person類,代碼……
      • PostgreSQL邏輯副本解密
        0閱讀 0條評論 個贊
        PostgreSQL邏輯復制解密在數字化時代的今天,我們都認同數據會創造價值。為了最大化數據的價值,我們不停的建立著數據遷移的管道,從同構到異構,從關系型到非關系型,從云下到云上,從數倉到數據湖,試圖……
      • C' Chain Chain '念念不忘@有回音的雙向鏈表
        0閱讀 0條評論 個贊
        1.前言寫過一篇與單鏈表相關的博文(https://blog.51cto.com/gkcode/5681771),實際應用中,雙向循環鏈表的功能更強大。單鏈表中,查詢一個已知結點的后驅結點的時間復雜……
      • SQL Server動態生成分區腳本
        0閱讀 0條評論 個贊
        一、前言前段時間使用表分區比較多,雖然已經寫了SQLServer合并(刪除)分區解惑、SQLServer2005分區模板與實例,但是在實踐中一直感覺修改SQL腳本的時間比較多,一直想抽個時間來把……
      • 教你如何構建JAVA分布式爬蟲
        0閱讀 0條評論 個贊
        在工作中,我們經常需要去獲取一些數據,但是這些數據可能需要從第三方平臺才可以獲取到。這個時候,爬蟲系統就可以幫助我們來完成這些事情。提到爬蟲系統,很多人都會想到使用python。但實際上,語言只……
      • 自動化測試選擇Python還是Java?
        0閱讀 0條評論 個贊
        你好,我是測試蔡坨坨。今天,我們來聊一聊測試人員想要進階,想要做自動化測試,甚至測試開發,如何選擇編程語言。前言自動化測試,這幾年行業內的熱詞,也是測試人員進階的必備技能,更是軟件測試未來發展的趨勢?!?/div>
      • SQL Server復制:事務發布
        0閱讀 0條評論 個贊
        一、背景在復制的運用場景中,事務發布是使用最為廣泛的,我遇到這樣一個場景:在Task數據庫中有Basic與Group兩個表,需要提供這兩個表的部分字段給其它程序讀取放入緩存,程序需要比較及時的獲取……
      • sql server日期時間到字符串
        0閱讀 0條評論 個贊
        一、sqlserver日期時間函數SqlServer中的日期與時間函數1.當前系統日期、時間selectgetdate()2.dateadd在向指定日期加上一段時間的基礎上,返回新的datetime值……
      • python入門系列(十)學習Python文件處理
        0閱讀 0條評論 個贊
        文件處理在Python中處理文件的關鍵函數是open()函數。有四種不同的方法(模式)來打開一個文件"r"-讀取-默認值。打開一個文件進行讀取,如果文件不存在則出錯。"a"-Append……
      • SQL Server死鎖
        0閱讀 0條評論 個贊
        SQLServer死鎖多個事務之間互相等待對方的資源,導致這些事務永久等待注意是永久等待,而非長事務死鎖的4個條件互斥條件(Mutualexclusion):資源不能被共享,只能由一個進程使用。請……
      最近發布資訊
      更多
      警花高潮嗷嗷叫
      <del id="nnjnj"></del><track id="nnjnj"></track>

      <p id="nnjnj"></p>

      <address id="nnjnj"></address>

        <pre id="nnjnj"><pre id="nnjnj"></pre></pre>

          <noframes id="nnjnj"><ruby id="nnjnj"><ruby id="nnjnj"></ruby></ruby>