Python爬蟲(chóng) - 網(wǎng)絡(luò)編程

1. 網(wǎng)絡(luò)編程基礎(chǔ)

1.1 介紹

  1. 網(wǎng)絡(luò)編程基礎(chǔ)
    (1) OSI模型和TCP/IP協(xié)議
    計(jì)算機(jī)網(wǎng)絡(luò)、OSI七層模型仰禀、TCP/IP模型、TCP/IP各層實(shí)現(xiàn)的協(xié)議
    (2) 網(wǎng)絡(luò)設(shè)備
    終端設(shè)備妒茬、移動(dòng)設(shè)備束倍、家用網(wǎng)絡(luò)設(shè)備、通信線(xiàn)纜乱顾、企業(yè)級(jí)網(wǎng)絡(luò)設(shè)備板祝、運(yùn)營(yíng)商級(jí)網(wǎng)絡(luò)設(shè)備、數(shù)據(jù)中心
    (3) 網(wǎng)絡(luò)模擬軟件Packet Tracer
    軟件介紹安裝走净、構(gòu)建網(wǎng)絡(luò)撲圖券时、配置網(wǎng)絡(luò)拓?fù)湫畔ⅰ?shí)現(xiàn)網(wǎng)絡(luò)拓?fù)涞男畔鬟f
  2. 網(wǎng)絡(luò)編程進(jìn)階
    (1) 數(shù)據(jù)鏈路層
    通過(guò)Packet Tracer查看數(shù)據(jù)幀
    使用psutil模塊獲取當(dāng)前通信網(wǎng)卡的MAC地址
    (2) 網(wǎng)絡(luò)層
    IP地址介紹伏伯,IP地址劃分橘洞,子網(wǎng)掩碼的作用
    路由介紹,設(shè)備路由配置
    網(wǎng)絡(luò)層協(xié)議ARP说搅,ICMP炸枣,通過(guò)Scapy模塊實(shí)現(xiàn)ARPICMP通信協(xié)議
    (3) 傳輸層
    UDP協(xié)議蜓堕、TCP協(xié)議
    TCP三次握手抛虏、四次揮手
    通過(guò)UDP協(xié)議實(shí)現(xiàn)簡(jiǎn)單的網(wǎng)絡(luò)聊天室
    通過(guò)TCP協(xié)議實(shí)現(xiàn)簡(jiǎn)單的TCP服務(wù)器和客戶(hù)端
    (4) 應(yīng)用層
    HTTP協(xié)議、DHCP協(xié)議套才、SMTP協(xié)議迂猴、TELNET\SSH協(xié)議
    通過(guò)TCP協(xié)議實(shí)現(xiàn)簡(jiǎn)單的靜態(tài)HTTP服務(wù)器
    打開(kāi)網(wǎng)頁(yè)的過(guò)程
    連接WIFI的過(guò)程
    通過(guò)Python發(fā)送郵件
    在網(wǎng)絡(luò)設(shè)備中配置TELNETSSH

1.2 TCP/IP協(xié)議

