新版QQ不仅仅通过UDP方式登录服务器,还能够以TCP方式登录。本文利用SNIFFER PRO工具监视QQ登录全过程,为了让大家更好的理解QQ登录过程,抓包过程结合防火墙技术,每出现一种登录方式先抓取报文,然后用防火墙关闭该通道,这样QQ就会自动选择其它方式试图登录服务器,反复如此就可以弄清楚QQ所有登录方式和QQ服务器的地址及端口。
1 登录速度最快的UDP方式
看看抓到的报文图QQ1
图QQ1
报文中61.53.187.229是本地IP地址,219.157.70.130是ISP的DNS服务器IP地址。从报文中可以看到QQ 首先发出7个DNS解析请求,并且顺利获得了相应IP:
sz.tencent.com 61.144.238.145 sz2.tencent.com 61.144.238.146 sz3.tencent.com 202.104.129.251 sz4.tencent.com 202.104.129.254 sz5.tencent.com 61.141.194.203 sz6.tencent.com 202.104.129.252 sz7.tencent.com 202.104.129.253
以上IP也可以通过PING 域名的方法得到。接着,QQ向这7个服务器中的3个发送UDP数据包,它们是发送到
202.104.129.254 的 UDP 数据包 202.104.129.252 的 UDP 数据包 61.144.238.146 的 UDP 数据包
如果服务器在5秒中没有回应,就发如下UDP数据包
202.104.129.251 的 UDP 数据包, 61.141.194.203 的 UDP 数据包, 61.144.238.145 的 UDP 数据包,
再过5秒后发送到 202.104.129.253 的 UDP 数据包
在此过程中如果服务器有回复,QQ选择回复速度最快的一个作为连接服务器,图QQ1中显示分别得到了SZ4/SZ7/SZ6.tencent.com的回应,QQ选择SZ4.tencent.com作为登录服务器。。通过分析可以知道,如果防火墙不允许QQ走UDP方式,那么QQ至少需要10秒才能登录服务器。图QQ1报文清晰的显示本地端口是4000,目的端口是8000。为了以后的实验,这里设置防火墙拦截发往以上7个IP地址的8000端口的UDP数据包。拦截后再也没有发现新的UDP服务器地址。
Copyright @ 2007-2012 敏韬网(敏而好学,文韬武略--MinTao.Net)(学习笔记) Inc All Rights Reserved. 闵涛 E_mail:admin@mintao.net(欢迎提供学习资源)
鄂公网安备 42011102001154号
站长:MinTao ICP备案号:鄂ICP备11006601号-18