一、計算機網絡
網絡基礎
1. 計算機網絡的分類
2. 網絡拓撲結構
總線型(利用率低、干擾大、價格低)
星型(交換機形成的局域網、中央單元負荷大)
環型(流動方向固定、效率低擴充難)
樹型(總線型的擴充、分級結構)
分布式(任意節點連接、管理難成本高)
一般來說,辦公室局域網是星型拓撲結構,中間節點就是交換機,一旦交換機損壞,整個網絡都癱瘓了,這就是星型結構。同理,由路由器連接起來的小型網絡也是星型結構。
3. OSI參考模型
OSI層 | 功能 | 單位 | 設備 |
---|---|---|---|
物理層 | 負責比特流在物理介質上的傳輸,包括電壓、線速、針腳等電氣特性。 | 比特(Bit) | 網卡、中繼器、集線器 |
數據鏈路層 | 幀傳輸、錯誤檢測與糾正、MAC尋址 | 幀(Frame) | 交換機、網橋 |
網絡層 | 負責邏輯尋址和路由選擇,實現不同網絡間的數據包傳輸。 | 數據包(Packet) | 路由器、三層交換機 |
傳輸層 | 端到端連接、流量控制、可靠性保障 | 段(Segment,TCP)或數據報 | 網關、防火墻 |
會話層 | 建立、管理、終止會話 | 數據(Data) | 不常見(軟件實現為主) |
表示層 | 數據格式轉換、加密/解密、壓縮 | 數據(Data) | 軟件協議棧 |
應用層 | 直接為用戶應用提供服務,如文件傳輸、電子郵件等。 | 數據(Data) | 代理服務器、應用網關 |
由低層到高層分別為:物理層、數據鏈路層、網絡層、傳輸層、會話層、表示層、應用層(速記詞:巫術忘傳會飆鷹)。
網絡設備
1. 網卡(Network Interface Card, NIC)
網卡是計算機與網絡之間的硬件接口,負責將數據轉換為電信號或光信號進行傳輸。功能包括物理地址(MAC地址)識別、數據封裝與解封裝、流量控制等。有線網卡通過RJ-45接口連接網線,無線網卡通過天線接收Wi-Fi信號。
2. 中繼器(Repeater)
中繼器工作在物理層,用于放大或再生網絡信號以延長傳輸距離。作用僅限于信號增強,不改變數據內容,也無法識別數據包的目標地址。中繼器功能單一,無法隔離沖突域或廣播域。
3. 集線器(Hub)
集線器是物理層設備,功能類似于多端口中繼器。所有連接到集線器的設備共享同一沖突域,數據廣播到所有端口,缺乏定向傳輸能力。因其效率低,現代網絡已逐漸被交換機取代。
4. 網橋(Bridge)
網橋工作在數據鏈路層,用于連接兩個MAC層協議相同的網絡(局域網)并過濾流量。通過MAC地址表學習目標設備位置,僅轉發目標地址在另一端的幀,從而減少不必要的廣播流量。
5. 交換機(Switch)
交換機是高性能的網橋升級版,在數據鏈路層轉發數據幀,基于MAC地址進行點對點通信。每個端口獨立構成沖突域,支持全雙工通信。通過MAC地址表實現點對點數據傳輸,顯著提升網絡效率。交換機隔離沖突域,但默認不隔離廣播域(除非使用VLAN)
6.路由器(Router)
路由器工作在網絡層(OSI第三層),負責在不同網絡間轉發數據包。功能包括IP地址尋址、路由選擇(如OSPF、BGP協議)、NAT(網絡地址轉換)和防火墻基礎防護。路由器處理IP地址,而交換機處理MAC地址。
7.網關(Gateway)
網關是高層協議轉換設備,工作于傳輸層及以上(OSI第四至七層)。用于連接不同協議的網絡(如TCP/IP與SNA),或實現應用層協議轉換(如郵件網關)。廣義上,路由器也可視為一種網關。
8.防火墻(Firewall)
防火墻是網絡安全設備,工作層次從網絡層到應用層不等。監控進出網絡的數據流,基于規則允許或攔截流量。功能包括:
- 包過濾:基于IP、端口等規則阻止非法流量。
- 狀態檢測:跟蹤連接狀態以識別異常會話。
- 應用層防護:深度檢測HTTP、FTP等協議內容。
- VPN支持:加密遠程訪問流量。
可分為硬件防火墻(如企業級設備)和軟件防火墻(如Windows Defender)。
網絡協議
1. TCP/IP協議
2. 常見網絡協議端口號及作用
端口號 | 協議名稱 | 作用 |
---|---|---|
20/21 | FTP | 文件傳輸協議(20用于數據傳輸,21用于控制連接) |
22 | SSH | 安全外殼協議,用于加密遠程登錄和管理 |
23 | Telnet | 遠程登錄協議(明文傳輸,安全性較低) |
25 | SMTP | 簡單郵件傳輸協議,用于發送郵件 |
53 | DNS | 域名系統協議,用于域名解析 |
67/68 | DHCP | 動態主機配置協議(67為服務器端,68為客戶端) |
80 | HTTP | 超文本傳輸協議,用于網頁瀏覽 |
110 | POP3 | 郵局協議版本3,用于接收郵件 |
143 | IMAP | 互聯網消息訪問協議,用于郵件管理(比POP3更高級) |
161 | SNMP | 簡單網絡管理協議,用于網絡設備監控和管理 |
443 | HTTPS | 安全的HTTP協議,通過SSL/TLS加密傳輸數據 |
465 | SMTPS | 加密的SMTP協議(基于SSL) |
587 | SMTP(提交) | 郵件提交端口(通常與STARTTLS加密配合使用) |
993 | IMAPS | 加密的IMAP協議(基于SSL/TLS) |
995 | POP3S | 加密的POP3協議(基于SSL/TLS) |
3306 | MySQL | MySQL數據庫默認端口 |
3389 | RDP | 遠程桌面協議,用于Windows遠程訪問 |
5432 | PostgreSQL | PostgreSQL數據庫默認端口 |
5900 | VNC | 虛擬網絡計算協議,用于遠程桌面控制 |
6379 | Redis | Redis數據庫默認端口 |
** 網際層協議**
IP 的主要功能包括將上層數據(如TCP、UDP數據)或同層的其他數據(如ICMP數據)封裝到IP數據中;將IP數據報送到最終目的地;為據報到達其他網絡中的目的地的路徑。
地址解析協議ARP的作用是將IP地址轉換為物理地址,反地址解析協議RARP的作用是將物理地址轉換為IP地址。
Internet 控制信息協議(ICMP)是網際層的另一個比較重要的協議。由于 IP 是一種盡力傳送的通信協議,即傳送的數據報可能會丟失、重復、延遲或亂序,因此IP需要一種避免差錯并在發生差錯時報告的機制。ICMP就是一個專門用于發送差錯報文的協議。ICMP定義了五種差錯報文(源抑制、超時、目的不可達、重定向和要求分段)和四種信息報文(回應請求、回應應答、地址屏蔽碼請求和地址屏蔽碼應答)。
傳輸層協議
傳輸控制協議TCP是TCP/IP 協議族中最重要的協議之一,利用TCP在源主機和目的機之間建立和關閉連接操作時,均需要通過三次握手來確認建立和關閉是否成功,如圖10-7所示。
用戶數據報協議UDP是一種不可靠、無連接的協議。UDP協議軟件的主要作用是將UDP消息展示給應用層,并不負責重新發送丟失或出錯的數據消息,不對接收到的無序IP數據報重新排序,不消除重復的IP數據報等。
常用的網絡診斷命令
ping: 用于測試與目標主機的連通性和延遲。發送ICMP回顯請求包,接收回顯應答包。
tracert: 追蹤數據包從源到目標的路徑,顯示經過的每一跳(路由器)及延遲。
nslookup: 查詢DNS記錄,驗證域名解析是否正常。
netstat: 顯示網絡連接、路由表、接口統計等信息。
ipconfig: 查看或配置網絡接口信息(IP地址、子網掩碼、網關等)。
IP
1. IP地址
計算機存放的IP地址是 32位的二進制代碼,每隔8位插入一個空格,可提高可讀性,為了便于理解和設置,一般會采用點分十進制方法來表示:將32位二進制代碼每8位二進制轉換成一進制,就變成了4個十進制數,而后在每個十進制數間隔中插入.如下所示
Internet中的地址可以分為五類:A類、B類、C類、D類和E類,各類地址分配方案如圖。
特殊地址:
169.254 是自動專用IP地址,當DHCP故障時為主機分配的臨時IP地址
主機位:全0是本地網絡地址,全1是廣播地址,其他是主機地址。
2. 子網掩碼
子網掩碼(Subnet Mask)是一種32位的二進制數字,用于劃分IP地址的網絡部分和主機部分。它與IP地址結合使用,通過邏輯“與”運算確定網絡地址。子網掩碼由連續的1和連續的0組成,1表示網絡位,0表示主機位。
IP地址類別 | 默認子網掩碼 | IP地址范圍 |
---|---|---|
A類 | 255.0.0.0 | 1.0.0.1 - 126.255.255.254 |
B類 | 255.255.0.0 | 128.0.0.1 - 191.255.255.254 |
C類 | 255.255.255.0 | 192.0.0.1 - 223.255.255.254 |
子網掩碼通常有兩種表示形式:
- 點分十進制:如255.255.255.0,對應二進制為11111111.11111111.11111111.00000000。
- CIDR斜線表示法:如/24,表示掩碼中1的個數為24位。
3. 子網劃分
我們一般采用子網劃分的方法來劃分網絡,將主機號拿出幾位作為子網號,就可以劃分出多個子網,此時IP地址組成為:網絡號+子網號+主機號。(本質還是保留了分類編址結構)
網絡號和子網號都為1,主機號都為0,這樣的地址為子網掩碼。
如何判斷兩個IP地址是否在同一網段?
只需要確定其網絡號+子網號是否相同,可以將子網掩碼和源IP地址進行與運算,得出網絡地址,判斷網絡地址是否相同即可。網絡號不同的主機屬于不同的網段,不能直接通信,必須通過網絡路由才能互相通信。
要注意的是:子網號可以為全0和全1,主機號不能為全0或全1,因此,在計算時,主機數需要 - 2,而子網數不用。
特殊情況處理
如果子網掩碼不同,即使IP地址看起來相似,也可能不在同一網段。例如:
IP地址1:192.168.1.10,子網掩碼:255.255.0.0,網絡地址:192.168.0.0
IP地址2:192.168.1.20,子網掩碼:255.255.255.0,網絡地址:192.168.1.0
此時網絡地址不同,不在同一網段。