1.2.1 網(wǎng)絡(luò)和OSI七層模型

  1. 網(wǎng)絡(luò)
    計(jì)算機(jī)網(wǎng)絡(luò),就是把分布在不同地理區(qū)域的計(jì)算機(jī)以及專(zhuān)門(mén)的外部設(shè)備利用通信線(xiàn)路互聯(lián)成一個(gè)規(guī)模大背伴、功能強(qiáng)的網(wǎng)絡(luò)系統(tǒng)沸毁,從而使眾多的計(jì)算機(jī)可以方便的互相傳遞信息峰髓,共享信息。
  2. 網(wǎng)絡(luò)的演進(jìn)
    1960年-1970年:簡(jiǎn)單連接
    1970年-1980年:基于網(wǎng)絡(luò)的連接
    1980年 - 現(xiàn)在:網(wǎng)絡(luò)互聯(lián)
  3. 網(wǎng)絡(luò)分類(lèi)
    (1) 局域網(wǎng)LAN
    通常指幾公里以?xún)?nèi)的息尺,通過(guò)某種介質(zhì)互聯(lián)的計(jì)算機(jī)携兵、打印機(jī)或其他設(shè)備的集合。
    特點(diǎn):距離短搂誉、延遲小徐紧、數(shù)據(jù)速率高、傳輸可靠
    (2) 城域網(wǎng)MAN
    一種比局域網(wǎng)更大的網(wǎng)炭懊,通常覆蓋一個(gè)城市并级,從幾十公里到一百公里不等,可能會(huì)有多種介質(zhì)侮腹,用戶(hù)的數(shù)量也比局域網(wǎng)更多嘲碧。
    特點(diǎn):連接范圍可以在1-100公里。
    (3) 廣域網(wǎng)WAN
    這種網(wǎng)絡(luò)也被稱(chēng)為遠(yuǎn)程網(wǎng)父阻,覆蓋的范圍比城域網(wǎng)(MAN)更廣愈涩,一般是在不同城市之間的局域網(wǎng)(LAN)或者城域網(wǎng)(MAN)互聯(lián),地理范圍可從幾百公里到幾千公里加矛。因?yàn)榫嚯x較遠(yuǎn)履婉,信息衰減嚴(yán)重,所以一般要租用專(zhuān)線(xiàn)荒椭。
    特點(diǎn):傳輸距離從幾百公里到幾千公里谐鼎,信息衰減嚴(yán)重
    (4) 互聯(lián)網(wǎng)Internet
    網(wǎng)絡(luò)規(guī)模最大的網(wǎng)絡(luò),也被稱(chēng)為WebWWW和萬(wàn)維網(wǎng)等。全球計(jì)算機(jī)的互聯(lián)烦秩。
    特點(diǎn):不定性、信息量大草戈、傳播廣
  4. OSI參考模型介紹
    OSI是國(guó)際標(biāo)準(zhǔn)化組織(ISO)研究出的一種用于開(kāi)放系統(tǒng)互聯(lián)的體系結(jié)構(gòu)。
    兩個(gè)遵循OSI模型的系統(tǒng)可以互聯(lián)侍瑟。
  5. OSI七層模型
    七層模型:物理層唐片、數(shù)據(jù)鏈路層、網(wǎng)絡(luò)層涨颜、傳輸層费韭、會(huì)話(huà)層、表示層庭瑰、應(yīng)用層
    最前三層是底層星持,負(fù)責(zé)網(wǎng)絡(luò)數(shù)據(jù)傳輸。
    最后三層是高層弹灭,負(fù)責(zé)主機(jī)之間的數(shù)據(jù)傳輸督暂。
    (1) 物理層
    比特流傳輸揪垄。
    (2) 數(shù)據(jù)鏈路層
    提供介質(zhì)訪(fǎng)問(wèn),鏈路管理逻翁。
    (3) 網(wǎng)絡(luò)層
    尋址和路由選擇饥努。
    (4) 傳輸層
    建立主機(jī)端到端的連接。
    (5) 會(huì)話(huà)層
    建立八回、維護(hù)和管理會(huì)話(huà)酷愧。
    (6) 表示層
    處理數(shù)據(jù)格式、數(shù)據(jù)加密等缠诅。
    (7) 應(yīng)用層
    提供應(yīng)用程序間的通信伟墙。
  6. 數(shù)據(jù)封裝和解封裝過(guò)程


    數(shù)據(jù)封裝和解封裝過(guò)程

1.2.2 TCP/IP參考模型

  1. TCP/IP協(xié)議
    五層模型:物理層、數(shù)據(jù)鏈路層滴铅、網(wǎng)絡(luò)層、傳輸層就乓、應(yīng)用層
    其中汉匙,物理層、數(shù)據(jù)鏈路層有時(shí)被統(tǒng)稱(chēng)為網(wǎng)絡(luò)接口層生蚁。
    相對(duì)于OSI參考模型噩翠,TCP/IP協(xié)議是工業(yè)標(biāo)準(zhǔn),是當(dāng)前的事實(shí)標(biāo)準(zhǔn)邦投。
    TCP/IP協(xié)議中的應(yīng)用層對(duì)應(yīng)OSI參考模型中的應(yīng)用層伤锚、表示層、會(huì)話(huà)層三層志衣。
    (1) 物理層
    二進(jìn)制數(shù)據(jù)流傳輸屯援。
    (2) 數(shù)據(jù)鏈路層
    物理介質(zhì)訪(fǎng)問(wèn)。
    (3) 網(wǎng)絡(luò)層
    尋址和路由選擇念脯。
    (4) 傳輸層
    建立端到端的連接狞洋。
    (5) 應(yīng)用層
    提供應(yīng)用程序網(wǎng)絡(luò)接口。
  2. 模型對(duì)比


    模型對(duì)比

