Bug 528316

Summary: IPv6-only Bittorrent trackers fail w/o IPv6-enabled proxy
Product: [Fedora] Fedora Reporter: Jason Roysdon <jason.redhat.20030417>
Component: transmissionAssignee: Rahul Sundaram <sundaram>
Status: CLOSED UPSTREAM QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: low    
Version: 11CC: jspaleta, sanjay.ankur, smohan, sundaram
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
URL: http://www.sixxs.net/tools/tracker/catalog/
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2009-10-11 09:23:28 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1750657    

Description Jason Roysdon 2009-10-11 08:34:08 UTC
Description of problem:
When connecting to an IPv6-only Bittorrent tracker, Transmission reports that the "Tracker responded: No Response (0)".  Looking at Wireshark sniffing logs, the truth of the matter is that Transmission requests only an A (IPv4) record from DNS and never asks for an AAAA (IPv6) record.  

Version-Release number of selected component (if applicable):
transmission-1.72-1.fc11.i586

How reproducible:
Use transmission to handle any .torrent files from http://www.sixxs.net/tools/tracker/catalog/
  
Actual results:
Transmission issues A record lookup, receives no address and never tries an AAAA record and reports "Tracker responded: No Response (0)".

Expected results:
Transmission should ask for an AAAA record as well and then use the AAAA IPv6 record to connect to tracker to get peers list.

Additional info:
If I configure Transmission to use my IPv6-enable Squid proxy, Transmission will be able to send an IPv4 request to the proxy which will resolve the ipv6-only hostname to an AAAA record and relay the IPv6 request to the tracker and get the peers list.

Once Transmission connects to the tracker via an IPv6-enabled proxy, it works just fine from this point on talking to ipv6-only peers.  Transmission also works just fine with an IPv4 tracker with IPv6 peers (or a mix of IPv6 & IPv4 peers).

Unknown if using an IPv6 address for the tracker URL will work.  Editing the tracker to use http://[2001:838:1:1:210:dcff:fe20:7c7c]/announce produces no results, as the tracker must not be configured to answer to this to this IPv6 address instead of the hostname.

Comment 1 Jason Roysdon 2009-10-11 09:23:28 UTC
In talking with others at Freenode#ipv6, this is a known issue.  The tracker lookup has been hard-coded to ipv4, as using ipv6 was causing issues and needs to be re-written to handle either situation properly.