windows设置socks5系统代理

传统的代理软件一般设置的是http(s)代理,如下图所示:

想要设置系统的socks5代理,则需要修改注册表

计算机\HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings下的ProxyServer: 修改为socks://127.0.0.1:1089

特别提醒:socks://127.0.0.1:1089中是socks,而不是socks5!!!

接下来使用go语言golang.org/x/sys/windows/registry的操作注册表,实现设置系统socks5代理.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
package main

import (
"fmt"
"log"
"golang.org/x/sys/windows/registry"
)

func main() {
k, err := registry.OpenKey(registry.CURRENT_USER, `SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings`, registry.ALL_ACCESS)
if err != nil {
log.Fatal(err)
}
defer k.Close()

err = k.SetStringValue("ProxyServer", "socks://127.0.0.1:1089")
s, _, err := k.GetStringValue("ProxyServer")
if err != nil {
log.Fatal(err)
}
fmt.Printf("ProxyServer is %q\n", s)
}

Windows平台编译上述文件,得到setsocks1089.exe。下载之后,运行该文件,会将你的系统代理设置成socks://127.0.0.1:1089

点击下载文件


其实还有一种取巧的思路,就是将从系统代理出来的http流量转化为socks5流量给另外一个进程~

文章作者: 小王同学
文章链接: https://morvan.top/2022/04/15/windows设置socks5系统代理/
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 小王同学的精神驿站