1.2.3 TCP/IP各層實(shí)現(xiàn)的協(xié)議

  1. 應(yīng)用層
    HTTP:超文本傳輸協(xié)議绿店,基于TCP吉懊,使用80號(hào)端口,是用于從WWW服務(wù)器傳輸超文本到本地瀏覽器的傳輸協(xié)議假勿。
    SMTP:簡(jiǎn)單郵件傳輸協(xié)議借嗽,基于TCP,使用25號(hào)端口转培,是一組用于由源地址到目的地址傳遞郵件的規(guī)則恶导,用來(lái)控制通信的發(fā)送、中轉(zhuǎn)堡距。
    FTP:文件傳輸協(xié)議甲锡,基于TCP兆蕉,一般上傳下載用FTP服務(wù),數(shù)據(jù)端口是20號(hào)端口缤沦,控制端口是21號(hào)端口虎韵。
    TELNET:遠(yuǎn)程登錄協(xié)議,基于TCP缸废,使用23號(hào)端口包蓝,是Internet遠(yuǎn)程登錄服務(wù)的標(biāo)準(zhǔn)協(xié)議和主要方式。為用戶(hù)提供了在本地計(jì)算機(jī)上完成遠(yuǎn)程主機(jī)工作的能力企量。在終端使用者的電腦上使用telnet程序連接服務(wù)器测萎。使用明碼傳送,保密性差届巩,簡(jiǎn)單方便硅瞧。
    DNS:域名解析,基于UDP恕汇,使用53號(hào)端口腕唧,提供域名到IP地址之間的轉(zhuǎn)換。
    SSH:安全外殼協(xié)議瘾英,基于TCP枣接,使用22號(hào)端口,為建立在應(yīng)用層和傳輸層基礎(chǔ)上的安全協(xié)議缺谴。SSH是目前較可靠但惶,專(zhuān)為遠(yuǎn)程登錄會(huì)話(huà)和其他網(wǎng)絡(luò)服務(wù)提供安全性的協(xié)議。
  2. 傳輸層
    TCP:傳輸控制協(xié)議湿蛔。一種面向連接的膀曾、可靠的、基于字節(jié)流的傳輸層通信協(xié)議阳啥。
    UDP:用戶(hù)數(shù)據(jù)報(bào)協(xié)議妓肢。一種面向無(wú)連接的通信協(xié)議,不可靠的苫纤,基于報(bào)文的傳輸層通信協(xié)議碉钠。
    SCTP:流量傳輸控制協(xié)議。一種面向連接的流傳輸協(xié)議卷拘。在首發(fā)兩端有多條路徑喊废,但實(shí)際只是使用一條路徑傳輸,當(dāng)該條路徑出現(xiàn)故障時(shí)栗弟,不需要斷開(kāi)連接污筷,而是轉(zhuǎn)移到其他路徑。
    MPTCP:多路徑傳輸控制協(xié)議。TCP的多路徑版本瓣蛀。MPTCP真正意義上實(shí)現(xiàn)了多路徑并行傳輸陆蟆,在連接建立階段,建立多條路徑惋增,然后使用多條路徑同時(shí)傳輸數(shù)據(jù)叠殷。
  3. 網(wǎng)絡(luò)層
    IPInternet協(xié)議。通過(guò)路由選擇將下一條IP封裝后交給接口層诈皿。IP數(shù)據(jù)包報(bào)無(wú)連接服務(wù)林束。
    ICMPInternet控制報(bào)文協(xié)議。是網(wǎng)絡(luò)層的補(bǔ)充稽亏。用于在P主機(jī)壶冒、路由器之間傳遞控制消息,檢測(cè)網(wǎng)絡(luò)通不通截歉、主機(jī)是否可達(dá)胖腾、路由是否可用等網(wǎng)絡(luò)本身的消息。
    例如:ping命令瘪松。
    ARP:地址解析協(xié)議胸嘁。通過(guò)目標(biāo)設(shè)備的IP地址,查詢(xún)目標(biāo)設(shè)備的MAC地址凉逛,以保證通信的順利進(jìn)行。
    注釋?zhuān)?code>MAC地址在某一個(gè)廠(chǎng)商中是唯一的群井。
    RARP:反向地址解析協(xié)議状飞。

