欧美色欧美亚洲高清在线观看,国产特黄特色a级在线视频,国产一区视频一区欧美,亚洲成a 人在线观看中文

  1. <ul id="fwlom"></ul>

    <object id="fwlom"></object>

    <span id="fwlom"></span><dfn id="fwlom"></dfn>

      <object id="fwlom"></object>

      【個人總結(jié)系列-46】計算機(jī)網(wǎng)絡(luò)基礎(chǔ)知識學(xué)習(xí)-數(shù)據(jù)包格式分析-傳輸過程-IP地址分類-網(wǎng)絡(luò)設(shè)備

      時間:2019-05-13 01:41:11下載本文作者:會員上傳
      簡介:寫寫幫文庫小編為你整理了多篇相關(guān)的《【個人總結(jié)系列-46】計算機(jī)網(wǎng)絡(luò)基礎(chǔ)知識學(xué)習(xí)-數(shù)據(jù)包格式分析-傳輸過程-IP地址分類-網(wǎng)絡(luò)設(shè)備》,但愿對你工作學(xué)習(xí)有幫助,當(dāng)然你在寫寫幫文庫還可以找到更多《【個人總結(jié)系列-46】計算機(jī)網(wǎng)絡(luò)基礎(chǔ)知識學(xué)習(xí)-數(shù)據(jù)包格式分析-傳輸過程-IP地址分類-網(wǎng)絡(luò)設(shè)備》。

      第一篇:【個人總結(jié)系列-46】計算機(jī)網(wǎng)絡(luò)基礎(chǔ)知識學(xué)習(xí)-數(shù)據(jù)包格式分析-傳輸過程-IP地址分類-網(wǎng)絡(luò)設(shè)備

      計算機(jī)網(wǎng)絡(luò)基礎(chǔ)知識學(xué)習(xí)-數(shù)據(jù)包格式分析-傳輸過程-IP地址分類-網(wǎng)

      絡(luò)設(shè)備

      1.1 計算機(jī)網(wǎng)絡(luò)基礎(chǔ)知識學(xué)習(xí)

      1.1.1 對數(shù)據(jù)包格式的分析

      由于在對包進(jìn)行分析時都要參考數(shù)據(jù)包的格式,所以數(shù)據(jù)包的格式是相當(dāng)重要的。在抓包時,首先是獲得鏈路層的幀,根據(jù)幀頭可以獲得源mac和目的mac以及上層的協(xié)議。一般幀頭是14byte,鏈路層幀的包頭結(jié)構(gòu)在程序中的表示如下:

      /* 6字節(jié)的mac地址 */ typedef struct mac_address {

      u_char byte1;

      u_char byte2;

      u_char byte3;

      u_char byte4;u_char byte5;u_char byte6;} mac_address;

      /* 14字節(jié)的ether幀頭 */ typedef struct ether_header {

      mac_address dest_mac;

      mac_address src_mac;

      u_short protocal;} ether_header;

      根據(jù)幀頭的長度將指針往后移,然后可以獲得IP數(shù)據(jù)報的頭部指針,根據(jù)報頭信息可以獲得源IP、目的IP、上層協(xié)議、頭部長度、總長度等信息,IP數(shù)據(jù)報的頭部格式如下圖所示:

      圖2.2.2.1 IPV4頭部格式

      圖2.2.2.2 IPV6頭部格式

      IPV4報文結(jié)構(gòu)在程序中的表示:

      /* 4字節(jié)的IP地址 */ typedef struct ip_address {

      u_char byte1;

      u_char byte2;

      u_char byte3;

      u_char byte4;} ip_address;/* IP頭部 */

      typedef struct ip_header {

      u_char ver_ihl;

      // 版本(4 bits)+ 首部長度(4 bits)

      u_char tos;

      // 服務(wù)類型(Type of service)

      u_short tlen;

      // 總長(Total length)

      u_short identification;// 標(biāo)識(Identification)

      u_short flags_fo;

      // 標(biāo)志位(Flags)(3 bits)+ 段偏移量(Fragment offset)(13 bits)

      u_char ttl;

      // 存活時間(Time to live)

      u_char proto;

      // 協(xié)議(Protocol)

      u_short crc;

      // 首部校驗(yàn)和(Header checksum)

      ip_address saddr;

      // 源地址(Source address)

      ip_address daddr;

      // 目的地址(Destination address)

      u_int

      op_pad;

      // 選項(xiàng)與填充(Option + Padding)} ip_header;

      然后根據(jù)報頭長度又可以計算出TCP或UDP的頭部指針,根據(jù)TCP或UDP的頭部信息可以獲得源端口號和目的端口號等信息,一般TCP的頭部長度為20bytes,UDP的頭部長度為8bytes,TCP和UDP的報文格式如下所示:

      圖2.2.2.3 TCP報文格式

      圖2.2.2.4 UDP報文格式

      TCP/UDP包頭結(jié)構(gòu)在程序中的表示:

      /* TCP頭部 */

      typedef struct tcp_header {

      u_short srcPort;

      // 源端口號 16bits

      u_short destPort;

      // 目的端口號 16bits

      u_int seqNum;

      // 序號 32bits

      u_int ackNum;

      // 確認(rèn)號 32bits

      u_short headLen_other;

      // 首部長度+保留未用+其他字段 16bits

      u_short windowSize;

      // 窗口大小 16bits

      u_short checkSum;

      // 檢驗(yàn)和 16bits

      u_short pointer;

      // 緊急數(shù)據(jù)指針 16bits

      u_int option;} tcp_header;

      /* UDP頭部 */

      // 選項(xiàng) 可選、不定長 typedef struct udp_header {

      u_short srcPort;

      // 源端口號 16bits

      u_short destPort;

      // 目的端口號 16bits

      u_short udpLen;

      // udp長度 16bits

      u_short checkSum;

      // 檢驗(yàn)和 16bits } udp_header;

      最后就是應(yīng)用層的數(shù)據(jù)了,根據(jù)上層的報文頭部信息可以計算出應(yīng)用層數(shù)據(jù)的頭部指針,同時根據(jù)IP數(shù)據(jù)包的頭部信息可以計算出應(yīng)用層數(shù)據(jù)的長度,因此就可以通過程序?qū)?yīng)用層的數(shù)據(jù)取出來,應(yīng)用層又根據(jù)不同的協(xié)議取出實(shí)際有用的數(shù)據(jù)。應(yīng)用層協(xié)議主要有FTP、HTTP、DNS等。

      通過以上對數(shù)據(jù)包格式的了解,那么就可以很容易對捕獲的數(shù)據(jù)包進(jìn)行一層一層的解析了,一般捕獲的數(shù)據(jù)包都是取得鏈路層的幀,然后再根據(jù)頭部信息一層一層地剝離,具體的程序分析流程如下圖所示:

      圖2.2.2.5 數(shù)據(jù)包分析流程

      以下就是根據(jù)以上分析流程捕獲到包并對其進(jìn)行分析而得出的結(jié)果(一個TCP數(shù)據(jù)包):

      ------data-----------frame-----dest_mac: 0.26.c6.67.77.14 src_mac: c8.3a.35.32.41.28 protocal: 800--ip packet--version:4 head len:20 type of service: 0 total len: 121 identifi: 14155 flag: 2 offset: 0 time to live: 50 protocal: 6 check sum: 5bb source addr: 125.39.205.67 dest addr: 192.168.0.102------------------------------tcp datagram------------------------------srcPort:80 destPort:1695 seqNum:396591251 ackNum:1797819109 headLen:20 windowSize:47386 checkSum:40441 pointer:0--app_data--數(shù)據(jù)長度:81.Q..Q....1.9Q...#[SkY#...d..qK"....xu...T.{...u.o...,.{.....a....h....-.tI...]...1.1.2 計算機(jī)網(wǎng)絡(luò)原理和數(shù)據(jù)包在網(wǎng)絡(luò)中的傳輸過程

      其實(shí)協(xié)議就是為了規(guī)定一種大家都遵循的格式,在應(yīng)用層、傳輸層、網(wǎng)絡(luò)層、數(shù)據(jù)鏈路層都有自己的協(xié)議數(shù)據(jù)單元(PDU),按照數(shù)據(jù)包在網(wǎng)絡(luò)中傳輸?shù)倪^程,首先是應(yīng)用層將實(shí)際的數(shù)據(jù)根據(jù)應(yīng)用層的協(xié)議(格式)封裝成一個應(yīng)用層數(shù)據(jù)包(相當(dāng)于一個字符串,更確切的是一個字節(jié)串),然后向下傳,傳到傳輸層,傳輸層將拿到的串作為自己數(shù)據(jù)包的數(shù)據(jù)部分,并在前面加上自己的頭部,頭部有許多字段,每個字段都有各自的含義,這樣就生成了一個新的串,繼續(xù)向下傳。傳到了網(wǎng)絡(luò)層,網(wǎng)絡(luò)層進(jìn)行和上面類似的操作,繼續(xù)傳到數(shù)據(jù)鏈路層。數(shù)據(jù)鏈路層也加上自己的頭部,生成一個新的串,并且在串的頭部和尾部都做好標(biāo)記,然后繼續(xù)向下傳。傳到了物理層,物理層就直接將收到的串轉(zhuǎn)化成二進(jìn)制的電信號進(jìn)行傳輸。假如傳輸?shù)阶詈蟮哪康牡兀ǘ讼到y(tǒng)中),首先是物理層收到電信號,將其轉(zhuǎn)化成一串字節(jié),向上傳。傳到了數(shù)據(jù)鏈路層,數(shù)據(jù)鏈路層根據(jù)之前對串的頭部和尾部做好的記號將有用信息提取出來,并根據(jù)頭部信息提取出數(shù)據(jù)部分,只將數(shù)據(jù)部分向上傳。傳到了網(wǎng)絡(luò)層,網(wǎng)絡(luò)層根據(jù)網(wǎng)絡(luò)層的頭部信息,提取出數(shù)據(jù)部分,傳給上一層,依次類推。數(shù)據(jù)在網(wǎng)絡(luò)中(整個傳輸過程不包括兩個端系統(tǒng)的部分)的傳輸過程只有3層,即物理層到數(shù)據(jù)鏈路層,再到網(wǎng)絡(luò)層,傳輸?shù)倪^程和上面描述的一樣。

      1.1.3 保留IP地址的分配

      一個機(jī)構(gòu)網(wǎng)絡(luò)要連入Internet,必須申請公用IP地址。但是考慮到網(wǎng)絡(luò)安全和內(nèi)部實(shí)驗(yàn)等特殊情況,在IP地址中專門保留了三個區(qū)域作為私有地址,使用保留地址的網(wǎng)絡(luò)只能在內(nèi)部進(jìn)行通信,而不能與其他網(wǎng)絡(luò)互連。因?yàn)楸揪W(wǎng)絡(luò)中的保留地址同樣也可能被其它網(wǎng)絡(luò)使用。IP劃分方案中留出了三部分IP地址空間,給不連接到Internet的企業(yè)內(nèi)部網(wǎng)專用。這三部分保留的IP地址空間分別在A、B和C類地址空間中都存在,地址范圍為:

      10.x.x.x 172.16.x.x ~ 172.31.x.x 192.168.x.x

      比如,在局域網(wǎng)內(nèi)計算機(jī)數(shù)量少于254臺的情況下,一般在C類IP地址段里選擇IP地址范圍就可以了,如從“192.168.1.1”到“192.168.1.254”。

      1.1.4 特殊IP地址的分配

      0.0.0.0 :所有不清楚的主機(jī)和目的網(wǎng)絡(luò)。這里的“不清楚”是指在本機(jī)的路由表里沒有特定條目指明如何到達(dá)。

      255.255.255.255 :限制廣播地址。對本機(jī)來說,這個地址指本網(wǎng)段內(nèi)(同一廣播域)的所有主機(jī)。127.0.0.1 :本機(jī)地址,主要用于測試。在Windows系統(tǒng)中,這個地址有一個別名“Localhost”,尋址這樣一個地址,是不能把它發(fā)到網(wǎng)絡(luò)接口的。

      224.0.0.1 :組播地址,注意它和廣播的區(qū)別。從224.0.0.0到239.255.255.255都是這樣的地址。224.0.0.1特指所有主機(jī),224.0.0.2特指所有路由器。這樣的地址多用于一些特定的程序以及多媒體程序。

      169.254.x.x :如果你的主機(jī)使用了DHCP功能自動獲得一個IP地址,那么當(dāng)你的DHCP服務(wù)器發(fā)生故障,或響應(yīng)時間太長而超出了一個系統(tǒng)規(guī)定的時間,Windows系統(tǒng)會為你分配這樣一個地址。

      10.x.x.x, 172.16.x.x~172.31.x.x, 192.168.x.x :私有地址,即前面的保留IP地址

      1.1.5 常見的網(wǎng)絡(luò)設(shè)備的理解

      1.中繼器:由于傳輸?shù)慕橘|(zhì)(比如雙絞線)是有一定的傳輸距離的,超過這個距離信號就會衰減,為了讓信號沿著這條線一直往下傳,于是在線中間加一個中繼器,就是將接收到的信號放大后繼續(xù)往后傳,就像一個為信號中間補(bǔ)充能量的設(shè)備。

      2.集線器:工作在物理層,有許多接口,可以連接許多傳輸設(shè)備,但是是以共享的方式發(fā)送的,一個設(shè)備發(fā)送時其他設(shè)備必須等待,而且是廣播式的,一個設(shè)備發(fā)送的數(shù)據(jù),所有連接在這個集線器上的其他設(shè)備都可以接收到。

      3.交換機(jī):工作在數(shù)據(jù)鏈路層,與集線器有點(diǎn)類似,但是功能更強(qiáng)大,而且多個設(shè)備之間可以并行傳輸數(shù)據(jù)。由于交換機(jī)可以識別mac地址,所以不是以廣播方式發(fā)送的。

      4.路由器:工作在網(wǎng)絡(luò)層,識別IP地址,控制數(shù)據(jù)包從一個網(wǎng)絡(luò)到另一個網(wǎng)絡(luò)的轉(zhuǎn)發(fā)。

      下載【個人總結(jié)系列-46】計算機(jī)網(wǎng)絡(luò)基礎(chǔ)知識學(xué)習(xí)-數(shù)據(jù)包格式分析-傳輸過程-IP地址分類-網(wǎng)絡(luò)設(shè)備word格式文檔
      下載【個人總結(jié)系列-46】計算機(jī)網(wǎng)絡(luò)基礎(chǔ)知識學(xué)習(xí)-數(shù)據(jù)包格式分析-傳輸過程-IP地址分類-網(wǎng)絡(luò)設(shè)備.doc
      將本文檔下載到自己電腦,方便修改和收藏,請勿使用迅雷等下載。
      點(diǎn)此處下載文檔

      文檔為doc格式


      聲明:本文內(nèi)容由互聯(lián)網(wǎng)用戶自發(fā)貢獻(xiàn)自行上傳,本網(wǎng)站不擁有所有權(quán),未作人工編輯處理,也不承擔(dān)相關(guān)法律責(zé)任。如果您發(fā)現(xiàn)有涉嫌版權(quán)的內(nèi)容,歡迎發(fā)送郵件至:645879355@qq.com 進(jìn)行舉報,并提供相關(guān)證據(jù),工作人員會在5個工作日內(nèi)聯(lián)系你,一經(jīng)查實(shí),本站將立刻刪除涉嫌侵權(quán)內(nèi)容。

      相關(guān)范文推薦