Jump to content

Private tracker behind NAT provides wrong ip:port in GET response


AshCampbell

Recommended Posts

Tracker behind NAT hosting a private torrent does not report its ip:port correctly in GET response.

I use utorrent 3.3 (build 29625)

My router employs NAT to translate traffic from my computer with some private ip (192.168.*.*). The router has a public ip address and forwards "Port used for incoming connection" 37000 and "Alternative listening port" 6969 (udp and tcp) to my computer. Router also has just in case UPNP option enabled.

I created a private torrent with the following trackers specified:

http://***.dyndns.com:6969/announce

http://localhost:6969/announce

***.dyndns.com - is my dynamic DNS name, that resolves to my public ip. When ip is changed by provider, router makes sure the name points to the new address.

The torrent file was transferred to a client that sits behind NAT. There is no way of forwarding any of her ports. The only way to make a transfer is to connect to 37000 port.

With help of Wireshark I noticed that the tracker gave the client loopback ip=127.0.0.17 and correct port=37000 in GET response:

peersld2:ip9:127.0.0.17:peer id20:...:4:porti37000ee

"IP/Hosname to report to tracker" option in Preferences->BitTorrent perhaps should have helped the tracker to respond with a valid ip. But when I set my dns name ***.dyndns.com or resolved public ip I get correct ip but port=0:

peersld2:ip13:98.72.*.*:peer id20:...4:porti0ee

I was only when the client set appropriate ip:port peer by hand in Peers tab that the transfer could begin.

By the way, Vuze internal tracker reports the correct ip and port in "peers" (binary model) key tracker response dictionary located GET response.

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...