0x06服务号(L)+组名称(S)增加组
0x07服务号(L)+组编号(T)+组名称(S)修改组名称
0x08服务号(L)+组编号(T)删除组
0x09服务号(L)+移动人数(T)+{朋友服务号(L)+目的组号(T)}移动组成员
0x0a服务号(L)+起始编号(L)+回传个数(T)+查找标志(T)看谁在线上查找标志1=向小找2=向大找
0x0b服务号(L)+SQL语句(S)自定义查找
0x0c服务号(L)+朋友服务号(L)增加好友
0x0d服务号(L)+朋友服务号(L)+加入原因(S)请求加入好友
0x0e服务号(L)+朋友服务号(L)删除好友
0x10服务号(L)+显示模式(T)更改显示方式1上线2隐藏3免打扰4离线
0x11服务号(L)+监视服务号(L)监视某人谈话
0x12服务号(L)+昵称(S)+肖像(M)+用户密码(S)+性别(T)+年龄(T)+真实姓名(S)+国家/地区(T)+省(T)+市(S)+
地址(S)+邮编(S)+学历(T)+毕业院校(S)+职业(T)+电话(S)+寻呼(S)+电邮(S)+爱好(S)+说明(S)+身份验证(T)更改用户基本信息
0x13服务号(L)+朋友服务号(L)+文件名(S)+文件长度(L)请求发送文件
0x14服务号(L)+朋友服务号(L)+允许/拒绝是否允许发送文件
0x15服务号(L)+朋友服务号(L)+文件内容(B)发送文件
0x16服务号(L)连接测试报文
0x17服务号(L)+朋友服务号(L)+同意标志(T)应答对方请求加入好友0=拒绝1=同意
OICQ服务器到OICQ的通讯协议
报文类型报文内容报文说明
0x01成功/失败(T)+服务号(L)新用户注册结果返回
0x02成功/失败(T)+组个数(T)+{组名称(S)+组编号(T)+朋友个数(T)+{朋友服务号(L)+肖像编号(T)+朋友状态(T)+朋友昵称(S)}老用户注册结果返回朋友状态1=上线=2隐藏=3免打扰4离线
0x03标志(T)+朋友服务号(L)+信息(S)+信息类型(T)标志1=系统2=用户发送消息,服务号=0是系统消息1=用户某某已经把你加为好友2=用户某某请求你通过身份验证3=用户某某同意了你的验证要求4=用户某某拒绝了你的验证请求
0x04成功/失败(T)+朋友服务号(L)+昵称(S)+肖像(M)+性别(T)+年龄(T)+真实姓名(S)+国家/地区(T)+省(T)+市(S)+地址(S)+邮编(S)+学历(T)+毕业院校(S)+职业(T)+电话(S)+寻呼(S)+电邮(S)+爱好(S)+说明(S)朋友信息回送
0x05成功/失败(T)+组编号(T)+组名称(S)增加组结果回送1/0
0x06成功/失败(T)+组编号(T)+组名称(S)修改组名称结果回送1/0
0x07成功/失败(T)+组编号(T)删除组结果回送1/0
0x08成功/失败(T)移动组成员结果回送1/0
0x09成功/失败(T)+在线个数(T)+{服务号(L)+昵称(S)+肖像(M)+省(T)+市(S)}查找在线人员结果回送
0x0a成功/失败(T)+找到个数(T)+{服务号(L)+昵称(S)+肖像(M)+省(T)+市(S)}自定义查找结果回送(最多50)
0x0b标志(T)+朋友服务号(L)增加好友结果回送标志0=数据库失败=1成功=2需要身份验证=3对方不允许加入=4需要身份验证且不在线
0x0c朋友服务号(L)+昵称(S)+肖像号(M)+朋友状态(T)给在线用户增加好友
0x0e成功/失败(T)+朋友服务号(L)删除好友结果回送
0x10服务号(L)+显示模式(T)显示模式回送=1上线=2隐藏=3免打扰4离线
0x11成功/失败更改用户基本信息结果回送
0x12朋友服务号(L)+文件名(S)+文件长度(L)请求发送文件
0x13朋友服务号(L)+允许/拒绝是否允许发送文件1允许0拒绝
0x14朋友服务号(L)+文件内容(B)发送文件
0x15朋友服务号(L)+当前状态(T)朋友状态回送(系统发送)=1上线=2隐藏=3免打扰4离线
0x16服务号(L)连接测试
3、QQ服务器的IP地址及QQ的端口号
QQ端口4000以上,所以封住4000以上端口,qq的通信就无法进行。至于服务器(探测QQ服务器IP地址教你如何禁止QQ聊天),QQ服务器分为三类:
UDP 8000端口类13个
速度最快,服务器最多。 QQ上线会向这11个服务器发送UDP数据包,选择回复速度最快的一个作为连接服务器。
这6个服务器名字均以SZ开头,域后缀是tencent.com,域名与IP对应为
sz sz2 : 61.144.238.145 61.144.238.146 61.144.238.156
sz3 sz4 sz6 sz7 : 202.104.129.251 202.104.129.254 202.104.129.252 202.104.129.253
sz5 : 61.141.194.203 202.96.170.166 218.18.95.221 219.133.45.15 61.141.194.224 202.96.170.164
TCP HTTP连接服务器4个
使用HTTP 80 和443端口连接这4个服务器名字均以tcpconn开头,域后缀是tencent.com,域名与IP对应为
tcpconn tcpconn3 218.17.209.23
tcpconn2 tcpconn4 218.18.95.153
61.141.194.227 218.18.95.171
会员VIP登陆服务器
使用HTTP 443安全连接 服务器IP 218.17.209.42
4、手机QQ使用的是OICQ协议吗?
在安卓平台上使用PacketCapture、bitShark两款抓包工具分析,bitShark需要系统root才可正常使用。网上查阅了关于android抓包资料有两种方式:
-
利用Fiddler配置代理的方式抓包. CSDN博客 Charles抓取安卓App的请求
-
对于不走代理的App使用tcpdump抓取手机网络请求数据. 知乎
-
Packet Capture抓包不需 root,有MITM Proxy,可以查看 https 流量不走系统代理,但只能抓取http相关的包. 知乎
本文中使用bitShark是基于libpcap的抓包工具。libpcap是一个网络数据包捕获函数库,功能非常强大!Linux下著名的tcpdump就是以它为基础的,大家可以利用它来实现一个自己的网络嗅探器(sniffer)。附上相关的3篇文章:libpcap使用 Linux tcpdump命令详解 tcpdump官网
第一步,先后台运行PacketCapture工具,登录手机QQ就能分析得到腾讯服务器IP地址:182.254.116.117
第二步,运行bitShark选择接口,输入过滤表达式如下图,点击右上角start开始抓取网络包。
第三步,上图是抓包过程,暂停并保存就可查看到抓取到的包,点击指定tcp包可查看到Packet细节信息,最后得出结论安卓手机QQ移动端基于TCP协议通信。
5、QQ 为什么以 UDP 协议为主,以 TCP 协议为辅? 参考知乎
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数初中级Android工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则近万的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年Android移动开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Android开发知识点,真正体系化!
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!
如果你觉得这些内容对你有帮助,可以扫码获取!!(备注:Android)
最后
如果你看到了这里,觉得文章写得不错就给个赞呗?如果你觉得那里值得改进的,请给我留言。一定会认真查询,修正不足。谢谢。
欢迎大家一起交流讨论啊~
《Android学习笔记总结+移动架构视频+大厂面试真题+项目实战源码》,点击传送门即可获取!
章写得不错就给个赞呗?如果你觉得那里值得改进的,请给我留言。一定会认真查询,修正不足。谢谢。
[外链图片转存中…(img-hViXHcHR-1712299890849)]
欢迎大家一起交流讨论啊~