1.3 常見(jiàn)網(wǎng)絡(luò)設(shè)備

  1. 網(wǎng)絡(luò)設(shè)備
    網(wǎng)絡(luò)設(shè)備實(shí)現(xiàn)了TCP/IP協(xié)議,并提供服務(wù)书斜。
    (1) 家用
    網(wǎng)絡(luò)層:筆記本電腦诬辈、手機(jī)、電視盒子荐吉、網(wǎng)絡(luò)攝像頭焙糟、無(wú)線(xiàn)路由器。
    數(shù)據(jù)鏈路層和網(wǎng)絡(luò)層:交換機(jī)
    物理層:網(wǎng)線(xiàn)样屠、光纖
    (2) 企業(yè)
    網(wǎng)絡(luò)層:企業(yè)級(jí)路由器穿撮、企業(yè)級(jí)交換機(jī)、服務(wù)器痪欲、存儲(chǔ)服務(wù)器悦穿、硬件防火墻、入侵檢測(cè)系統(tǒng)业踢、入侵防御系統(tǒng)栗柒、VPN設(shè)備
    (3) 運(yùn)營(yíng)商
    運(yùn)營(yíng)商級(jí)路由器、運(yùn)營(yíng)商級(jí)交換機(jī)知举、數(shù)據(jù)中心
    注釋?zhuān)?/strong>二層交換機(jī)工作在數(shù)據(jù)鏈路層瞬沦,三層交換機(jī)工作在網(wǎng)絡(luò)層太伊。

1.4 網(wǎng)絡(luò)模擬軟件Packet Tracer

  1. Packet Tracer
    Cisco Packet Tracer是由思科(Cisco)公司發(fā)布的一個(gè)輔助學(xué)習(xí)工具,為學(xué)習(xí)思科網(wǎng)絡(luò)課程的初學(xué)者去設(shè)計(jì)逛钻、配置僚焦、排除網(wǎng)絡(luò)故障提供了網(wǎng)絡(luò)模擬環(huán)境。
  2. 軟件登錄
    用戶(hù)名:dazhuang_python@sina.com
    密碼:Dazhuang123()
    image.png
  3. 構(gòu)建網(wǎng)絡(luò)拓?fù)鋱D


    拓?fù)鋱D

2. 網(wǎng)絡(luò)編程進(jìn)階

2.1 介紹

  1. 數(shù)據(jù)鏈路層編程
    數(shù)據(jù)鏈路層楨格式
    MAC地址與ARP協(xié)議
    通過(guò)psutil模塊獲取通信主機(jī)的MAC地址
  2. 網(wǎng)絡(luò)層編程
    IP協(xié)議概述
    IP地址的劃分绣的、子網(wǎng)掩碼的作用
    路由器配置路由實(shí)例演示
    什么是ICMP協(xié)議
    通過(guò)scapy模塊實(shí)現(xiàn)ARP叠赐、ICMP掃描局域網(wǎng)主機(jī)存活狀態(tài)
  3. 傳輸層編程
    UDP協(xié)議和TCP協(xié)議概述、區(qū)別
    服務(wù)器屡江、客戶(hù)端通信芭概,模型
    TCP三次握手、四次揮手
    通過(guò)UDP協(xié)議實(shí)現(xiàn)簡(jiǎn)單聊天室
    通過(guò)TCP協(xié)議實(shí)現(xiàn)簡(jiǎn)單服務(wù)器惩嘉、客戶(hù)端通信模型
  4. 應(yīng)用層編程
    HTTP協(xié)議概述罢洲、請(qǐng)求格式、方法文黎、狀態(tài)碼
    通過(guò)TCP實(shí)現(xiàn)簡(jiǎn)單靜態(tài)WEB服務(wù)器惹苗,并通過(guò)瀏覽器訪(fǎng)問(wèn)
    從客戶(hù)端打開(kāi)瀏覽器到服務(wù)器返回網(wǎng)頁(yè)中間過(guò)程
    DHCP協(xié)議、TELNET\SSH協(xié)議耸峭,SMTP協(xié)議

