搜狐视频协议分析之Tracker交互协议分析 [20161113]

续上篇(http://blog.csdn.net/cancanfairy/article/details/53100888),本篇分析搜狐影音的Tracker交互协议,即如何从Tracker处获取对应的对等节点。


分析客户端:搜狐影音 5.0


1. 获取Tracker的地址

   搜狐影音首先向p2p.vod.tv.sohu.com发送查询请求,服务器返回Tracker的地址信息。报文如下:


    请求报文:

    00000000  08 00 2a 3c f8 5e 05 01                          ..*<.^.. 


    响应报文:
    00000000  5c 00 2a 3c f8 5e 05 01  7b 22 69 73 70 22 3a 31 \.*<.^.. {"isp":1
    00000010  2c 22 70 72 6f 76 22 3a  34 30 2c 22 72 74 6d 66 ,"prov": 40,"rtmf
    00000020  70 22 3a 22 72 74 6d 66  70 3a 2f 2f 32 32 30 2e p":"rtmf p://220.
    00000030  31 38 31 2e 32 2e 33 38  3a 38 30 22 2c 22 74 72 181.2.38 :80","tr
    00000040  61 63 6b 65 72 22 3a 22  32 32 30 2e 31 38 31 2e acker":" 220.181.
    00000050  39 30 2e 32 30 33 3a 38  30 22 7d 0a             90.203:8 0"}.


    从响应报文可以看到,Tracker包含两种,一种是rtmfp的,一种是直接写Tracker信息的。rtmfp是Adobe Flash的,应该是用于搜狐视频网页版Flash插件做P2P用的,这种协议加密,无法分析;第二种,应该就是搜狐自己的Tracker,用于Windows客户端的。


2. 向Tracker发送查询请求

   继续抓包,看看搜狐影音客户端与Tracker的交互。


    请求报文:

    0000   36 00 2a 3c f8 5e 07 80 21 00 00 00 44 ad cf c7
    0010   96 e5 b4 07 80 82 46 b1 d4 7c 54 8d 37 1a 47 d4
    0020   73 ab 8a 05 e9 ac c0 a8 c7 f2 e9 ac 01 00 dc b5
    0030   5a c8 5c 97 8b 9c


    上面报文就是向Tracker发送的查询,0x36 00 为报文长度,0x44 ad cf c7 ... 37 1a 47 d4为请求内容的唯一标识,应该和文件内容相关,后面则是客户端地址信息。


   响应报文:

    0000   30 00 2a 3c f8 5e 07 80 21 00 00 00 44 ad cf c7
    0010   96 e5 b4 07 80 82 46 b1 d4 7c 54 8d 37 1a 47 d4
    0020   db 8e 99 50 f5 76 c0 a8 00 66 f5 76 7a 8e 77 1c

    响应报文中,0x44 ad cf c7 ... 37 1a 47 d4和查询报文匹配,说明确实是文件的唯一标识。紧跟着 0xdb 8e 99 50为Peer节点的IP地址,即219.142.153.80,端口为0xf5 76,即62838;后面的地址应该是该Peer的私网地址和端口。后面还有4个字节,应该是校验,或者某些含义的特征串。


欢迎讨论, email:  cancanfairy AT sina.com

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值