Being forced to use a proxy is a nightmare. You have to configure almost every software for the proxy, if the software supports it. It would be great if we could configure our network adapter to use a SOCKS proxy by default. Since it's not an option for Windows 10, I am looking for a virtual adapter that does the tick.

Something like this:

Software -> Virtual Network Adapter -> SOCKS Proxy
  • Windows 10 supports a global system proxy in Settings > Network & Internet > Proxy, under Manual proxy setup. This setup doesn't allow user-name and password, for that see this workaround. – harrymc Jul 18 '18 at 14:39
  • 2
    @harrymc that setting doesn't work OSwide, it only works if the application respects those settings. – Ramazan Polat Jul 18 '18 at 16:20

Here is what I did to make it work.

  1. Use OpenVPN tap drivers to install a virtual network adapter(use NDIS5 drivers).
  2. Name it as taplan.
  3. Assign to your network adapter named taplan. Use as subnet mask.
  4. Have a socks server or use public server you owned to do a ssh tunnel socks proxy connection.

If you don't have a socks proxy, you need a public server. You can use putty to establish an ssh connection along with a tunnel which acts as a socks proxy. Sample command is something like this:

ssh -D 8123 -f -C -q -N socksserverip.com

After that, you have a socks proxy on your localhost at port 8123.

  1. Check your socks proxy with Firefox by pointing localhost:8123 as socks proxy. If you have an internet connection then so far so good.

  2. Download tun2socks from prebuilt windows binaries. For this question, I used badvpn-1.999.128-win32.zip file.

Extract bin/badvpn-tun2socks.exe file to somewhere in system PATH and rename it as t2s.

  1. Configure tun2socks to make your taplan adapter to use socks proxy.

Enter command prompt with admin privileges and type:

$ t2s --tundev "tap0901:taplan:" --netif-ipaddr --netif-netmask --socks-server-addr

Now you have a virtual network adapter named as taplan which uses the socks proxy configured as your localhost to connect to internet. All requests forwarded to this adapter will tunnel through your public/remote server.

  1. Configure your internet routes.

In command prompt type:

$ route PRINT

this will show you your current routes. The default gateway is the top one. Note that IP.

$ route CHANGE MASK  your_current_gateway_ip METRIC 400
$ route ADD MASK METRIC 50

Now all your internet traffic will be using as gateway which is configured in a virtual network adapter.

  • 1
    This is exactly what I needed. I don't see why I should choose between a proxy and a VPN. – iopq Apr 20 '20 at 3:44
  • Because I have my own proxy server. – Ramazan Polat Apr 20 '20 at 17:26
  • 2
    That's what I meant, I have my own proxy server, I don't see why there's no easy way to VPNize it – iopq Apr 22 '20 at 5:54

You are looking for a system-wide proxy for all programs, including those that bypass the Windows 10 proxy that is defined in Settings > Network & Internet > Proxy under "Manual proxy setup".

You will need for that a third party product, since Windows 10 does not have a built-in mechanism for that.

I list below the products I know of, although you will need to try them out to see how well they work with your environment:

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.