- 论坛徽章:
- 0
|
稍微分析一下:
#######################################
[root@BenjmS tmp]# tcpdump -r ok.log
reading from file ok.log, link-type LINUX_SLL (Linux cooked)
18:49:35.377005 IP 22.122.35.121.broad.sz.gd.dynamic.163data.com.cn.43325 > 202.
102.2.108.http: S 1959141275:1959141275(0) win 5808 <mss 1452,sackOK,timestamp 1
96357315 0,nop,wscale 2>
#三次握手的第一阶段,SYN包,seq=1959141275
18:49:35.458852 IP 202.102.2.108.http > 22.122.35.121.broad.sz.gd.dynamic.163dat
a.com.cn.43325: S 1959141275:1959141275(0) ack 945088971 win 65535 <mss 1460,nop
,nop,sackOK>
#三次握手的第二阶段,SYN ACK,seq=1959141275 ack=945088971
#这里就已经有问题了,应该是syn=一个新的序号,(这里变成第一阶段的SYN包的seq+1),ack=第一阶段的SYN包的seq+1,1959141276,收到莫名其妙的syn ack,导致发起端,即http客户端向http服务器端发起RST,也就是下一个操作了
18:49:35.458996 IP 22.122.35.121.broad.sz.gd.dynamic.163data.com.cn.43325 > 202.
102.2.108.http: R 945088971:945088971(0) win 0
#收到的SYN ACK错误,RST
18:49:35.460824 IP 202.102.2.108.http > 22.122.35.121.broad.sz.gd.dynamic.163dat
a.com.cn.43325: S 2517119328:2517119328(0) ack 1959141276 win 5792 <mss 1460,sac
kOK,timestamp 117405803 196357315,nop,wscale 0>
#再发一次SYN ACK,seq=2517119328 ack=1959141276
#这里的ack是第一阶段SYN包的seq+1,正确,进入下一步
18:49:35.460888 IP 22.122.35.121.broad.sz.gd.dynamic.163data.com.cn.43325 > 202.
102.2.108.http: . ack 1 win 1452 <nop,nop,timestamp 196357336 117405803>
#三次握手的第三阶段,ack包,ack=1
18:49:35.461118 IP 22.122.35.121.broad.sz.gd.dynamic.163data.com.cn.43325 > 202.
102.2.108.http: P 1:79(78) ack 1 win 1452 <nop,nop,timestamp 196357336 117405803
>
#push数据了
18:49:35.517431 IP 202.102.2.108.http > 22.122.35.121.broad.sz.gd.dynamic.163dat
a.com.cn.43325: . ack 79 win 5792 <nop,nop,timestamp 117405810 196357336>
18:49:35.541149 IP 202.102.2.108.http > 22.122.35.121.broad.sz.gd.dynamic.163dat
a.com.cn.43325: P 1:207(206) ack 79 win 5792 <nop,nop,timestamp 117405811 196357
336>
18:49:35.541153 IP 202.102.2.108.http > 22.122.35.121.broad.sz.gd.dynamic.163dat
a.com.cn.43325: F 207:207(0) ack 79 win 5792 <nop,nop,timestamp 117405811 196357
336>
18:49:35.541240 IP 22.122.35.121.broad.sz.gd.dynamic.163data.com.cn.43325 > 202.
102.2.108.http: . ack 207 win 1720 <nop,nop,timestamp 196357356 117405811>
18:49:35.578556 IP 22.122.35.121.broad.sz.gd.dynamic.163data.com.cn.43325 > 202.
102.2.108.http: . ack 208 win 1720 <nop,nop,timestamp 196357366 117405811>
18:49:35.678570 IP 22.122.35.121.broad.sz.gd.dynamic.163data.com.cn.43325 > 202.
102.2.108.http: F 79:79(0) ack 208 win 1720 <nop,nop,timestamp 196357391 1174058
11>
18:49:35.678715 IP 22.122.35.121.broad.sz.gd.dynamic.163data.com.cn.43326 > 202.
102.2.108.http: S 1960131503:1960131503(0) win 5808 <mss 1452,sackOK,timestamp 1
96357391 0,nop,wscale 2>
18:49:35.749345 IP 202.102.2.108.http > 22.122.35.121.broad.sz.gd.dynamic.163dat
a.com.cn.43326: S 1960131503:1960131503(0) ack 945285579 win 65535 <mss 1460,nop
,nop,sackOK>
18:49:35.749464 IP 22.122.35.121.broad.sz.gd.dynamic.163data.com.cn.43326 > 202.
102.2.108.http: R 945285579:945285579(0) win 0
18:49:35.751054 IP 202.102.2.108.http > 22.122.35.121.broad.sz.gd.dynamic.163dat
a.com.cn.43326: S 2514311233:2514311233(0) ack 1960131504 win 5792 <mss 1460,sac
kOK,timestamp 117405831 196357391,nop,wscale 0>
18:49:35.751110 IP 22.122.35.121.broad.sz.gd.dynamic.163data.com.cn.43326 > 202.
102.2.108.http: . ack 1 win 1452 <nop,nop,timestamp 196357409 117405831>
18:49:35.751058 IP 202.102.2.108.http > 22.122.35.121.broad.sz.gd.dynamic.163dat
a.com.cn.43325: . ack 80 win 5792 <nop,nop,timestamp 117405830 196357391>
18:49:35.751336 IP 22.122.35.121.broad.sz.gd.dynamic.163data.com.cn.43326 > 202. 102.2.108.http: P 1:88(87) ack 1 win 1452 <nop,nop,timestamp 196357409 117405831 >
18:49:35.806699 IP 202.102.2.108.http > 22.122.35.121.broad.sz.gd.dynamic.163dat a.com.cn.43326: . ack 88 win 5792 <nop,nop,timestamp 117405840 196357409>
18:49:35.807238 IP 202.102.2.108.http > 22.122.35.121.broad.sz.gd.dynamic.163dat a.com.cn.43326: P 1:233(232) ack 88 win 5792 <nop,nop,timestamp 117405840 196357 409>
18:49:35.807283 IP 22.122.35.121.broad.sz.gd.dynamic.163data.com.cn.43326 > 202. 102.2.108.http: . ack 233 win 1720 <nop,nop,timestamp 196357423 117405840>
18:49:35.809688 IP 202.102.2.108.http > 22.122.35.121.broad.sz.gd.dynamic.163dat a.com.cn.43326: P 233:596(363) ack 88 win 5792 <nop,nop,timestamp 117405840 1963 57409>
18:49:35.809697 IP 202.102.2.108.http > 22.122.35.121.broad.sz.gd.dynamic.163dat a.com.cn.43326: F 596:596(0) ack 88 win 5792 <nop,nop,timestamp 117405840 196357 409>
18:49:35.809813 IP 22.122.35.121.broad.sz.gd.dynamic.163data.com.cn.43326 > 202. 102.2.108.http: . ack 596 win 1988 <nop,nop,timestamp 196357423 117405840>
18:49:35.811166 IP 22.122.35.121.broad.sz.gd.dynamic.163data.com.cn.43326 > 202. 102.2.108.http: F 88:88(0) ack 597 win 1988 <nop,nop,timestamp 196357424 1174058 40>
18:49:35.898318 IP 202.102.2.108.http > 22.122.35.121.broad.sz.gd.dynamic.163dat a.com.cn.43326: . ack 89 win 5792 <nop,nop,timestamp 117405849 196357424>
[root@BenjmS tmp]# tcpdump -r nook.log
reading from file nook.log, link-type LINUX_SLL (Linux cooked)
18:48:42.222307 IP 22.122.35.121.broad.sz.gd.dynamic.163data.com.cn.60975 > 202.102.2.108.http: S 1876408499:1876408499(0) win 5808 <mss 1452,sackOK,timestamp 196344027 0,nop,wscale 2>
#三次握手的第一阶段,SYN包,seq=1876408499
18:48:42.263284 IP 202.102.2.108.http > 22.122.35.121.broad.sz.gd.dynamic.163data.com.cn.60975: S 1876408499:1876408499(0) ack 2135353803 win 65535 <mss 1460,nop,nop,sackOK>
#三次握手的第二阶段,SYN ACK,seq=187640849 ack=945088971
#这里就已经有问题了,应该是syn=一个新的序号,(这里变成第一阶段的SYN包的seq+1),ack=第一阶段的SYN包的seq+1(187640849),收到莫名其妙的syn ack,导致发起端,即http客户端向http服务器端发起RST,也就是下一个操作了
18:48:42.263336 IP 22.122.35.121.broad.sz.gd.dynamic.163data.com.cn.60975 > 202.102.2.108.http: R 2135353803:2135353803(0) win 0
#收到的SYN ACK错误,RST
18:48:42.263290 IP 202.102.2.108.http > 22.122.35.121.broad.sz.gd.dynamic.163data.com.cn.60975: S 2467461584:2467461584(0) ack 1876408500 win 5792 <mss 1460,sackOK,timestamp 117400485 196344027,nop,wscale 0>
#再发一次SYN ACK,seq=2467461584 ack=1876408500
#seq=一个新的序号(2467461584),ack=1876408500(这个包的序号是对的,问什么客户端要RST?)
18:48:42.263367 IP 22.122.35.121.broad.sz.gd.dynamic.163data.com.cn.60975 > 202.102.2.108.http: R 1876408500:1876408500(0) win 0
#客户端认为不对,RST
18:48:45.219451 IP 22.122.35.121.broad.sz.gd.dynamic.163data.com.cn.60975 > 202.102.2.108.http: S 1876408499:1876408499(0) win 5808 <mss 1452,sackOK,timestamp 196344777 0,nop,wscale 2>
#重新进行三次握手,重复上面过程
18:48:45.261054 IP 202.102.2.108.http > 22.122.35.121.broad.sz.gd.dynamic.163data.com.cn.60975: S 1876408499:1876408499(0) ack 2135353803 win 65535 <mss 1460,nop,nop,sackOK>
18:48:45.261143 IP 22.122.35.121.broad.sz.gd.dynamic.163data.com.cn.60975 > 202.102.2.108.http: R 2135353803:2135353803(0) win 0
18:48:45.262084 IP 202.102.2.108.http > 22.122.35.121.broad.sz.gd.dynamic.163data.com.cn.60975: S 2470459125:2470459125(0) ack 1876408500 win 5792 <mss 1460,sackOK,timestamp 117400785 196344777,nop,wscale 0>
18:48:45.262111 IP 22.122.35.121.broad.sz.gd.dynamic.163data.com.cn.60975 > 202.102.2.108.http: R 1876408500:1876408500(0) win 0
18:48:51.219825 IP 22.122.35.121.broad.sz.gd.dynamic.163data.com.cn.60975 > 202.102.2.108.http: S 1876408499:1876408499(0) win 5808 <mss 1452,sackOK,timestamp 196346277 0,nop,wscale 2>
18:48:51.261060 IP 202.102.2.108.http > 22.122.35.121.broad.sz.gd.dynamic.163data.com.cn.60975: S 1876408499:1876408499(0) ack 2135353803 win 65535 <mss 1460,nop,nop,sackOK>
18:48:51.261133 IP 22.122.35.121.broad.sz.gd.dynamic.163data.com.cn.60975 > 202.102.2.108.http: R 2135353803:2135353803(0) win 0
18:48:51.261066 IP 202.102.2.108.http > 22.122.35.121.broad.sz.gd.dynamic.163data.com.cn.60975: S 2476459453:2476459453(0) ack 1876408500 win 5792 <mss 1460,sackOK,timestamp 117401385 196346277,nop,wscale 0>
18:48:51.261172 IP 22.122.35.121.broad.sz.gd.dynamic.163data.com.cn.60975 > 202.102.2.108.http: R 1876408500:1876408500(0) win 0 |
|