Archived

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

conquerist

IPv6: dual stack "two clouds" tracker only return IPv6 peers, uTorrent never discovers IPv4 peers

Recommended Posts

Problem:

When a tracker's domain has a AAAA record, uTorrent only announces via IPv6. A tracker running Opentracker will respond only with IPv6 peers and the IPv4 peers on the torrent aren't discovered by uTorrent.

Steps to recreate (uT 3.4.1 30888):

To test it, I looked at the tracker replies from the only public dual stack tracker that I am aware of, demonii. The response bencode dict only had a peers6 entry and no peers entry, even though there were plenty of IPv4 peers. No connection to the tracker domain's A record is attempted.

Workaround:

To get all peers from the tracker in question, I have to manually look up the IPv4 address of the tracker and add it to the torrent as an additional tracker.

 

Background:

Opentracker, the tracker software used by openbittorrent, publicbt, istole.it, demonii, and others, tracks separate IPv4 and IPv6 swarms. Responses to announces received over IPv4 only contain IPv4 peers and responses to announces received over IPv6 only contain IPv6 peers. This "two clouds" approach is intentional, see http://opentracker.blog.h3q.com/2007/12/28/the-ipv6-situation/.

 

This "two clouds" mindset is also reflected in the UDP IPv6 tracker protocol proposed (see previous link) by the Opentracker developers: The UDP IPv6 response can only contain IPv6 peers, it's not possible to reply with IPv6 and IPv4 peers in the same response. However, this protocol doesn't have a BEP, isn't implemented in uTorrent, and UDP trackers with a AAAA record don't work at all in uTorrent, see http://forum.utorrent.com/topic/78975-udp-trackers-and-ipv6/.

 

For a dual stack tracker to work in uTorrent, it either needs to return IPv6 and IPv4 trackers in a single response, or needs two separate URLs for IPv4 and IPv6.

Share this post


Link to post
Share on other sites

I would like to bump this.

Lots has changes since 2012 when this bug first came round on the forums, IPv6 is vastly more available for residential ISPs now a days, and its only grwoing.

We run http://demonii.com/ an OpenTracker project which is a dual stacked tracker currently using OpenTracker (erdgeist)

I realize no real spec has ever been made for IPv6 over udp and that's most probably the reason the uTorrent devs have not implemented this in their client to date. However I wish to ask for this be looked at again, like I said before... IPv6 is starting to be a major player in today's internet, might be worth while looking at adding (a hack) to support IPv6 over udp or better creating a spec that will hopfully be compantible with the currently implementations out there.

 

Thanks for the consideration.

Share this post


Link to post
Share on other sites