2.2 數(shù)據(jù)鏈路層編程

  1. TCP/IP協(xié)議5層結(jié)構(gòu)
    (1) 應(yīng)用層
    提供應(yīng)用程序網(wǎng)絡(luò)接口
    (2) 傳輸層
    建立端到端連接
    (3) 網(wǎng)絡(luò)層
    尋址和路由選擇
    (4) 數(shù)據(jù)鏈路層
    物理介質(zhì)訪(fǎng)問(wèn)
    (5) 物理層
    二進(jìn)制數(shù)據(jù)流傳輸
  2. 數(shù)據(jù)鏈路層概述
    數(shù)據(jù)鏈路層和物理層也稱(chēng)為網(wǎng)絡(luò)接口層桩蓉,該層包括主機(jī)用于連接網(wǎng)絡(luò)的網(wǎng)絡(luò)接口卡(網(wǎng)卡)及驅(qū)動(dòng)程序,主要處理與傳輸媒介(如網(wǎng)線(xiàn)劳闹、光纖院究、無(wú)線(xiàn)電波等)的物理層接口細(xì)節(jié)。
  3. 物理層傳輸數(shù)據(jù)
    發(fā)送終端要發(fā)的數(shù)據(jù)會(huì)轉(zhuǎn)換為010101的比特流本涕,通過(guò)網(wǎng)線(xiàn)业汰、光纖、無(wú)線(xiàn)電波傳到很遠(yuǎn)的目的地菩颖。接收終端接收到010101的比特流后样漆,組裝成數(shù)據(jù)幀傳遞到數(shù)據(jù)鏈路層。
  4. 數(shù)據(jù)鏈路層傳輸數(shù)據(jù)
    網(wǎng)絡(luò)設(shè)備都安裝了網(wǎng)絡(luò)適配器晦闰,即網(wǎng)卡放祟,數(shù)據(jù)是從一塊網(wǎng)卡傳送到另一塊網(wǎng)卡。
    網(wǎng)卡地址就是數(shù)據(jù)的發(fā)送地址和接收地址呻右,也就是數(shù)據(jù)幀所包含的MAC地址舞竿。
    MAC地址是每塊網(wǎng)卡的身份標(biāo)識(shí),具有全球唯一性窿冯。MAC地址采用十六進(jìn)制標(biāo)識(shí)骗奖,共6個(gè)字節(jié),前三個(gè)字節(jié)是廠(chǎng)商編號(hào),后三個(gè)字節(jié)是網(wǎng)卡流水號(hào)执桌,例如:4C-0F-6E-12-D2-19鄙皇。
  5. 數(shù)據(jù)鏈路層傳輸數(shù)據(jù)
    有了MAC地址以后,網(wǎng)絡(luò)內(nèi)采用廣播形式仰挣,把數(shù)據(jù)發(fā)給該子網(wǎng)內(nèi)所有主機(jī)伴逸,子網(wǎng)內(nèi)每臺(tái)主機(jī)在接收到這個(gè)包以后,都會(huì)讀取數(shù)據(jù)內(nèi)的目標(biāo)MAC地址膘壶,然后和自己的MAC地址進(jìn)行對(duì)比错蝴,如果相同就做下一步處理,如果不同颓芭,就丟棄這個(gè)包顷锰。
  6. 數(shù)據(jù)以數(shù)據(jù)幀形式進(jìn)行通信
    主機(jī)作為數(shù)據(jù)發(fā)送方時(shí),數(shù)據(jù)鏈路層負(fù)責(zé)將來(lái)自本機(jī)網(wǎng)絡(luò)層的數(shù)據(jù)封裝為數(shù)據(jù)幀進(jìn)行發(fā)送亡问,接收方在收到數(shù)據(jù)幀后會(huì)給數(shù)據(jù)發(fā)送方發(fā)送反饋信息官紫,如果數(shù)據(jù)傳輸有誤,發(fā)送方需要重新發(fā)送出錯(cuò)的數(shù)據(jù)幀州藕。
    主機(jī)作為數(shù)據(jù)接收方時(shí)束世,數(shù)據(jù)鏈路層負(fù)責(zé)對(duì)接收到的數(shù)據(jù)幀進(jìn)行CRC校驗(yàn),并給數(shù)據(jù)發(fā)送方發(fā)送反饋信息床玻,如果數(shù)據(jù)無(wú)誤毁涉,會(huì)將接收到的正確幀數(shù)據(jù)的目標(biāo)MAC地址,源MAC地址和CRC部分去掉后遞交為網(wǎng)絡(luò)層處理锈死。
    數(shù)據(jù)鏈路層通信使用MAC地址識(shí)別主機(jī)贫堰,主機(jī)之間交換數(shù)據(jù)幀。
  7. psutil模塊
    能夠輕松實(shí)現(xiàn)獲取系統(tǒng)運(yùn)行的進(jìn)程和系統(tǒng)利用率(包括CPU馅精、內(nèi)存、磁盤(pán)粱檀、網(wǎng)絡(luò)等)信息洲敢。它主要應(yīng)用于系統(tǒng)監(jiān)控,分析和限制系統(tǒng)資源及進(jìn)程的管理茄蚯。
    pip3 install psutil

