Virtual Network Adapter that forwards request to a SOCKS proxy
Solution 1
Here is what I did to make it work.
- Use OpenVPN tap drivers to install a virtual network adapter(use NDIS5 drivers).
- Name it as
taplan
. - Assign 10.0.0.1 to your network adapter named
taplan
. Use 255.255.255.0 as subnet mask. - 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
.
-
Check your socks proxy with Firefox by pointing
localhost:8123
as socks proxy. If you have an internet connection then so far so good. -
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.
- Configure tun2socks to make your taplan adapter to use socks proxy.
Enter command prompt with admin privileges and type:
$ t2s --tundev "tap0901:taplan:10.0.0.1:10.0.0.0:255.255.255.0" --netif-ipaddr 10.0.0.2 --netif-netmask 255.255.255.0 --socks-server-addr 127.0.0.1:8123
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.
- 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 0.0.0.0 MASK 0.0.0.0 your_current_gateway_ip METRIC 400
$ route add ip_of_ssh_server your_current_gateway_ip metric 60
$ route ADD 0.0.0.0 MASK 0.0.0.0 10.0.0.2 METRIC 50
Now all your internet traffic will be using 10.0.0.2 as gateway which is configured in a virtual network adapter.
Solution 2
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:
- SocksCap64 (freeware dating from November 2017)
- WideCap and its much older predecessor FreeCap (freeware dating from 2009)
- AllProxy Lite (freeware dating from 2018) and its commercial brother AllProxy ($9.95)
- ProxyCap ($36 with 30 day trial)
- Proxifier ($36 with 30 day trial, dating from December 2016)
Related videos on Youtube
ramazan polat
Updated on September 18, 2022Comments
-
ramazan polat almost 2 years
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
-
harrymc almost 6 yearsWindows 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.
-
ramazan polat almost 6 years@harrymc that setting doesn't work OSwide, it only works if the application respects those settings.
-
-
iopq about 4 yearsThis is exactly what I needed. I don't see why I should choose between a proxy and a VPN.
-
ramazan polat about 4 yearsBecause I have my own proxy server.
-
iopq about 4 yearsThat's what I meant, I have my own proxy server, I don't see why there's no easy way to VPNize it
-
amirhamini about 3 yearsIt was very practical, thank you!
-
hawaii over 2 yearsis latency any good while using this strategy? im getting around 90ms latency to target server, while my ping to socks is 25ms and from socks to target server its 10ms.
-
ramazan polat over 2 years@hawaii as far as I remember, latency was also an issue for me.
-
Toto about 2 yearsWhile this link may answer the question, it is better to include the essential parts of the answer here and provide the link for reference. Link-only answers can become invalid if the linked page changes. - From Review