實驗環境與資料來源
- 網路環境:ADSL 寬頻
- 封包內容:透過 Outlook 寄送郵件(
xiaojin8039@163.com → xiaoj@njb.swirebev.com),系統擷取的 IP 封包
- 協定類型:所有封包均為 TCP 協定
關鍵觀察發現
1. IP 封包分片情況
所有 IP 封包均未分片,傳輸過程保持原始大小,推測與網路環境良好有關。
2. IP 標頭與 TCP 標頭大小
- IP 標頭固定 20 位元組,未見含選項情況
- TCP 標頭偶含選項,大小 24~44 位元組不等;建立連線協商階段通常帶選項,一般為 28 位元組
3. TCP 連線建立與結束步驟
- 客戶端發送建立連線的 TCP 封包
- 伺服器端回應同意建立連線
- 客戶端再次確認(三向交握完成)
- 伺服器端發送伺服器資訊
- 雙方開始資料傳輸
- 客戶端發送結束連線指令
- 伺服器端回應結束連線 TCP 封包
- 客戶端確認同意結束連線(四向揮手完成)
4. 完整 TCP 連線封包詳細記錄
記錄包含:封包序號、資料大小(不含 IP/TCP 標頭)、客戶端/伺服器端 IP ID、Sequence 號、ACK 號。關鍵規律:
- 除連線協商階段外,每個 Sequence 值等於上一 Sequence 值加上資料大小
- SYN 標記佔用 1 位元組(第 1、2 列)
- FIN 標記出現在第 30、31 列
- 每筆資料皆含發送方起始 Sequence 與期望對方回應的 ACK 值
5. 擷取程式功能

- 擷取本機網卡所有 TCP 協定 IP 封包
- 未加密郵件內容可識別並擷取郵件標頭
- 擷取封包可儲存為
scan.bin,支援匯入相同格式檔案
- 原始碼含其他功能,部分尚未完成,歡迎協助改進
6. 作者聲明
受限於筆者水平,內容難免有誤,歡迎批評指正。