2.3 網(wǎng)絡(luò)層編程

  1. 網(wǎng)絡(luò)層概述
    網(wǎng)絡(luò)層負(fù)責(zé)獲取和維護(hù)主機(jī)的IP地址压彭,IP地址用于主機(jī)間進(jìn)行網(wǎng)絡(luò)互聯(lián)的標(biāo)識(shí),網(wǎng)絡(luò)層負(fù)責(zé)給數(shù)據(jù)包選擇路由路徑渗常。
    負(fù)責(zé)點(diǎn)到點(diǎn)的傳輸(這里的點(diǎn)指主機(jī)或路由器)壮不。
  2. 網(wǎng)絡(luò)層協(xié)議
    IP網(wǎng)際協(xié)議、ARP地址解析協(xié)議皱碘、ICMP網(wǎng)際控制消息協(xié)議询一。
  3. IP網(wǎng)際協(xié)議
    IP協(xié)議位于網(wǎng)絡(luò)層,它是TCP/IP協(xié)議族中最為核心的協(xié)議,所有的上層協(xié)議如TCP健蕊、UDP數(shù)據(jù)都以IP數(shù)據(jù)包格式傳輸菱阵。
  4. IP協(xié)議特征
    不可靠(unreliable)、無(wú)連接(connnectionless)
  5. IP協(xié)議版本
    (1) IPV4
    IPV4是互聯(lián)網(wǎng)協(xié)議的第四版缩功,也是第一個(gè)被廣泛使用晴及,構(gòu)成現(xiàn)今互聯(lián)網(wǎng)技術(shù)的基礎(chǔ)協(xié)議,是TCP/IP協(xié)議簇中的核心協(xié)議嫡锌。
    (2) IPV6
    IPV6是互聯(lián)網(wǎng)協(xié)議的第六版虑稼,是新一代的互聯(lián)網(wǎng)技術(shù)的基礎(chǔ)協(xié)議,目前正在推廣中势木。
  6. IPV4協(xié)議格式
    IPV4使用4個(gè)字節(jié)及32個(gè)二進(jìn)制位表示一個(gè)地址蛛倦,通常采用點(diǎn)分十進(jìn)制方法表示,例如192.168.1.1跟压。也可以通過(guò)二進(jìn)制表示胰蝠。
    地址分成兩個(gè)部分:網(wǎng)絡(luò)地址和主機(jī)地址,各占16位震蒋。
    192. 168. 1. 1
    11000000.10101000.00000001.00000001
    IPV4協(xié)議格式
  7. IP地址劃分
    A類(lèi)地址(0.0.0.0 - 127.255.255.255)以0開(kāi)頭茸塞,網(wǎng)絡(luò)端長(zhǎng)度為8位,其中可變部分的長(zhǎng)度為7位查剖;主機(jī)段長(zhǎng)度為24位钾虐。7位的可變網(wǎng)絡(luò)段可識(shí)別2^7 = 128(0-127)個(gè)網(wǎng)絡(luò),其中0127另有用途笋庄,故只有126個(gè)可用的A類(lèi)網(wǎng)絡(luò)地址效扫。
    B類(lèi)地址(128.0.0.0 - 191.255.255.255)以10開(kāi)頭,網(wǎng)絡(luò)端長(zhǎng)度為16位直砂,其中可變部分的長(zhǎng)度為14位菌仁;主機(jī)段長(zhǎng)度為16位。14位的可變網(wǎng)絡(luò)段可識(shí)別2^14個(gè)網(wǎng)絡(luò)静暂,因此一個(gè)B類(lèi)網(wǎng)絡(luò)可以分配地址有2^16個(gè)济丘。
    C類(lèi)地址(192.0.0.0 - 223.255.255.255)以110開(kāi)頭,網(wǎng)絡(luò)端長(zhǎng)度為24位洽蛀,其中可變部分的長(zhǎng)度為21位摹迷;主機(jī)段長(zhǎng)度為8位。21位的可變網(wǎng)絡(luò)段可以識(shí)別的網(wǎng)絡(luò)數(shù)為2^21個(gè)郊供∠康铮可分配的主機(jī)地址是2^8個(gè)。
    D類(lèi)地址(224.0.0.0 - 239.255.255.255)為組播地址驮审,使用1110開(kāi)頭鲫寄,不分網(wǎng)絡(luò)段和主機(jī)段吉执,有2^28個(gè)組播地址。用于標(biāo)識(shí)預(yù)先定義的一組主機(jī)塔拳。主機(jī)使用組播通信時(shí)鼠证,可以將組播數(shù)據(jù)報(bào)一次性發(fā)送給所有同組的主機(jī)。
    E類(lèi)地址(240.0.0.0 - 255.255.255.255)是保留地址靠抑,用于研究使用量九。以1111開(kāi)頭,不區(qū)分網(wǎng)絡(luò)段和主機(jī)段颂碧,其中32位全1代表本網(wǎng)絡(luò)內(nèi)廣播荠列,因此E類(lèi)地址共有2^28-1個(gè)。
  8. 公有IP地址和私有IP地址
    公有地址在Internet中使用载城,可以在Internet中隨意訪(fǎng)問(wèn)肌似。
    私有IP地址無(wú)法在Internet中使用,只能在內(nèi)部使用诉瓦。
  9. 私有IP地址和特殊IP地址
    A類(lèi):10.0.0.0/8 10.0.0.0 - 10.255.255.255
    B類(lèi):172.16.0.0/12 172.16.0.0 - 172.31.255.255
    C類(lèi):192.168.0.0/16 192.168.0.0 - 192.168.255.255
    本地回環(huán)地址指的是以127開(kāi)頭的地址(127.0.0.1 - 127.255.255.254)川队,通常使用127.0.0.1來(lái)表示。
  10. 子網(wǎng)掩碼
    用網(wǎng)線(xiàn)直接連接的計(jì)算機(jī)要能夠相互通訊睬澡,計(jì)算機(jī)必須要在用一個(gè)網(wǎng)絡(luò)固额。
    他們的網(wǎng)絡(luò)地址必須相同,而且主機(jī)地址必須不一樣煞聪。
    子網(wǎng)掩碼就是判斷網(wǎng)絡(luò)中的計(jì)算機(jī)在不在同一網(wǎng)絡(luò)斗躏。
  11. 子網(wǎng)掩碼計(jì)算規(guī)則
    IP地址1192. 168. 1. 1
    11000000. 10101000. 00000001. 00000001
    IP地址2192. 168. 1. 200
    11000000. 10101000. 00000001. 11001000
    子網(wǎng)掩碼:255. 255. 255. 0
    11111111. 11111111. 11111111. 00000000
    IP地址與子網(wǎng)掩碼進(jìn)行與運(yùn)算,如果結(jié)果相同昔脯,則可以通訊啄糙。
    image.png
  12. 路由器
    路由器(Router)又稱(chēng)為網(wǎng)關(guān)設(shè)備(Gateway),用于連接多個(gè)邏輯上分開(kāi)網(wǎng)絡(luò)的一種設(shè)備云稚,當(dāng)數(shù)據(jù)從一個(gè)子網(wǎng)傳輸?shù)搅硪粋€(gè)子網(wǎng)時(shí)隧饼,可以通過(guò)路由器的路由功能完成。
    image.png
  13. 路由表
    直連路由:設(shè)備和設(shè)備接口間相連的路由
    靜態(tài)路由:手動(dòng)配置的路由
    動(dòng)態(tài)路由:通過(guò)動(dòng)態(tài)路由協(xié)議學(xué)習(xí)的路由
  14. ARP協(xié)議
    ARP(Address Resolution Protocol)是個(gè)地址解析協(xié)議静陈。
    在網(wǎng)絡(luò)通訊時(shí)燕雁,源主機(jī)的應(yīng)用程序知道目的主機(jī)的IP地址和端口號(hào),卻不知道目的主機(jī)的硬件地址窿给,而數(shù)據(jù)包首先是被網(wǎng)卡接收到再去處理上層協(xié)議的贵白,如果接收到的數(shù)據(jù)包的硬件地址與本機(jī)不符率拒,則直接丟棄崩泡。因此在通訊前必須獲得目的主機(jī)的硬件地址。
    在局域網(wǎng)中猬膨,網(wǎng)絡(luò)中實(shí)際傳輸?shù)氖恰?strong>幀
    ”角撞,幀里面有目標(biāo)主機(jī)的MAC地址呛伴。
    在網(wǎng)絡(luò)中,一個(gè)主機(jī)要和另一個(gè)主機(jī)進(jìn)行通信谒所,必須要知道目標(biāo)主機(jī)的MAC地址热康。
    地址解析:主機(jī)在發(fā)送幀前將目標(biāo)IP地址轉(zhuǎn)換成目標(biāo)MAC地址的過(guò)程。
    當(dāng)主機(jī)A向本局域網(wǎng)上的某個(gè)主機(jī)B發(fā)送IP數(shù)據(jù)包時(shí)劣领,先在自己的ARP緩沖表中查看有無(wú)主機(jī)BIP地址姐军。
    如果有,就可以查出其對(duì)應(yīng)的硬件地址尖淘,再將此硬件地址寫(xiě)入MAC幀奕锌,然后通過(guò)以太網(wǎng)將數(shù)據(jù)包發(fā)送到目的主機(jī)中。
    如果查不到主機(jī)BIP地址的表項(xiàng)村生【可能是主機(jī)B才接入網(wǎng)絡(luò),也可能是主機(jī)A和主機(jī)B沒(méi)有通信過(guò)趁桃,這時(shí)想要通信辽话,則必須通過(guò)ARP協(xié)議解析。
    ARP進(jìn)程在本局域網(wǎng)上廣播一個(gè)ARP請(qǐng)求卫病。ARP請(qǐng)求的主要內(nèi)容是表明: 我的IP地址是192.168.1.1油啤,我的硬件地址是00-00-C0-15-AD-18。我想知道 IP地址為192.168.1.100的主機(jī)的硬件地址忽肛。
    在本局域網(wǎng)上的所有主機(jī)都收到此ARP請(qǐng)求村砂。
    主機(jī)BARP請(qǐng)求中見(jiàn)到自己的IP地址,就向主機(jī)A發(fā)送ARP響應(yīng)屹逛,并寫(xiě)入自己的硬件地址础废。其余的所有主機(jī)都不理睬這個(gè)ARP請(qǐng)求。
    雖然ARP請(qǐng)求是廣播發(fā)送的罕模,但ARP響應(yīng)是普通的單播评腺,即從一個(gè)源地址發(fā)送到一個(gè)目的地址。

