V2rayn: 配合使用 Chrome 插件 SwitchyOmega的系统代理模式时出错

Created on 22 Dec 2019  ·  12Comments  ·  Source: 2dust/v2rayN

升级后出现此问题。(确认非服务器问题)

预期行为

在系统托盘右键菜单中选择全局自动配置http代理,Chrome浏览器的SwitchyOmega插件中选中系统代理模式,能打开Google首页。

实际行为

image
且V2Ray客户端无任何新连接信息。

复现方法

1、在系统托盘右键菜单中选择全局自动配置http代理
2、Chrome浏览器的 SwitchyOmega 插件中选中系统代理模式
3、打开Google首页。
4、 SwitchyOmega 插件中选中自定义代理模式(socks 127.0.0.1:10808),可以打开 Google 首页
(此时关闭 v2ray,换用 SSR,可以打开浏览 Google 首页)

日志信息,位置在当前目录下的guiLogs

guiLogs 文件夹下的txt文件中有许多类似如下的内容:

--------------------------------info[03:15:58]--------------------------------
System.Exception: v2rayN start up


--------------------------------info[03:20:12]--------------------------------
System.Exception: v2rayN start up


--------------------------------info[03:24:29]--------------------------------
System.Exception: v2rayN start up


--------------------------------info[03:31:51]--------------------------------
System.Exception: v2rayN start up

环境信息(客户端请升级至最新正式版)

V2Ray 版本 3.2

额外信息(可选)

Windows 10 企业版 2016 长期服务版
Chrome 版本 79.0.3945.88(正式版本) (64 位)
Chrome 插件 Proxy SwitchyOmega 版本 2.5.20

Most helpful comment

unknown Socks version: 67
这个是用错了socks和http的端口
http端口=socks端口+1

All 12 comments

我是选择SwitchyOmega的Proxy模式,socks5做本地代理。无论v2rayN客户端PAC还是全局模式都没有问题。但如果不用SwitchyOmega指定Chrome代理模式,刚使用v2ray或者shadowsocks客户端时候可以访问Google等被墙的网站。但一段时间后就不能访问,需要手动再点一下PAC代理或者全局代理后才可以访问。否则会出现你截图的情况。

这个问题造成 VS Code 插件市场出现不能连接网络

SwitchyOmega是否使用了PAC,因为PAC默认使用1080端口
将V2ray的本地端口改成1080就好了

image

选的这个

V2开全局代理
image
V2端口:
image

电脑连手机热点或者wifi,switchyomega 的系统代理模式正常;

电脑用有线连接(拨号连接、移动),switchyomega 的系统代理模式就会出现这个问题:
image

必须切换 SOCKS Proxy 模式才行:

image

V2Ray客户端开全局模式时 VS Code 受影响:

image

我读了 v2ray-core 的 issue 1233 issue 227,未能解决问题。
每次在VS Code 中搜索插件都是连接失败,V2Ray日志一直报错:

****** rejected v2ray.com/core/proxy/socks: unknown Socks version: 67

已自我确诊为Internet 选项的设置问题

注:在以下的叙述中,我将注册表中编辑器中像文件夹的图标称为“键”,“键”内包含的条目称作“值”,每个“值”对应一个“数据”,如下图
image

问题在于:

中文的拨号连接名字是在注册表中总是对应两个值和数据,所在注册表键为:
HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings\Connections
一个值乱码,一个值正常。
Internet 选项中对中文网络连接进行的代理设置总是被写入到注册表中正常的值对应的数据中,而读取时却从乱码的值中读取数据。导致看起来对网络连接代理的设置总是不能保存。

如果网络连接名字包含中文,则在此设置页面进行的设置不能得到保存:
image

如果使用英文作为拨号连接的名字,在注册表中只对应一个值,存储和读取设置操作的都是这同一个值的数据。可以正常设置代理。

unknown Socks version: 67
这个是用错了socks和http的端口
http端口=socks端口+1

unknown Socks version: 67
这个是用错了socks和http的端口
http端口=socks端口+1

这个我注意到了,最新的几个的release默认端口号好像是 SOCKS10808 和 HTTP10809。我改成了惯用的 SOCKS 1080, HTTP 1081。

结果系统的拨号连接代理总是为 HTTP 127.0.0.1:1080(这恐怕是SSR客户端的设置遗留) ,且由于前述原因无法更改,导致其它走系统代理的软件,如 VS Code, 无法联网。

我另提了一个issue #358,还请作者指正。

unknown Socks version: 67
这个是用错了socks和http的端口
http端口=socks端口+1

这个我注意到了,最新的几个的release默认端口号好像是 SOCKS10808 和 HTTP10809。我改成了惯用的 SOCKS 1080, HTTP 1081。

结果系统的拨号连接代理总是为 HTTP 127.0.0.1:1080(这恐怕是SSR客户端的设置遗留) ,且由于前述原因无法更改,导致其它走系统代理的软件,如 VS Code, 无法联网。

我另提了一个issue #358,还请作者指正。

我v2选http代理
omega
1增proxy,127.0.0.1,10809
2增auto,默认直联,其它选1

战术插眼

Was this page helpful?
0 / 5 - 0 ratings