Is there some sort of tools to debug bittorrent? e.g. I wish to query tracker to get peer list. I wish to check if I able to connect to certain peer.
I have odd behavior in my home network. I wish to understand how it works and I can't find any tools to simulate torrent.
PS I already made a simple python app to check if I can receive UDP packets
import socket
port = 50000
s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
s.bind(("", port))
print "waiting on port:", port
while 1:
data, addr = s.recvfrom(1024)
print data
and I can send ncat $IP $PORT -u -v
But now when I know I can send packet to certain port and it is opened. I wish to check if I can talk with torrent app on that port.
One torrent client works and other don't I want to know what is wrong.
There is no "The Bittorrent Debugger", but you can use various tools to diagnose problems.
You can use nmap locally or web services providing a frontend to remote nmap instances to probe the reachability of ports.
You can use wireshark with the bittorrent dissector to debug the protocol itself, some understanding of the bittorrent protocol is required for that.
Some clients (e.g. vuze) provide very verbose logging, down to individual bittorrent messages which can help with diagnosing problems.
You can run a second client on a different port or on a virtual machine and have them talk to each other over the local network to exclude potential router/firewall issues.