20

I have heard that Proxy Support in Trasmission has been removed as of version 2.12. Is it possible to use proxy by any other method?

Anandu M Das
  • 2,145
  • 11
  • 28
  • 40
  • 5
    It's a shame this was closed as it's certainly not a duplicate. The other thread only works for versions prior to 2.12 while this specifically is asking for a solution for later versions. – scohe001 Nov 04 '17 at 20:15
  • 1
    Possible duplicate of [Transmission tracker and/or torrent traffic through proxy](https://askubuntu.com/questions/63150/transmission-tracker-and-or-torrent-traffic-through-proxy) – Evan Carroll Nov 19 '18 at 23:12

3 Answers3

8

TL;DR: http_proxy environment variable works for at least 2.92. For versions 1.4.x and older see configuration options here or below.

Citation from transmission wiki page:

Transmission uses the libcurl library for http- and https-based tracker announces and scrapes. Transmission doesn't support proxies, but libcurl itself honors a handful of environment variables to customize its proxy behavior.

relevant variables start here here. And in CURLOPT_PROXY description there is this:

libcurl respects the proxy environment variables named http_proxy, ftp_proxy, sftp_proxy etc. If set, libcurl will use the specified proxy for that URL scheme. So for a "FTP://" URL, the ftp_proxy is considered. all_proxy is used if no protocol specific proxy was set.

I run transmission-daemon using systemd, so I just add line

Environment=http_proxy=http://proxy_url:proxy_port

to service configuration using

sudo systemctl edit transmission-daemon.service

and all worked.

I have transmission-daemon 2.92. Can't say for sure for older version, but according to this wiki page you should use this parameters for transmission 1.4.x or older:

proxy-authentication String
proxy-authentication-required: Boolean (default = 0)
proxy-port: Number (default = 80)
proxy-server: String
proxy-server-enabled: Boolean (default = 0)
proxy-type: Number (0 = HTTP, 1 = SOCKS4, 2 = SOCKS5, default = 0)
proxy-username: String
user841099
  • 81
  • 1
  • 4
  • 1
    I've added the line `Environment=http_proxy=socks4h://105.233.32.123:49556` to use SOCKS4 instead of http. There are some [free SOCKS4 websites](https://www.socks-proxy.net/) to get an IP. You can check your new torrent IP if you [duck-search any service to check your IP](https://duckduckgo.com/?q=check+torrent) – ivanxuu Sep 16 '19 at 06:27
1
vim /lib/systemd/system/transmission-daemon.service

then add proxy enviroment, like

...
[Service]
User=debian-transmission
Environment="HTTP_PROXY=http://127.0.0.1:7890" "HTTPS_PROXY=http://127.0.0.1:7890" "ALL_PROXY=socks5://127.0.0.1:7891"
Type=notify
...

It works on 2.94

grayxu
  • 11
  • 2
-5

Transmission uses the proxy configured using the Network Proxy tool located under the Preferences menu.

Reference Solution

karan
  • 335
  • 1
  • 9
  • 3
    this is not a solution as the feature was removed as of 2.12, and does not state how to accomplish what's asked (fix and I'll remove my downvote). – Tcll Nov 27 '17 at 22:13