![TCP Dump,看不懂这四行?](https://linux22.com/image/646165/TCP%20Dump%EF%BC%8C%E7%9C%8B%E4%B8%8D%E6%87%82%E8%BF%99%E5%9B%9B%E8%A1%8C%EF%BC%9F.png)
我需要支持来理解这 4 行。看起来像 tcp dump,但我实际上不明白这里到底发生了什么。
13:13:22.407445 IP 192.168.246.128.54955 > 192.168.246.13.80: S 2910497703:2910497703(0) win 5840 <mss 1460,sackok,timestamp="" 518611="" 0,nop,wscale="" 6="">
13:13:22.407560 IP 192.168.246.13.80 > 192.168.246.128.54955: S 3762608065:3762608065(0) ack 2910497704 win 64240 <mss 1460,nop,wscale="" 0,nop,nop,timestamp="" 0="" 0,nop,nop,sackok="">
13:13:22.407963 IP 192.168.246.128.54955 > 192.168.246.13.80: . ack 1 win 92 <nop,nop,timestamp 518611="" 0="">
13:13:22.408321 IP 192.168.246.128.54955 > 192.168.246.13.80: R 1:1(0) ack 1 win 92 <nop,nop,timestamp 518611="" 0="">
答案1
似乎客户端192.168.246.128
尝试连接到 Web 服务器192.168.246.13
,但客户端的窗口大小92
被拒绝慢读攻击预防机制。
答案2
编辑在阅读了 @GuntramBlohm 对 @XavierLucas 的回答的评论后,我快速检查了一下某些 nmap 扫描在网上的样子,似乎 OP 中的模式与nmap-sT作为。。而被知道TCP 连接扫描
例如端口 80 打开的情况
# nmap -sT localhost -p80
11:06:20.734518 IP 127.0.0.1.58802 > 127.0.0.1.80: Flags [S], seq 2064268743, win 32792, options [mss 16396,sackOK,TS val 3605220739 ecr 0,nop,wscale 8], length 0
11:06:20.734540 IP 127.0.0.1.80 > 127.0.0.1.58802: Flags [S.], seq 2269627608, ack 2064268744, win 32768, options [mss 16396,sackOK,TS val 3605220739 ecr 3605220739,nop,wscale 8], length 0
11:06:20.734551 IP 127.0.0.1.58802 > 127.0.0.1.80: Flags [.], ack 1, win 129, options [nop,nop,TS val 3605220739 ecr 3605220739], length 0
11:06:20.734718 IP 127.0.0.1.58802 > 127.0.0.1.80: Flags [R.], seq 1, ack 1, win 129, options [nop,nop,TS val 3605220739 ecr 3605220739], length 0
端口 80 关闭的情况
# nmap -sT localhost -p80
12:18:07.737075 IP 127.0.0.1.58294 > 127.0.0.1.80: Flags [S], seq 2548091563, win 32792, options [mss 16396,sackOK,TS val 672612170 ecr 0,nop,wscale 7], length 0
12:18:07.737085 IP 127.0.0.1.80 > 127.0.0.1.58294: Flags [R.], seq 0, ack 2548091564, win 0, length 0
结束编辑tcpdump 输出的原始解释
逐行13:13:22.407445
13:13:22.407445 IP 192.168.246.128.54955 > 192.168.246.13.80: S 2910497703:2910497703(0) win 5840 <mss 1460,sackok,timestamp="" 518611="" 0,nop,wscale="" 6="">
IP:192.168.246.128,源端口为 54955,尝试连接 IP 192.168.246.13,端口 80 (http)
TCP 连接启动通过设置同步以字母 S 表示的标志
连接尝试的序列号是 2910497703
窗口大小为 5840,最大段大小为 1460
第二行位于13:13:22.407560
13:13:22.407560 IP 192.168.246.13.80 > 192.168.246.128.54955: S 3762608065:3762608065(0) ack 2910497704 win 64240 <mss 1460,nop,wscale="" 0,nop,nop,timestamp="" 0="" 0,nop,nop,sackok="">
IP 192.168.246.13 的源端口为 80,响应来自 192.168.246.128 源端口 407445 的连接尝试,并带有标志同步+确认用字母 S 和 ack 表示
序列号 3762608065 和上面一行的序列号加一得到 2910497704
窗口设置为 64240 ,最大段大小(mss)1460
第三行是三次握手的最后一个数据包
13:13:22.407963 IP 192.168.246.128.54955 > 192.168.246.13.80: . ack 1 win 92 <nop,nop,timestamp 518611="" 0="">
- 它具有与上面相同的 srcIP:port - dstIP:port 对,并且仅设置了 ACK 标志。
最后一行
13:13:22.408321 IP 192.168.246.128.54955 > 192.168.246.13.80: R 1:1(0) ack 1 win 92 <nop,nop,timestamp 518611="" 0="">
此行显示 192.168.246.128:54955 和 192.168.246.13:80 之间的连接已重置(RST 标志),ACK 标志表示到目前为止传输的数据已按预期被接受。有关此内容的更多信息,请参见这里