使用快捷键 “开始键+R”,或者打开开始,搜索“运行”,运行cmd。服务器
输入 tasklist 命令,获得当前进程的名字,PID,会话,内存使用状况。网络
例如当前两个QQ的PID是4616,4618。测试
给QQ好友随便发送一个截图,能够创建一个直接到对方电脑的Socket链接(由于QQ发送消息时候文字利用服务器转发,图片视频直接创建协议链接)spa
输入命令netstat,netstat有不少用法,这里用两种,netstat -n 和 netstat -o视频
当输入netstat -n , 不须要tasklist的结果,并且能够迅速获得网络会话列表。进程
不过这样的弊端在于不必定能够获得QQ的网络连接且准确性没法肯定。图片
有的作法是在没有发送截图的时候使用一次 netstat -n,发送后再使用一次 netstat -n,对比两次的不一样结果,多余的就是对方的IP信息。不过这样作不少时候不是很准确由于网络链接不少并且有延迟问题。我观察一个若是用 netstat -n 比较好的一个办法是看对方地址,即“外部地址”的端口,通常是50000以上的端口。ip
最准确无误的办法是用netstat -o ,配合以前获得tasklist里的进程PID。能够看到进程PID为4616也就是以前得出的qq.exe。不过这个稍微有点慢。内存
第一次对方是 123.138.238.40:https,这是由于发送的是文字,因此经过服务器中转,端口也是https 443 (http 是端口 80)。因此这不是对方的ip而是服务器的ip。cmd
第二次没有4616的信息是由于延迟。
第三次发送了截图从4616看出就获得了对方的ip,119.4.45.61:55647,接收端口通常都是在50000之后。
总结:QQ的端口好像和之前不同了,之前是固定的4000什么的,如今变成动态的了,并且协议也不是UDP(另一直都不能查手机的地址,由于是经过服务器中转了的,查出来的IP是深圳总部的中转服务器IP),很直观的是凡是外部地址端口是http(80)或https(443)的都是发送到服务器而不是我的电脑的,反正之前的不少查IP的软件都无效了,有的病毒广告什么的也一堆,仍是本身查的比较好。
不过也有可能发送截图什么的仍是要经过服务器那就无法查出对方IP了。
同理:查询微博、人人、YY等好友信息原理也同样,就看这些客户端在发送消息时是经过服务器中转仍是直接与对方创建连接了,有兴趣的能够测试一下。(至少视频语音在线传文件应该是直接创建链接而不是经过中转服务器)