1. 程式人生 > >第8章 傳輸層(1)_TCP/UDP協議的應用場景

第8章 傳輸層(1)_TCP/UDP協議的應用場景

一個數 選擇 str 根據 connect .cn eight 安全 器)

1. 傳輸層的兩個協議

1.1 TCP和UDP協議的應用場景

技術分享

(1)TCP協議:如果要傳輸的內容比較多,需要將發送的內容分成多個數據包發送。這就要求在傳輸層用TCP協議,在發送方和接收方建立連接,實現可靠傳輸、流量控制和擁塞避免。(如下載500M電影、QQ好友傳輸文件、瀏覽網頁、發送電子郵件等)

(2)UDP協議:一個數據包就能發送全部內容不需要持續發送,發送方和接收方不需要建立連接。由於就一個數據包不需要流量控制和擁塞避免,在傳輸層不需要負責可靠傳輸。如果數據包發送出去,應用程序沒有收到返回的數據包,就再發送一遍,可以認為發送成功與否由應用層來判斷(如發送QQ聊天內容、域名解析、多播通信、視頻點播

1.2 傳輸層協議和應用層協議之間的關系

(1)兩者關系

技術分享

  ①應用層協議很多,而傳輸層就兩個協議,通常使用傳輸層協議加一個端口號標識一個應用層協議

  ②其它常見的應用層協議和端號

    A.HTTPS默認使用TCP的443端口

    B.Windows訪問共享資源使用TCP的445端口

    C.MSSQL數據庫默認使用TCP的1433端口

    D.MySQL數據庫默認使用TCP的3306端口

(2)端口的分類

  ①服務器端使用的端口熟知端口:0~1023,登記端口:1024~49151

技術分享

  數據包中的目標IP地址是用來在網絡中定位某一服務器,而目標端口是用來定位該服務器上的某個服務(如Web服務、SMTP服務和POP3服務等)

  ②客戶端使用的端口取值範圍為49152~65535

技術分享

  比如,客戶端打開瀏覽器,窗口A訪問百度,窗口B訪問51cto,需要建立兩個TCP連接,這時客戶端計算機會臨時為每個窗口分配一個端口(要求本地唯一)。兩個網站返回的數據包就根據這兩個目標端口不同,提交給相應的窗口來顯示

1.3 實戰

(1)查看偵聽的端口netstat -an (其中a表示查看所有連接和偵聽端口n表示以數字顯示地址和端口o表示顯示進程PIDb表示顯示進程名稱(需管理員權限)

(2)測試是否開放某個端口telnet 192.168.80.100 3389

(3)更改服務使用的默認端口

  ①如IIS服務器:打開IIS服務管理工具→“默認網站”→右鍵“屬性”→“網站”選項卡中將TCP端口指定成8080等。

  ②遠程桌面RDP:HKLM\System\CurrentControlSet\Control\TerminalServer\WinStations\RDP-Tcp\下將PortNumber的值從3389改為4000(10進制)

1.4 端口與網絡安全

(1)在路由器上設置訪問控制列表(ACL)

技術分享

(2)開啟Windows防火墻只打開特定端口

  ①“控制面板”→“Windows防火墻”→“啟用”。

  ②例外”選項卡→“添加端口”→選擇TCP或UDP。這時訪問本機該協議和端口的請求將被允許

技術分享

  ③禁用“Windows防火墻”服務:“控制面板”→“管理工具”→“服務”→禁止“Windows Firewall/Internet Connection Sharing (ICS)”

(3)TCP/IP篩選:

  ①“本地連接”→“Internet協議(TCP/IP)” →“高級”→“選項”選項卡→“TCP/IP篩選” →“屬性”

技術分享

  ②勾選“啟用TCP/IP篩選(所有適配器)

  ③在TCP端口UDP端口中選擇“只允許”,然後添加相應的端口號。

  ④重啟系統(註意:TCP/IP篩選不受“Windows Firewall/Internet Connection Sharing (ICS)服務”是否開啟的影響)

第8章 傳輸層(1)_TCP/UDP協議的應用場景