English
English

SOCKS5 Proxies

SOCKS5 is a transport-level proxy protocol: it opens a connection on your behalf and moves bytes, without reading or rewriting what is inside them. Every static ISP address in our catalogue speaks it, from the same IP as HTTP and HTTPS.

Switching protocol does not change the address. The same credentials and the same IP serve HTTP, HTTPS and SOCKS5 — it is a port and a client setting, not a different product.

SOCKS5 is a protocol, not a type of address. It carries anything your client can open a socket for, including traffic an HTTP proxy cannot forward, and it passes the bytes through without reading or rewriting them. That makes it the right choice for a database client, a game client, a torrent, or anything that is not a web request. What it does not do is change what the address is. The same address can be reached over HTTP, HTTPS or SOCKS5, and what a website inspects is the address, not the protocol you used to arrive at it. Every static residential address ProxyJam sells speaks all three, on the same credentials, with no separate order and no price difference. So the question worth asking is not which protocol to buy. It is which network the address belongs to, and there the answer is a named consumer carrier, 22 of them in the United States.

What happens between your client and ours

Three short exchanges, none of which involve the proxy understanding your traffic.

Step 01

Your client greets the proxy and agrees on authentication. It offers the methods it supports; the proxy names the one it wants. On our addresses that is a username and password, or nothing at all if you have whitelisted your own IP instead.

Step 02

Your client asks for a destination. A host and a port, sent either as an address or as a name. Sending the name is the interesting case: the proxy resolves it, so the lookup leaves from the proxy’s network rather than from yours.

Step 03

After that the proxy just moves bytes. It does not parse the payload, add headers or know whether it is carrying a web page, a database session or a mail transfer. That indifference is the whole reason to choose SOCKS5 over an HTTP proxy.

Get started
Step 01

Your client greets the proxy and agrees on authentication. It offers the methods it supports; the proxy names the one it wants. On our addresses that is a username and password, or nothing at all if you have whitelisted your own IP instead.

Step 02

Your client asks for a destination. A host and a port, sent either as an address or as a name. Sending the name is the interesting case: the proxy resolves it, so the lookup leaves from the proxy’s network rather than from yours.

Step 03

After that the proxy just moves bytes. It does not parse the payload, add headers or know whether it is carrying a web page, a database session or a mail transfer. That indifference is the whole reason to choose SOCKS5 over an HTTP proxy.

Get started

What each protocol carries, and what the proxy can see

All three run over the same ProxyJam address. The choice is about what your client needs, not about which IP you get.
HTTP proxyHTTPS via CONNECTSOCKS5
What it can carryHTTP requests onlyAny TCP stream, after a tunnel is openedAny TCP stream
Does the proxy read the payloadYes — it parses the requestNo, once the tunnel is openNo, at any point
Can it change your headersYes, and many proxies doNoNo — it has no notion of a header
Where the hostname is resolvedAt the proxyAt your client, then tunnelledYour choice, at either end
Typical client supportUniversal in HTTP toolingUniversal in HTTP toolingWide, and standard in SSH and shells
Best suited toPlain web requestsOrdinary HTTPS browsing and scrapingNon-web protocols and mixed traffic

What SOCKS5 gives you on our addresses

Protocol
SOCKS5, alongside HTTP and HTTPS on the same address
Authentication
Username and password, or an IP whitelist
Address seen by the target
The same static ISP address, whichever protocol you use
Carrier choice
22 named carriers in the United States; a shorter list elsewhere
Coverage
74 countries in the catalogue, each with the provider named
Rotation
None — the address does not change during the period
Concurrent sessions
100 per proxy, 10 past 50 GB a month
Traffic accounting
Per IP per period; transfer is not metered on any protocol
import requests

proxy = "http://user:pass@gw.proxyjam.com:7777"

proxies = {
    "http": proxy,
    "https": proxy,
}

headers = {
    "X-PJ-Country": "US",
}

response = requests.get(
    "https://example.com/",
    proxies=proxies,
    headers=headers,
)

print(response.status_code)
curl -x http://user:pass@gw.proxyjam.com:7777 \
     -H "X-PJ-Country: US" \
     https://example.com/
import axios from "axios";
import { HttpsProxyAgent } from "https-proxy-agent";

const proxy = "http://user:pass@gw.proxyjam.com:7777";
const agent = new HttpsProxyAgent(proxy);

const response = await axios.get(
  "https://example.com/",
  {
    httpAgent: agent,
    httpsAgent: agent,
    headers: { "X-PJ-Country": "US" },
  },
);

console.log(response.status);
package main

import (
    "fmt"
    "net/http"
    "net/url"
)

func main() {
    proxy, _ := url.Parse(
        "http://user:pass@gw.proxyjam.com:7777")

    client := &http.Client{Transport: &http.Transport{
        Proxy: http.ProxyURL(proxy),
    }}

    req, _ := http.NewRequest(
        "GET", "https://example.com/", nil)
    req.Header.Set("X-PJ-Country", "US")

    res, _ := client.Do(req)
    fmt.Println(res.Status)
}

Point a client at SOCKS5

The change from HTTP is one line in most clients: the scheme becomes socks5, or socks5h if you want the proxy to resolve the hostname. Credentials, address and country header are unchanged, and so is the IP your target sees.

Full setup docs

Questions about SOCKS5

The answers below state the terms we sell on, and each one that does links to the document that binds us to it.

What is a SOCKS5 proxy?

SOCKS5 is a proxy protocol defined in RFC 1928 that works at the transport layer. Your client asks the proxy to open a connection to a host and port, the proxy opens it, and from then on it forwards bytes in both directions without interpreting them. Because it never parses what it is carrying, it is not limited to web traffic — anything that runs over TCP can go through it.

How is it different from an HTTP proxy?

An HTTP proxy understands HTTP. It reads the request line and the headers, and it is free to add, remove or rewrite them, which is why some proxies quietly announce themselves in a header you did not set. SOCKS5 has no notion of a header at all: it sees a destination and a byte stream. If your traffic is not HTTP, or you would rather nothing in the middle could edit it, SOCKS5 is the one to pick.

Does SOCKS5 encrypt my traffic?

No, and neither does an HTTP proxy. The protocol authenticates you to the proxy and then forwards bytes; it adds no encryption of its own. If the traffic inside is HTTPS or SSH it is already encrypted end to end, and the proxy cannot read it. If the traffic inside is plaintext, it stays plaintext. Anyone selling SOCKS5 as an encryption feature is describing something the specification does not contain.

What does socks5h do that socks5 does not?

It moves the DNS lookup. With socks5, your client resolves the hostname locally and asks the proxy to connect to the resulting address. With socks5h, your client sends the name and the proxy resolves it. That matters in two ways: your own resolver never sees which hosts you are visiting, and you get the answer the proxy's network gets, which for a geo-varying hostname is often not the answer you would get at home.

Does it support UDP?

The specification defines a UDP mode, and support for it in the wild is patchy — a great many services that advertise SOCKS5 implement the TCP part only. Assume TCP unless a provider states otherwise in writing, and test before you build anything on the assumption. Our own reference documents what our addresses accept.

Do I need a different proxy to use SOCKS5?

No. Every static ISP address in our catalogue accepts HTTP, HTTPS and SOCKS5, and all three leave from the same IP with the same credentials. Changing protocol is a client setting; it does not change the address, the country, the price or the period. The address stays yours for the whole period, it is replaced free if it stops responding or is blocked on a target you named, up to 20 % of the order per calendar month, and the first order carries a 72-hour refund covering up to 10 IPs that testing does not void. Terms of Service