乡下人产国偷v产偷v自拍,国产午夜片在线观看,婷婷成人亚洲综合国产麻豆,久久综合给合久久狠狠狠9

  • <output id="e9wm2"></output>
    <s id="e9wm2"><nobr id="e9wm2"><ins id="e9wm2"></ins></nobr></s>

    • 分享

      DNS報文格式

       冬木*細(xì)雪 2015-08-03
      DNS報文格式(借個圖貼過來):
          說明一下:并不是所有DNS報文都有以上各個部分的。圖中標(biāo)示的“12字節(jié)”為DNS首部,這部分肯定都會有,首部下面的是正文部分,其中查詢問題部分也都會有。除此之外,回答、授權(quán)和額外信息部分是只出現(xiàn)在DNS應(yīng)答報文中的,而這三部分又都采用資源記錄(Recource Record)的相同格式,這個稍后會提到。下面逐個字段地分析DNS報文。

          標(biāo)識(2字節(jié)):這個字段網(wǎng)上的解釋有點(diǎn)不清楚:“由客戶程序設(shè)置并有服務(wù)器返回結(jié)果?!笨戳讼聦嶒炇业某绦蚝臀臋n,原來這個字段可以看作是DNS報文的ID,對于相關(guān)聯(lián)的請求報文和應(yīng)答報文,這個字段是相同的,由此可以區(qū)分DNS應(yīng)答報文是哪個請求報文的響應(yīng)。

          標(biāo)志(2字節(jié)):這部分非常重要,需要逐比特分析。再借個圖:


          QR(1比特):查詢/響應(yīng)的標(biāo)志位,1為響應(yīng),0為查詢。

          opcode(4比特):定義查詢或響應(yīng)的類型(若為0則表示是標(biāo)準(zhǔn)的,若為1則是反向的,若為2則是服務(wù)器狀態(tài)請求)。
          AA(1比特):授權(quán)回答的標(biāo)志位。該位在響應(yīng)報文中有效,1表示名字服務(wù)器是權(quán)限服務(wù)器(關(guān)于權(quán)限服務(wù)器以后再討論)
          TC(1比特):截斷標(biāo)志位。1表示響應(yīng)已超過512字節(jié)并已被截斷(依稀好像記得哪里提過這個截斷和UDP有關(guān),先記著)
          RD(1比特):該位為1表示客戶端希望得到遞歸回答(遞歸以后再討論)
          RA(1比特):只能在響應(yīng)報文中置為1,表示可以得到遞歸響應(yīng)。
          zero(3比特):不說也知道都是0了,保留字段。
         rcode(4比特):返回碼,表示響應(yīng)的差錯狀態(tài),通常為0和3,各取值含義如下:
      0          無差錯
      1          格式差錯
      2          問題在域名服務(wù)器上
      3          域參照問題
      4          查詢類型不支持
      5          在管理上被禁止
      6          -- 15 保留

          標(biāo)志段說完了,下面是問題數(shù)、資源記錄數(shù)、授權(quán)資源記錄數(shù)和額外資源記錄數(shù),這四個字段都是兩字節(jié),分別對應(yīng)下面的查詢問題、回答、授權(quán)和額外信息部分的數(shù)量。一般問題數(shù)都為1,DNS查詢報文中,資源記錄數(shù)、授權(quán)資源記錄數(shù)和額外資源記錄數(shù)都為0.

          該說正文部分了。查詢問題部分格式如下:


          查詢名部分長度不定,一般為要查詢的域名(也會有IP的時候,即反向查詢)。此部分由一個或者多個標(biāo)示符序列組成,每個標(biāo)示符以首字節(jié)數(shù)的計數(shù)值來說明該標(biāo)示符長度,每個名字以0結(jié)束。計數(shù)字節(jié)數(shù)必須是0~63之間。該字段無需填充字節(jié)。還是借個例子來說明更直觀些,查詢名為gemini.tuc.noao.edu的話,查詢名字段如下:


          查詢類型(2字節(jié)):通常查詢類型為A(由名字獲得IP地址)或者PTR(獲得IP地址對應(yīng)的域名),類型列表如下:
      類型 助記符 說明
      1 A IPv4地址。
      2 NS 名字服務(wù)器。
      5 CNAME 規(guī)范名稱。定義主機(jī)的正式名字的別名。
      6 SOA 開始授權(quán)。標(biāo)記一個區(qū)的開始。
      11 WKS 熟知服務(wù)。定義主機(jī)提供的網(wǎng)絡(luò)服務(wù)。
      12 PTR 指針。把IP地址轉(zhuǎn)化為域名。
      13 HINFO 主機(jī)信息。給出主機(jī)使用的硬件和操作系統(tǒng)的表述。
      15 MX 郵件交換。把郵件改變路由送到郵件服務(wù)器。
      28 AAAA IPv6地址。
      252 AXFR 傳送整個區(qū)的請求。
      255 ANY 對所有記錄的請求。
         查詢類(2字節(jié)):通常為1,指Internet數(shù)據(jù)。

      前面說過,回答字段,授權(quán)字段和附加信息字段均采用資源記錄RR(Resource Record)的相同格式。該格式如下:


          域名字段(不定長或2字節(jié)):記錄中資源數(shù)據(jù)對應(yīng)的名字,它的格式和查詢名字段格式相同。當(dāng)報文中域名重復(fù)出現(xiàn)時,就需要使用2字節(jié)的偏移指針來替換。例如,在資源記錄中,域名通常是查詢問題部分的域名的重復(fù),就需要用指針指向查詢問題部分的域名。關(guān)于指針怎么用,TCP/IP詳解里面有,即2字節(jié)的指針,最簽名的兩個高位是11,用于識別指針。其他14位從報文開始處計數(shù)(從0開始),指出該報文中的相應(yīng)字節(jié)數(shù)。注意,DNS報文的第一個字節(jié)是字節(jié)0,第二個報文是字節(jié)1。一般響應(yīng)報文中,資源部分的域名都是指針C00C(1100000000001100),剛好指向請求部分的域名。

          類型(2字節(jié))、類(2字節(jié)):含義與查詢問題部分的類型和類相同。

          生存時間(4字節(jié)):該字段表示資源記錄的生命周期(以秒為單位),一般用于當(dāng)?shù)刂方馕龀绦蛉〕鲑Y源記錄后決定保存及使用緩存數(shù)據(jù)的時間。

          資源數(shù)據(jù)長度(2字節(jié)):表示資源數(shù)據(jù)的長度(以字節(jié)為單位,如果資源數(shù)據(jù)為IP則為0004)

          資源數(shù)據(jù):該字段是可變長字段,表示按查詢段要求返回的相關(guān)資源記錄的數(shù)據(jù)。

          基本上對DNS報文格式的分析就是這些了。貼個報文實例,用wireshark抓的:


          對應(yīng)的報文:


          就不再分析了,對比wireshark的分析應(yīng)該能找到各個字段。

        本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊一鍵舉報。
        轉(zhuǎn)藏 分享 獻(xiàn)花(0

        0條評論

        發(fā)表

        請遵守用戶 評論公約

        類似文章 更多