gpt4 book ai didi

mysql - 如何使用 tcpdump 或任何其他开源工具捕获网络中的 BitTorrent 信息哈希 ID?

转载 作者:行者123 更新时间:2023-11-29 11:39:07 26 4
gpt4 key购买 nike

我正在开展一个项目,我们需要收集在我们的小型 ISP 网络中运行的 Bitorrent infohash id。使用端口镜像,我们可以将所有 WAN 流量传递到服务器并运行 tcpdump 工具或任何其他工具来查找 Bitorrent 客户端下载的 infohash id。例如

tcpflow -p -c -i eth1 tcp | grep -oE '(GET) .* HTTP/1.[01].*'

这段代码显示的结果是这样的

GET /announce?info_hash=N%a1%94%17%2c%11%aa%90%9c%0a%1a0%9d%b2%cfy%08A%03%16&peer_id=-BT7950-%f1%a2%d8%8fO%d7%f9%bc%f1%28%15%26&port=19211&uploaded=55918592&downloaded=0&left=0&corrupt=0&key=21594C0B&numwant=200&compact=1&no_peer_id=1 HTTP/1.1

现在我们只需要捕获 infohash 并将其存储到日志或 mysql 数据库

你能告诉我哪个工具可以做这样的事情吗

最佳答案

根据您想要的严格程度,您必须解码以下协议(protocol)层:

  1. TCP,组装流的数据包。你已经用 tcpflow 做到了这一点。 tshark——wireshark 的 CLI——也可以做到这一点。
  2. HTTP,提取 GET header 的值。一个简单的正则表达式就可以完成这里的工作。
  3. URI,提取查询字符串
  4. application/x-www-form-urlencoded、info_hash 键值对提取和百分比编码处理

对于最后两个步骤,我将在您选择的编程语言中寻找工具或库来处理它们。

关于mysql - 如何使用 tcpdump 或任何其他开源工具捕获网络中的 BitTorrent 信息哈希 ID?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36098849/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com