How to Set Up a SOCKS5 Proxy in Chrome: Ultimate Guide
Table of Contents
Key takeaways
Use the Proxy SwitchyOmega 3 (ZeroOmega) extension to set up HTTP, HTTPS, and SOCKS5 proxies in Chrome.
As Chrome lacks SOCKS authentication, it requires IP whitelisting or other workarounds.
WebRTC leaks can expose IPs. Fix this with an extension like WebRTC Network Limiter.
You can use the command line to launch Chrome with a SOCKS5 proxy and fix DNS leaks.
PAC files can route SOCKS5 traffic in Chrome, but only without credentials, so you’ll still need workarounds like IP whitelisting.
If you already use SOCKS5 proxies in other workflows, you might want to use them in your Google Chrome browser too. Unfortunately, Chrome can connect to SOCKS5 proxies but can't send a username and password.
The simplest setup involves IP whitelisting and a third-party proxy extension. We’ll show you how to quickly set up SOCKS5 proxies on Chrome using the free Proxy SwitchyOmega 3 (ZeroOmega) extension.
đź’ˇ There are a few requirements before you can set up your proxies:
An anyIP proxy account. Prices go as low as $2/GB, with a 14-day money-back guarantee.
Proxy credentials from the dashboard:
Username/password
Proxy server addresses (URL or IP + port number)
How to set up a proxy on Chrome with Proxy SwitchyOmega (ZeroOmega)
Google Chrome does not natively support proxy settings and redirects the user to the general system preferences. These settings apply system-wide and are not suitable for cases when you want your proxy on the Chrome browser only.
That's why we'll be using the Proxy SwitchyOmega 3 (ZeroOmega) browser extension. However, even with the proxy extension, Chrome isn't compatible with SOCKS5 proxy authentication.
If you still want to use SOCKS5 proxies, you must enable IP whitelisting as a workaround (see the Advanced Setup section below).
In most cases, a much simpler method is to change your proxy protocol in the anyIP dashboard to HTTP.

Once you've changed it to an HTTP proxy, follow the steps below.
Step 1: Download and add the Proxy SwitchyOmega 3 (ZeroOmega) extension to Chrome
Open the Proxy SwitchyOmega 3 (ZeroOmega) download page and click on Add to Chrome

Review all the permissions granted to ZeroOmega. Then, click on Add extension to confirm

Step 1b (optional): Pin the extension directly to your toolbar for quick access

Click on the Extension icon
Next, click on the pin icon to pin the extension to the toolbar for quick access
Step 2: Open ZeroOmega dashboard
After a fresh install, the extension will automatically redirect you to the dashboard.


For this tutorial, we’ll skip the guide by clicking on Skip guide (feel free to follow it if you want to)
Click on proxy to update the default proxy profile. You can also add a new profile if you add multiple proxies
đź’ˇLater, after the extension is installed in your browser, you can access the dashboard by clicking Options.
Step 3: Head to the Proxies menu to configure your proxy

Select the protocol HTTP or HTTPS from the dropdown menu
Enter your hostname in the Server field. In our example, we use anyIP as a provider: portal.anyip.io
Enter your proxy port for anyIP; we use 1080 (for IP whitelisting, use ports 2000-2999)
Click on the padlock to enter your proxy username and password

đź’ˇ To quickly identify your proxy, you can rename it as follows:

Click on Rename to open the Rename Profile form
Choose a name to identify your proxy easily
Save by clicking on the Rename button
Step 4: Connect to your proxy

Open the extension menu by clicking on the ZeroOmega icon
For example, click on the proxy profile you just configured: Proxy by anyIP
đź’ˇ The extension icon should switch from grey to blue. This indicates your connection through the proxy.
You can also use separate Chrome profiles to run different proxy configurations within the same Chrome installation. Each Chrome profile has its own copy of ZeroOmega, so you can set a different proxy in each profile and use them side by side.
How to test your proxy connection

Before you can see how residential proxies work, you need to ensure they are enabled. Go to Browserleaks with and without the proxy activated. You will see that your IP is getting updated.