2.4 傳輸層編程

2.5 應(yīng)用層編.

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末淑掌,一起剝皮案震驚了整個(gè)濱河市蒿讥,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌抛腕,老刑警劉巖芋绸,帶你破解...
    沈念sama閱讀 216,372評(píng)論 6 498
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件担敌,死亡現(xiàn)場(chǎng)離奇詭異摔敛,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī)全封,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,368評(píng)論 3 392
  • 文/潘曉璐 我一進(jìn)店門(mén)马昙,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)桃犬,“玉大人,你說(shuō)我怎么就攤上這事行楞≡芟荆” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 162,415評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵子房,是天一觀(guān)的道長(zhǎng)形用。 經(jīng)常有香客問(wèn)我,道長(zhǎng)证杭,這世上最難降的妖魔是什么尾序? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,157評(píng)論 1 292
  • 正文 為了忘掉前任,我火速辦了婚禮躯砰,結(jié)果婚禮上每币,老公的妹妹穿的比我還像新娘。我一直安慰自己琢歇,他們只是感情好兰怠,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,171評(píng)論 6 388
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著李茫,像睡著了一般揭保。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上魄宏,一...
    開(kāi)封第一講書(shū)人閱讀 51,125評(píng)論 1 297
  • 那天秸侣,我揣著相機(jī)與錄音,去河邊找鬼宠互。 笑死味榛,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的予跌。 我是一名探鬼主播搏色,決...
    沈念sama閱讀 40,028評(píng)論 3 417
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼券册!你這毒婦竟也來(lái)了频轿?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書(shū)人閱讀 38,887評(píng)論 0 274
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤烁焙,失蹤者是張志新(化名)和其女友劉穎航邢,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體骄蝇,經(jīng)...
    沈念sama閱讀 45,310評(píng)論 1 310
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡膳殷,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,533評(píng)論 2 332
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了乞榨。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片秽之。...
    茶點(diǎn)故事閱讀 39,690評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖吃既,靈堂內(nèi)的尸體忽然破棺而出考榨,到底是詐尸還是另有隱情,我是刑警寧澤鹦倚,帶...
    沈念sama閱讀 35,411評(píng)論 5 343
  • 正文 年R本政府宣布河质,位于F島的核電站,受9級(jí)特大地震影響震叙,放射性物質(zhì)發(fā)生泄漏掀鹅。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,004評(píng)論 3 325
  • 文/蒙蒙 一媒楼、第九天 我趴在偏房一處隱蔽的房頂上張望乐尊。 院中可真熱鬧,春花似錦划址、人聲如沸扔嵌。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,659評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)痢缎。三九已至,卻和暖如春世澜,著一層夾襖步出監(jiān)牢的瞬間独旷,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 32,812評(píng)論 1 268
  • 我被黑心中介騙來(lái)泰國(guó)打工寥裂, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留嵌洼,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 47,693評(píng)論 2 368
  • 正文 我出身青樓封恰,卻偏偏與公主長(zhǎng)得像咱台,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子俭驮,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,577評(píng)論 2 353

推薦閱讀更多精彩內(nèi)容