[转]WireShark的抓包-TCP三次握手

原文拜读

https://www.freebuf.com/column/155600.html

https://blog.csdn.net/zeze_z/article/details/57919479

1. 三次握手

1.0 追踪流

为了快速看到TCP握手,我们可以找到任一TCP协议项目,右键->追踪流->TCP即可

例如一个比较完整的三次握手如下
三次握手

具体如下

1.1 第一次握手

查看传输层 Transmission Control Protocol: 标志位为SYN,序列号为0

  1. Sequence number: 0 (relative sequence number)
  2. Flags: 0x002 (SYN)
Frame 15: 76 bytes on wire (608 bits), 76 bytes captured (608 bits)
Linux cooked capture
Internet Protocol Version 4, Src: 10.92.246.134, Dst: 203.208.41.87
Transmission Control Protocol, Src Port: 40860, Dst Port: 80, Seq: 0, Len: 0
    Source Port: 40860
    Destination Port: 80
    [Stream index: 0]
    [TCP Segment Len: 0]
    Sequence number: 0    (relative sequence number)// ---看这里---
    [Next sequence number: 0    (relative sequence number)]
    Acknowledgment number: 0
    1010 .... = Header Length: 40 bytes (10)
    Flags: 0x002 (SYN)// ---看这里---
    Window size value: 65535
    [Calculated window size: 65535]
    Checksum: 0xf363 [unverified]
    [Checksum Status: Unverified]
    Urgent pointer: 0
    Options: (20 bytes), Maximum segment size, SACK permitted, Timestamps, No-Operation (NOP), Window scale
    [Timestamps]

1.2 第二次握手

查看传输层 Transmission Control Protocol:标志位为 SYN,ACK. 将确认序号(Acknowledgement Number)设置为客户的I S N加1以.即0+1=1

  1. Sequence number: 0 (relative sequence number)
  2. Flags: 0x012 (SYN, ACK)
  3. Acknowledgment number: 1 (relative ack number)
Frame 24: 76 bytes on wire (608 bits), 76 bytes captured (608 bits)
Linux cooked capture
Internet Protocol Version 4, Src: 203.208.41.87, Dst: 10.92.246.134
Transmission Control Protocol, Src Port: 80, Dst Port: 40860, Seq: 0, Ack: 1, Len: 0
    Source Port: 80
    Destination Port: 40860
    [Stream index: 0]
    [TCP Segment Len: 0]
    Sequence number: 0    (relative sequence number) // ---看这里---
    [Next sequence number: 0    (relative sequence number)]
    Acknowledgment number: 1    (relative ack number) // ---看这里---
    1010 .... = Header Length: 40 bytes (10)
    Flags: 0x012 (SYN, ACK) // ---看这里---
    Window size value: 65535
    [Calculated window size: 65535]
    Checksum: 0x7460 [unverified]
    [Checksum Status: Unverified]
    Urgent pointer: 0
    Options: (20 bytes), Maximum segment size, SACK permitted, Timestamps, No-Operation (NOP), Window scale
    [SEQ/ACK analysis]
    [Timestamps]

1.3 第三次握手

查看传输层 Transmission Control Protocol:SYN标志位为0,ACK标志位为1.并且把服务器发来ACK的序号字段+1,放在确定字段中发送给对方.并且在数据段放写ISN的+1

  1. Sequence number: 1 (relative sequence number)
  2. Acknowledgment number: 1 (relative ack number)
  3. Flags: 0x010 (ACK)/
Frame 25: 68 bytes on wire (544 bits), 68 bytes captured (544 bits)
Linux cooked capture
Internet Protocol Version 4, Src: 10.92.246.134, Dst: 203.208.41.87
Transmission Control Protocol, Src Port: 40860, Dst Port: 80, Seq: 1, Ack: 1, Len: 0
    Source Port: 40860
    Destination Port: 80
    [Stream index: 0]
    [TCP Segment Len: 0]
    Sequence number: 1    (relative sequence number)// ---看这里---
    [Next sequence number: 1    (relative sequence number)]
    Acknowledgment number: 1    (relative ack number)// ---看这里---
    1000 .... = Header Length: 32 bytes (8)
    Flags: 0x010 (ACK)// ---看这里---
    Window size value: 343
    [Calculated window size: 87808]
    [Window size scaling factor: 256]
    Checksum: 0xa131 [unverified]
    [Checksum Status: Unverified]
    Urgent pointer: 0
    Options: (12 bytes), No-Operation (NOP), No-Operation (NOP), Timestamps
    [SEQ/ACK analysis]
    [Timestamps]

2. TCP 三次握手流程图

TCP 三次握手流程图

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值