在 Windows 上,使用 WinSW 将 Xray-core 配置为开机自启服务,浏览器使用 SmartProxy 管理网络请求,可以避免 TUN 模式或系统代理对其他应用的影响。
但 Chrome 的翻译功能并不使用 SmartProxy 设置的代理,所以会出现谷歌翻译不可用。
解决方法是,使用 Xray 的 Dokodemo-Door 功能,将请求转发到代理。
配置文件示例:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| { "inbounds": [ { "tag": "google_apis", "protocol": "dokodemo-door", "listen": "127.0.10.100", "port": 443, "settings": { "address": "translate.googleapis.com", "port": 443 } } ] }
|
在 C:\Windows\System32\drivers\etc\hosts
内添加以下内容:
1
| 127.0.10.100 translate.googleapis.com
|
hosts 文件将谷歌翻译的域名指向 Xray 监听的地址,浏览器发起的请求将会由 Xray 处理,Xray 内部经过 routing 判断后,请求会转发到合适的出站代理。
在 dokodemo-door
配置里的 listen
写的不是 127.0.0.1
,不会影响其他软件监听 443 端口。
事实上,127.0.0.0/8
都属于本地环回地址,可以使用多个地址来实现而不出现端口冲突。