Notice that the new IP address differs from the one that is shown when the proxy is disabled. An Italy proxy will show that the IP address location is in Italy.
You should also run a DNS leak check to verify that your DNS servers aren't exposing your real location.
đź’ˇ If you look closely at those screenshots, you can see a WebRTC Leak still revealing the public IP address

What is a WebRTC Leak, and how to fix it
Web Real-Time Communication (WebRTC) is a free, open-source technology enabling real-time communication and data sharing. It allows users to make audio and video calls, share files and screens without additional software or plugins.
This technology has dramatically improved how we communicate and collaborate online. Yet, WebRTC leaks are used by websites to identify users' real IP addresses even when using a VPN or proxy.
To fix this in Chrome, Google developed a simple extension that gives you access to the WebRTC configuration. Follow the instructions to install and configure the extension:
Step 1: Download and add WebRTC Network Limiter to Chrome


Click on Add to Chrome on the extension page.
Review all the permissions granted to WebRTC Network Limiter. Then, click on Add extension to confirm.
đź’ˇ You should see a confirmation that the extension was added to Chrome
Step 2: Head to the WebRTC Network Limiter option

Open the extension menu and click on Options to access the extension configuration menu.
Step 3: Configure the extension to fix the WebRTC leak
Select Use my proxy server (if present) to make Chrome send traffic through the proxy.

Step 4: Check your proxy connection one more time
Head back to Browserleaks to check the WebRTC Leak. As you can see in the screenshot, it has fixed the WebRTC Leak.

Advanced Setup
How to set up a SOCKS5 Proxy on Chrome
Some use cases, such as using Telegram proxies, might require the SOCKS5 protocol. As such, you'll need to use IP whitelisting to bypass SOCKS5 limitations on Chrome.
Chrome limitation with SOCKS5
If you want to use a SOCKS5 proxy in Chrome, you’ll need a provider that offers IP whitelisting, such as anyIP. Chrome does not natively support SOCKS5 proxies with username/password authentication, so IP whitelisting is the simplest method.
With this setup, the proxy automatically recognizes your device’s IP address instead of asking for login credentials, so the connection avoids compatibility issues. This also ensures stable use with proxy management extensions, such as SwitchyOmega 3.

Why we recommend using HTTP/HTTPS
Keep in mind that while SOCKS5 proxies are flexible and can handle more types of traffic, Chrome offers better built-in support for HTTP/HTTPS proxies. That’s why many users prefer HTTP/HTTPS for simplicity, while choosing SOCKS5 with IP whitelisting when they need broader protocol support.
With HTTP/HTTPS, authentication and compatibility are straightforward, resulting in faster, more stable, and easier-to-manage connections within the extension.
What is IP whitelisting?
IP whitelisting, like we’re offering at anyIP, involves registering your device’s IP address in your dashboard. Once whitelisted, the system will only accept connections coming from that IP, with no username/password needed. This makes authentication simpler, especially for browsers like Chrome.
Here’s a quick step-by-step guide for enabling IP whitelisting:
Log in to your anyIP dashboard
Go to the Proxies tab
Choose Add profile or edit an existing profile
Under Authentication method, choose Whitelisted IPs
Click on +Add more IPs, and enter the whitelisted IP addresses
Assign a port between 2000 and 2999, which you’ll use instead of 1080
Click Add IPs and Save changes
From now on, the proxy will accept connections only from the IPs specified, without any username or password required. This solution is best for static IPs, such as home or office. If your IP changes frequently, we recommend using username/password authentication instead.
How to use a SOCKS5 proxy
Once you enable IP whitelisting for your proxies, you can set them up in the ZeroOmega extension as follows:
Select SOCKS5 from the dropdown menu
Enter your hostname in the Server field. In our example, we use anyIP as a provider: portal.anyip.io‍
Enter your proxy port for anyIP here; we use 2000

