aria2 proxy settings come down to one flag, --all-proxy, and for HTTP downloads that flag is excellent. For torrents it is mostly decoration. The maintainer put it in one line: “aria2 can connect to tcp tracker via HTTP proxy. There is no proxy support for UDP traffic.” Peers go direct, and the source shows it. So this is two guides in one: putting aria2’s HTTP downloads behind a proxy, which works great, and what that does for a torrent, which is not much.
Checked against the aria2c manual for 1.37.0, the latest release (15 November 2023), and the project’s issue tracker in October 2026.
The proxy flags
--all-proxy=PROXY: “Use a proxy server for all protocols”.--http-proxy,--https-proxy,--ftp-proxy: one protocol at a time.--all-proxy-userand--all-proxy-passwd: the credentials, if you would rather not put them in the URL.--proxy-method=get|tunnel: how aria2 talks to the proxy.
The proxy format is [http://][USER:PASSWORD@]HOST[:PORT]. Note what is missing: SOCKS. The manual never mentions it, and the “Support Socks proxies” request has been open since 2013. aria2 is an HTTP-proxy tool, full stop.
aria2c --all-proxy="http://IP:PORT" \
--all-proxy-user="USER" --all-proxy-passwd="PASS" \
https://mirror.example.org/distro.isoUse the IP, port and credentials from your dashboard. On a shared box, flags show up in the process list for other users; if that matters, allowlist your server’s IP on the order instead and drop the two credential flags.
What --all-proxy does for a torrent
| Traffic | Through the proxy? | Source |
|---|---|---|
| HTTP trackers | Yes | Maintainer, issue #470 |
| Peer connections | No, direct | Source: PeerInitiateConnectionCommand.cc |
| UDP trackers | No, direct | Maintainer, issue #470 |
| DHT | No, direct | Maintainer, issue #470 |
The DHT row has a twist. The manual says --enable-dht “also enables UDP tracker support”, so DHT and UDP trackers travel together, and both go straight out of your own connection. If the point of the proxy was the tracker, switch both off with --enable-dht=false and use torrents with http:// or https:// trackers.
The fine print
- Every peer sees your real IP. That is aria2’s design, not your config.
- UDP never touches the proxy. An HTTP proxy cannot carry it anyway, and our own SOCKS5, which aria2 cannot use, should be treated as TCP only.
- The meter is per GB on residential and past a shared IP’s allowance. In clients that proxy peers, a seeded torrent pays both ways. In aria2, only HTTP trackers and HTTP downloads count; the metering explainer has the rule.
- No encryption from the proxy. HTTPS downloads stay encrypted end to end through it; the proxy hop itself is plain.
- Not a privacy tool for torrents. With peers direct, there is no cover at all. For copyright-type worries, qBittorrent’s wiki recommends a VPN, and so do we. See proxy vs VPN.
- Lawful content only. Using our proxies to share files you have no right to share is not allowed. The acceptable use policy has the line.
Where aria2 and a proxy shine: the HTTP mirror
aria2 is one CLI for HTTP, FTP, SFTP, BitTorrent and Metalink. That makes it perfect for the cheapest legal download there is: the project’s own HTTP mirror, through the proxy, metered once. A 3 GB ISO from a mirror is about 3 GB on the meter plus headers, and nothing to seed. On residential, the smallest order covering it is 3 GB for $15.60. The same ISO through a client that proxies peers, seeded to 1.0, is twice the traffic, and the order for that is $27.60.
Reading the meter for aria2 is pleasantly boring:
- Note the size aria2 reports when the download completes.
- Check the usage view in your dashboard for the same few minutes, or export it as CSV.
- They should match within a few percent of headers and TLS. If ours is clearly higher, the honesty page says what we do about it, and the bandwidth measuring guide shows how to count bytes yourself.
Seeding with aria2 costs us nothing
Since peers go direct, every piece aria2 uploads leaves from your own connection and never touches our meter. Seed as generously as your line allows. It just will not be from the proxy’s IP.
Verdict
For torrents, do not bother putting aria2 behind a proxy: the tracker is the only thing that moves, and the swarm still sees you. For HTTP and HTTPS mirrors, --all-proxy works exactly as advertised, and it is the cheapest way to get a big legal file from a different IP. If you need torrent peers through a proxy, use a client built on an engine that does it; the qBittorrent guide has the setup and the one checkbox everyone misses.
Quick answers
Does aria2 support SOCKS5 proxies?+
No. The aria2c manual never mentions SOCKS, and the "Support Socks proxies" request, issue #153, has been open since 2013. aria2 speaks HTTP proxies only.
Does --all-proxy cover BitTorrent peers?+
No. The maintainer’s words: "aria2 can connect to tcp tracker via HTTP proxy. There is no proxy support for UDP traffic." The source connects to peers by their IP address directly. Only HTTP trackers use the proxy.
How do I give aria2 a proxy username and password?+
Either inside the proxy URL, in the [http://][USER:PASSWORD@]HOST[:PORT] format, or with --all-proxy-user and --all-proxy-passwd. On a shared machine, remember that command-line flags are visible to other users in the process list.
Does Motrix send torrents through a proxy?+
Motrix is a download manager built on aria2, and its proxy is aria2’s HTTP proxy. So the same limits apply: HTTP trackers through the proxy, peers and UDP direct.
Top-ups start at $5.
One shared datacenter IP for 30 days is $1.25. A single gigabyte of residential is $5.50. The balance never expires.