三次握手,四次揮手 之網路管理基礎命令
三次握手
三次握手
客戶端未發起請求之前處於CLOSED狀態,伺服器未接收到請求也處於CLOSED狀態
第一次,客戶端向伺服器端發起連線請求報文,這時請求報文的首部SYN=1,同時選擇一個初始序列號seq=1,此時客戶端程序進入FYN-SENT狀態,TCP規定SYN報文段不能攜帶資料,但需要消耗一個序列號
第二次,伺服器收到請求報文後,如果同意連線,則發出確認報文。確認報文中應該ACK=1,SYN=1,確認號是ack=x+1,同時也為自己初始化一個序列號seq=y,此時伺服器進入SYN-RCVD狀態,這個報文也不能攜帶資料,但同樣消耗一個序列號。
第三次,客戶端收到確認報文後,還要想伺服器端確認,確認報文有ACK=1,ack=y+1,自己的序列號是seq=x+1,此時,TCP連線建立,客戶端進入ESTABLISHED,TCP規定,ACK報文段可以攜帶資料,如果不攜帶資料則不消耗序列號
當伺服器收到客戶端的確認後也進入ESTABLISHED狀態,此後雙方就可以通訊了
四次揮手
第一次 客戶端發出斷開連線請求報文,此時報文首部為FIN=1,序列號為最後一次接收到的資料的最後一個位元組的序號+1,此時客戶端進入FIN-WAIT-1狀態,TCP報文規定,FIN報文即使不攜帶資料也需要消耗一個序列號
第二次 伺服器端收到斷開連線請求報文後,發出確認斷開報文,ACK=1,ack=u+1,並且帶上自己的序列號seq=u,此時伺服器就進入了CLOSE-WAIT狀態,TCP通知高層的應用程序,客戶端已經沒有資料要傳送了,但伺服器端想客戶端傳送資料,客戶端還可以接受
客戶端收到伺服器的確認請求後,此時客戶端進入FIN-WAIT-2狀態,等待伺服器傳送斷開連線報文
第三次 伺服器端將最後的資料傳送完畢後,就向客戶端傳送斷開請求FIN=1 ack=u+1,此時伺服器進入LSTE-ACK(最後確認)狀態,等待客戶端確認
第四次 客戶端收到伺服器發來的斷開報文後,必須確認,ACK=1,ack=w+1,而自己的序列號是seq=u+1,此時客戶端進入了TIME-WAIT狀態。注意此時TCP連線還沒有斷開,還要等待一段時間,當客戶端撤銷相應的TCP後,才進入CLOSED狀態
伺服器只要收到了客戶端的確認報文後,立即進入CLOSED狀態
子網劃分
網路地址分為A,B,C,E類
A類 0-127
B類 128-191
C類 192-223
D類 224-239
E類 240-254
主機數=2^主機ID -2
網路數=2^可變的網路ID位
ifconfig
語法格式
ifconfig 網路裝置 引數
常用選項
up 啟用指定網路裝置、網絡卡
down 關閉指定網路裝置,網絡卡
ip
語法格式
ip [ OPTIONS ] OBJECT { COMMAND | help }
示例
顯示網路裝置資訊
關閉一個網路裝置
ip link set dev eth0 down
為網路新增地址
刪除一個網路地址
nmcli
檢視網絡卡資訊
顯示具體的網路介面資訊
顯示所有裝置狀態
刪除一個網絡卡連線
新增一個網絡卡連線
網路介面停用
網路介面啟用
route
netstat
列出所有埠
列出所有處於監聽狀態的socket
顯示每個協議的統計資訊
顯示PID和程序名
&n