訪問控制列表
TCP和UDP協議
TCP/IP協議族的傳輸有兩個重要的協議:TCP(Transmission Control Protocol傳輸控制協議)和UDP(User Datagram Protocol用戶數據報協議)。
一 TCP協議
v TCP是面向連接的、可靠的進程到進程通信的協議
v TCP提供全雙工服務,即數據可在同一時間雙向傳輸
1:TCP報文段
TCP將若干個字節構成一個分組,叫報文段(Segment)
TCP報文段封裝在IP數據報中
TCP報文段的首部格式:
首部長度爲20—60字節,以下是個字段的含義:
源端口號:它是16爲字段,爲發送方進程對應的端口號。
目標端口號:它是16位字段,對應的是接收端的進程,接收端收到數據段後根據這個端口號來確定把數據送給哪個應用程序的進程。
序號:當TCP從進程接收數據字節時,就把它們存儲在發送緩存中,並對每一個字節進行編號。編號特點如下:
1:編號不一定從0開始,一般會產生一個隨機數作爲第一個字節的編號,稱爲初始序號(ISN),範圍是0—2的32次方減1.
2:TCP每一個方向的編號是互相獨立的。
當數據到達目的地後,接收端會按照這個序號把數據重新排列,保證數據段的正確性。
確認號:確認號是對發送端的確認信息,用它來告訴發送端這個序號之前的數據段都已經收到,比如確認號是X,就是表示前X-1個數據段都已經收到。
首部長度:用它可以確定首部數據結構的字節長度。一般情況下TCP首部是20字節,但首部長度最大可以擴展爲60字節。
保留:這部分保留位作爲今後發展功能用,現在還沒有使用到。
控制位:這六位有很重要的作用,TCP的連接,傳輸和斷開都是受這六個控制位的指揮。各位含義如下:
URG:緊急指針有效位。
ACK:只有當ACK=1時,確認序列號字段纔有效。當ACK=0時,確認序列號字段無效。
PSH:標誌位爲1時要求接收方儘快將數據段送達應用層。
RST:當RST值位1時通知重新建立連接。
SYN:同步序列號。TCP需要建立連接時將這個值設爲1.
FIN:發送端完成任務位,當TCP完成數據傳輸需要斷開連接時,提出斷開連接的一方將這個值設爲1.
窗口值:它說明本地可接收數據段的數目,這個值得大小時可變的。
校驗和:它是用來做差錯控制的,與IP的校驗和不同,TCP校驗和的計算包括TCP首部,數據和其他填充字節。在發送TCP數據段時,由發送端計算校驗和,當到達目的地時又進行一次校驗和計算。若這兩次的校驗和一致,則說明數據基本是正確的。否則將認爲該數據已被破壞,接收端將丟棄該數據。
緊急指針:和URG配合使用,當URG=1時有效。
選項:在TCP首部可以有多達40字節的可選信息。
2:TCP連接
TCP是面向連接的協議,它在源點和終點之間建立一條虛連接。
在通信之前,發送端與接收端要先建立連接。等數據發送結束後,雙方再斷開連接。TCP連接的每一方都是由一個IP地址和一個端口號組成的。
v TCP建立連接的過程稱爲三次握手
v 通過Sniffer抓包來分析三次握手的過程
第一次握手
第二次握手
第三次握手
v TCP斷開連接的四次握手
在TCP斷開連接過程中,有一個半關閉的概念。TCP一方(通常是客戶端)可以終止發送數據,但仍然可以接收數據,這被稱做半關閉。具體描述如下:
客戶端發送FIN報文段,半關閉了這個連接,服務器發送ACK報文段接受半關閉。
服務器繼續發送數據,而客戶端只發送ACK確認,不再發送任何數據。
當服務器已經把所有數據發送完畢時,就發送FIN報文段,客戶端發送ACK報文段,這樣就關閉了TCP連接。
TCP在網絡中的應用範圍很廣,主要用在對於數據傳輸可靠性要求高的環境。
TCP端口及應用
FTP 21 端口 FTP服務器所開發的控制端口
TELNET 23端口 遠程登錄
SMTP 25端口 發送郵件
HTTP 80端口 超文本傳輸協議
二 UDP 協議
UDP 是一個無連接,不保證可靠性的傳輸層協議。
UDP 的首部結構簡單,話費的開銷小。
v UDP報文的首部格式
源端口號:用來標識數據發送端的進程,和TCP協議的端口號類似。
目的端口號:用來標識數據接收端的進程,和TCP協議的端口號類似。
UDP長度:用來指出UDP的總長度,位首部加上數據。
校驗和:用來完成對UDP數據差錯檢驗,它的計算與TCP的校驗和類似。這是UDP協議提供的唯一的可靠機制。
UDP 使用的常見端口
TFTP 69 端口 簡單文件傳輸協議
RPC 111 端口 遠程過程調用
NTP 123 端口 網絡時間協議
訪問控制列表的概述
訪問控制列表(ACL)是應用在路由器的指令列表(即規則)。這寫指令列表用來告訴路由器,哪些數據報可以接收,哪些數據包需要拒絕。
ACL通過在路由器接口處控制數據包是轉發還是丟棄來過濾通信流量。路由器根據ACL中指定的條件開檢測通過路由器的數據包,從而決定是轉發還是丟棄改數據包。
可以通過在路由器或多層交換機上配置ACL來控制對特定網絡資源的訪問。
訪問控制列表的類型
1:標準訪問控制列表
基於源IP地址過濾數據包
標準訪問控制列表的訪問控制列表號是1~99
2:擴展訪問控制列表
基於源IP地址、目的IP地址、指定協議、端口和標誌來過濾數據包
擴展訪問控制列表的訪問控制列表號是100~199
3:命名訪問控制列表
命名訪問控制列表允許在標準和擴展訪問控制列表中使用名稱代替表號
訪問控制列表的工作原理
訪問控制列表在接口應用的方向
出:已經過路由器的處理,正離開路由器接口的數據包
入:已到達路由器接口的數據包,將被路由器處理
列表應用到接口的方向與數據方向有關
訪問控制列表的處理過程
標準訪問控制列表的配置
標準ACL的配置實例
查看並驗證配置:
驗證配置:
PC2不能ping主機PC1,但PC3可以ping同主機PC1。