我的一台电脑在45000端口上植入了一个torrent文件。我试图用python(或者perl)编写一个小客户机,它可以帮助我确定这个客户机支持的消息类型,我可能需要与客户机进行握手。在Azureus,这是通过调用peer.getSupportedMessages(). 是否可以使用python或perl中的某个库来实现这一点?在
返回消息的示例如下:
BT_KEEP_ALIVE
BT_PIECE
BT_REQUEST
BT_UNCHOKE
BT_UNINTERESTED
BT_SUGGEST_PIECE
BT_HAVE_ALL
BT_HAVE_NONE
BT_REJECT_REQUEST
BT_ALLOWED_FAST
BT_LT_EXT_MESSAGE
BT_DHT_PORT
lt_handshake
ut_pex
据我所知,支持的消息列表是自定义握手消息的一部分,只有Azureus(可能还有一些Azureus兼容的工具)支持,而不是官方的BitTorrent系统的一部分。但是,您可能可以创建一个bencoded AZ握手,将其发送给您的种子播放机,解码响应,并查看支持的消息是什么。在
在AZHandshake.java包含消息应该是什么样子的详细信息。在
使用CPAN的Bencode模块,可以执行以下操作:
当然,诀窍在于建立一个适当的握手,这将从播种者那里得到一个有效的回应。不幸的是,我不知道有什么东西可以不需要一点编程工作就可以做到这一点。在
相关问题 更多 >
编程相关推荐