本文是关于v2rayN和sing-box内核的使用问题和解决方法的。文章主要介绍了两个问题:一个是切换sing-box内核或启用tun模式后,vless协议的节点无法工作。这是因为v2rayN-With-Core版本的sing-box内核太老,不支持vless协议的流控设置。另一个是切换sing-box内核或启用tun模式后,启用CDN的节点无法工作。这可能是因为sing-box内核无法解析节点地址的域名。文章给出了两种解决方法,一种是把域名填写到伪装域名,把地址填写为ip,另一种是修改sing-box DNS设置,使用可用的DNS服务器来解析域名。
关于v2rayN切换sing-box内核或启用tun模式后vless节点无法工作的问题,主要是出现在 v2rayN-With-Core 版本,具体原因是此版本集成的sing-box内核过于老旧,不支持vless协议的flow设置,对于没有设置流控的vless节点应该是不存在这个问题的。解决方法是更新sing-box内核:
也可以手动更新sing-box内核,sing-box core 的下载地址:Releases · SagerNet/sing-box
下载合适版本的sing-box解压后,替换掉v2rayN所在目录下的 ./bin/sing_box/ 目录下的 sing-box.exe
关于v2rayN切换sing-box内核或启用tun模式后启用CDN的节点无法工作的问题可能出现在节点的“地址(address)”一栏填写的是一个域名的情形,这可能是因为sing-box内核无法解析节点地址的域名。解决方案是把这个域名填写到“伪装域名”,并把“地址”一栏填写为ip即可。或者尝试修改一下DNS设置:
切换到“sing-box DNS设置”后点击“点击导入默认DNS配置”。
修改“tag”为 “local” 的配置:将"address"修改为路由器的ip或者其他可用的公共DNS的 ip
为"rules"中走"server": "local"的配置添加域名匹配规则,将节点"地址(address)"使用到的域名添加到里边,比如,修改为:
{
"geosite": [
"cn"
],
"domain": [
"your_domain.com"
],
"server": "local"
},
注:修改为路由器的ip将使用运营商提供的DNS,修改为其他公共DNS,应先检查一下可用性。可以使用 nslookup
命令检查DNS的可用性,比如:
nslookup baidu.com 223.5.5.5
此命令是使用 223.5.5.5 查询百度的ip,这个DNS服务器就是v2rayN中为sing-box默认配置的DNS服务器,是阿里云提供的公共DNS服务器,但部分地区的运营商可能会阻断此DNS服务器的服务。
捐赠通道,感谢!🦀🦀