System-wide SOCKS5 proxy configuration
If you don't want to use a Chrome extension, you can set up a proxy server in your operating system preferences. Beware that the proxy settings will apply to all applications, not just Chrome. Here's how to do it in macOS:
Choose the Apple menu and open System Settings
Click on Network and select your current connection
Click on Details and open the Proxies tab
Toggle the SOCKS proxy option and choose Proxy server requires password (unless you use IP whitelisting)
Enter your host, port number, username, and password
Note that while macOS settings accept SOCKS5 credentials, this only helps apps, such as the Safari browser, that are compatible with SOCKS5 authentication. Chrome will show an error, so you must use IP whitelisting instead.
Unfortunately, Windows settings do not support SOCKS5 proxies natively. Going to Network & internet and selecting manual proxy configuration accepts only an HTTP proxy address and port. Even the proxy setup process for LAN under Internet Options accepts SOCKS4 host and port only.
If you paste a SOCKS5 host into the HTTP proxy field, Chrome sends HTTP requests to a port that expects a different handshake, and pages fail to load. The best workaround for such Windows settings limitations is to use an app that supports SOCKS5 proxies, such as the Chrome browser with the ZeroOmega extension.
Connect to your SOCKS5 proxy using the command line
If you're familiar with Terminal/PowerShell, you can launch Google Chrome with a SOCKS5 proxy using commands instead of selecting manual proxy configuration.
For macOS:
"/Applications/Google Chrome.app/Contents/MacOS/Google Chrome" --proxy-server="socks5://portal.anyip.io:2000"For Windows 10/11:
Start-Process -FilePath "C:\Program Files\Google\Chrome\Application\chrome.exe" -ArgumentList '--proxy-server="socks5://portal.anyip.io:2000"'Depending on your proxy provider, you have to update:
The hostname, in this example, we use: portal.anyip.io
The port. For our test, we used: 2000
This method only works with IP whitelisting, since the command line can't pass a username and password.
The file path may differ depending on where you installed Google Chrome.
Once your command line is ready, ensure that Chrome is closed. Then press “Enter” to launch a new instance of Chrome with the proxy enabled.
To test your connection, you can use the same tools as the previous method.
Fix DNS Leaks using the command line
One major issue when using --proxy-server is that this argument only applies to URL loading. Google Chrome has many components that can bypass the proxy server. Hence, your connection will not be fully anonymous.
The DNS prefetcher is one of those components. It will use your local DNS to improve browsing performance. It causes a DNS leak when using a SOCKS5 proxy.
To fix this, stop the DNS prefetcher and other Chrome components from making DNS requests on your device, so every lookup goes through the proxy. Add the --host-resolver-rules argument to the same launch command. The full commands for macOS and Windows 10/11 look like this:
"/Applications/Google Chrome.app/Contents/MacOS/Google Chrome" --proxy-server="socks5://portal.anyip.io:2000" --host-resolver-rules="MAP * ~NOTFOUND , EXCLUDE portal.anyip.io"
Start-Process -FilePath "C:\Program Files\Google\Chrome\Application\chrome.exe" -ArgumentList '--proxy-server="socks5://portal.anyip.io:2000" --host-resolver-rules="MAP * ~NOTFOUND , EXCLUDE portal.anyip.io"'The --host-resolver-rules flag stops Chrome from sending DNS requests from your device. Instead, all DNS lookups, except for your proxy's hostname, are mapped to an invalid address (0.0.0.0).
Depending on your proxy, you might need to update the hostname. Here, we use portal.anyip.io.
đź’ˇ Chrome may display a warning banner saying the flag isn't officially supported. The flag still works, but Google could change its behavior in future releases.
Can I use a PAC file for SOCKS5 in Chrome?
A Proxy Auto-Config (PAC) file is a short JavaScript function that tells an app, in this case, the Chrome browser, which proxy server to use for each destination. PAC files are mostly used on managed networks or for complicated proxy server setups with per-domain rules for internet access.
Here's what a standard PAC function for SOCKS5 looks like:
function FindProxyForURL(url, host) {
if (dnsDomainIs(host, ".example.com")) {
return "SOCKS5 portal.anyip.io:2000";
}
return "DIRECT";
}Chrome displays an authentication pop-up for HTTP proxies but not for SOCKS5. SOCKS5 proxies get no pop-up because Chrome has no way to send SOCKS5 usernames and passwords. Users often assume their PAC syntax is wrong when the real problem is that Chrome has no way to send SOCKS5 credentials at all.
It's the same issue that manual proxy configuration in system preferences faces. Here are the options when using PAC files for proxies.
IP whitelisting for PAC. If the endpoint is whitelisted, the PAC script works as written above, and no credentials are needed. This is the simplest solution if your IP is static.
Extensions. The ZeroOmega extension covers most per-domain routing people build PAC files for. However, you'll still need to whitelist your IP address for SOCKS5 profiles to work.
Local forwarder. Software like Proxifier or Proxycap sends your SOCKS5 username and password itself and routes traffic by hostname rules, so it replaces the PAC files.
System-wide settings. On macOS, the Chrome browser can take the host and port number from system settings, but it still ignores the username and password, so this only works with IP whitelisting. It also routes all the data from your device, and Windows settings have no equivalent
SSH dynamic port forwarding. The command ssh -D 1080 user@server gives Chrome a credential-free local SOCKS5 endpoint at 127.0.0.1:1080. Note that traffic exits from your own server's IP, so you'll get your server's IP, not an anyIP residential or mobile IP.
Troubleshooting Common Issues
My proxy is not connecting
Most likely, you are having problems connecting to your proxy server in general. Make sure you entered the correct credentials (proxy hostname and port number). Take some time to verify your login details (password and username), if used, or whether your IP is set up correctly for IP whitelisting.
I’m getting the “ERR_SOCKS_CONNECTION_FAILED” error
Google Chrome is incompatible with authenticated SOCKS5 proxies, since it can’t send a username and password. This error is telling you that the connection failed because the SOCKS5 proxy wasn't authenticated. The easiest solution is to use IP whitelisting to establish a connection.
Connection refused or server not responding
If your credentials and proxy information are correct, contact your proxy provider. Check if their services are still working correctly. You can check anyIP status and contact us at any time.
PAC file loads but SOCKS5 destinations fail
If sites routed through DIRECT load but SOCKS5 destinations fail, your PAC syntax is correct. Chrome can't send SOCKS5 usernames and passwords, so the connection is rejected due to lack of authentication. Use IP whitelisting or other options we suggested above.
HTTP 407 Proxy Authentication Required
A 407 response means the HTTP proxy rejected your request because it lacks valid credentials. Re-enter your username and password, checking for copied spaces. If you use IP whitelisting, confirm your current IP matches the one in your anyIP dashboard.
Proxy connects, but the IP doesn't change
If you use the ZeroOmega, check that it shows your setup profile, not Direct or System Proxy. If you used the command line, note that Chrome reads flags only at launch. Close the browser, run the command again, and see if the issue persists.
Slow or intermittent connections
Proxy speed varies based on various factors, such as your proxy server type, provider, and location. Consider switching to a different IP address type or location in your anyIP dashboard, reload the same page, and compare performance. If every endpoint is slow, test without the proxy to rule out your own internet access disruptions.
Sites still blocking despite a working proxy
The issue might be due to WebRTC or DNS leaks. Go to Browserleaks to see if your setup works. In some cases, websites might also connect your IP with an account or other data and have already flagged the proxy IP. Rotate to a new IP or switch locations, then retry.
How to quickly get a SOCKS5 proxy using anyIP
Gain quick and hassle-free access to SOCKS5 proxies through anyIP's expansive network. You can count on their 24/7 support team for uninterrupted and seamless service.
What is a SOCKS5 proxy, and how does it work with Chrome?
A SOCKS5 proxy is an internet protocol that routes network packets between a client and a server through a proxy server. It stands for Socket Secure v5. Using a SOCKS5 proxy on Google Chrome helps bypass network restrictions. It also lets you access geo-restricted content by changing your IP address.
What about Mozilla Firefox?
If you are a Firefox user, you can follow our SOCKS5 Firefox guide to help you configure the proxy quickly.
Read more
How to Manage Proxies and Multiple Accounts in 2026: A Review of the Incogniton Antidetect Browser
Learn why pairing Incogniton with reliable proxies is the key to secure multi-account management, browser fingerprint protection, and safer automation in 2026.
How to customize Your User-Agent with Python Requests
Learn how to update and rotate user-agents in Python Requests to avoid detection and improve scraping efficiency.
How to Set Up a Potatso Proxy on iPhone & iPad
Learn how to set up a SOCKS5, HTTP, or HTTPS proxy in Potatso on iPhone and iPad. Follow the steps, connect, and verify your proxy IP.
:format(webp))
:format(webp))