v2rayN DNS 设置和分流配置:从内核确认到连接验证
简答:v2rayN 配 DNS 前先确认 Xray 或 sing-box 内核,再到“设置→路由设置→DNS 设置”填写直连 DNS、远程 DNS 和 Bootstrap DNS。先用简单配置验证,再按日志、规则命中和浏览器测试定位问题;如果所有域名仍失败,恢复默认 DNS 并回滚新增规则。
定义:v2rayN DNS 设置和分流配置,是通过客户端界面生成核心 DNS 与路由参数,分别决定域名如何解析、局域网和国内目标是否直连,以及未命中目标是否交给代理出口。
先试这一步:确认内核、代理模式和规则顺序
本站是第三方使用指南站,不代表 v2rayN 官方。打开 v2rayN 后,先记录当前活动配置使用的是 Xray 还是 sing-box,再进入“设置→路由设置”,查看 DNS 设置和路由规则。v2rayN 官方界面说明同时覆盖两种核心,但同名字段的实际调用范围并不完全相同,不能把一个核心的原生 JSON 直接复制到另一个核心。可先使用 v2rayN 的备份功能保存整个 guiConfigs 文件夹,便于修改失败后恢复。参考v2rayN 官方界面说明。
| 现象 | 先检查 | 下一步 |
|---|---|---|
| 所有域名都打不开 | 核心是否启动、DNS 是否为空或循环 | 恢复默认 DNS,重启核心,再看主界面信息栏或 guiLogs。 |
| 只有需要代理的目标打不开 | 代理目标解析策略、节点域名解析和节点连接 | 检查远程 DNS、Bootstrap DNS 与节点域名是否能解析。 |
| 国内目标也走代理 | 路由规则顺序和默认出口 | 将局域网、拒绝、国内直连规则放在最终规则前。 |
| 打开 TUN 后局域网异常 | 路由排除地址和自动路由 | 检查局域网网段是否被排除,不要先盲目更换 DNS。 |
| IPv6 等待很久后才打开 | DNS 查询策略和节点 IPv6 可达性 | 临时改为 IPv4 优先或仅 IPv4,对比结果后再决定是否保留。 |
重要边界:Windows 的 Resolve-DnsName 检查的是系统解析链路,不能单独证明 v2rayN 核心代理 DNS 已经生效。系统代理、PAC 和 TUN 的接管范围不同,验证时必须同时看 v2rayN 日志、实际出口和浏览器测试。
v2rayN DNS 设置入口和字段填写示例
常见入口是“设置→路由设置→DNS 设置”。不同版本可能调整字段位置或名称;如果页面没有完全相同的选项,应以当前界面和官方说明为准,不要为了匹配本文强行修改配置文件。
为了先完成一次可回滚的基础测试,可以按下面的方式填写。示例地址来自 Cloudflare 的公开 DNS 文档,但能否访问取决于当前网络环境;如果测试超时,应换成你所在网络实际可访问的 DNS,而不是反复保留不可达地址。
| v2rayN 字段 | 建议填写 | 作用与注意事项 |
|---|---|---|
| 直连 DNS | 1.1.1.1,1.0.0.1 | 用于直连方向、路由匹配或 sing-box 的直连目标解析。 |
| 远程 DNS | 1.1.1.1,1.0.0.1 | 用于代理方向或 sing-box 的代理目标解析;实际是否经代理发送取决于核心和生成配置。 |
| Bootstrap DNS | 1.1.1.1,1.0.0.1 | 仅在 DNS 服务器地址使用域名时尤其重要,用 IP 地址先解析 DNS 服务器本身。 |
| 直连目标解析策略 | 先保持默认;IPv6 超时时再测试 IPv4 优先 | 不要一开始同时改 DNS、FakeIP、Hosts 和 IPv6。 |
| 代理目标解析策略 | 先保持默认 | 先确认节点可用,再根据日志判断是否需要调整。 |
Cloudflare 官方资料列出了 1.1.1.1、1.0.0.1 及对应 IPv6 地址,并提供浏览器验证页面;这些地址只是可测试选项,不代表适合所有网络。参考Cloudflare DNS 地址说明和Cloudflare 连接验证说明。
如果上述地址无法访问,可在 PowerShell 中执行 ipconfig /all,记录当前网卡显示的 DNS 服务器地址,把它们作为直连 DNS 的对照组。对照组的目的只是判断本地网络是否能正常解析,不等于它一定适合代理目标解析。不要把网关地址、IPv6 地址或不存在的占位符直接填入 DNS 字段。
Xray 与 sing-box:哪些是 v2rayN 字段,哪些是核心字段
v2rayN 的“直连 DNS”“远程 DNS”“Bootstrap DNS”和解析策略属于界面层抽象字段,保存后由 v2rayN 生成 Xray 或 sing-box 配置;它们不是两个核心完全通用的原生字段。官方界面说明明确区分了两种核心的常见行为,因此下面的表格应作为理解和排查依据,不应当当作跨核心 JSON 模板。
| 界面字段 | Xray 常见行为 | sing-box 常见行为 |
|---|---|---|
| 直连 DNS | 默认主要用于路由阶段将域名解析为 IP,以便匹配 IP 规则;不等于所有实际出站查询都使用它。 | 参与路由匹配解析、节点域名解析和直连目标域名解析。 |
| 远程 DNS | 默认主要用于路由阶段的 IP 匹配解析;实际出站行为还受 Xray DNS 和出站策略影响。 | 参与路由匹配解析和代理目标域名解析。 |
| Bootstrap DNS | 当 DNS 服务器地址本身写成域名时,用 IP 形式的 DNS 解析该地址。 | 用途相同,重点是避免解析 DNS 服务器时形成循环。 |
| 直连目标解析策略 | AsIs、IPIfNonMatch、IPOnDemand 等行为与路由阶段是否触发 IP 解析有关。 | 常见策略包括 prefer_ipv4、prefer_ipv6、ipv4_only、ipv6_only。 |
| FakeIP | 不能按 sing-box 的 FakeIP 逻辑直接套用。 | v2rayN 官方界面说明标注为仅支持 sing-box,且仅在 TUN 模式下有效。 |
Xray 官方文档说明,内置 DNS 既可参与路由阶段的 IP 规则匹配,也可用于出站目标解析;是否触发路由解析与 routing.domainStrategy 有关。参考Xray DNS 官方文档和Xray 路由官方文档。sing-box 官方文档则把 DNS 服务器、规则、最终服务器和解析策略作为独立字段,strategy 常见值包括 prefer_ipv4、prefer_ipv6、ipv4_only 和 ipv6_only。参考sing-box DNS 官方文档。
因此,看到“直连 DNS”并不能推出所有直连流量都一定使用该服务器;看到“远程 DNS”也不能推出所有 DNS 查询都一定经代理发送。最终判断应结合当前核心、生成配置、日志和实际访问结果。
分流配置怎么排:局域网直连、拒绝、国内直连和最终出口
v2rayN 官方界面说明写明,路由规则按列表先后匹配,一旦命中前面的规则,后面的规则不再处理。实践中应把更具体、更需要优先保护的规则放在前面,避免局域网地址被后面的通用代理规则覆盖。以下是逻辑顺序,不是要求照抄某个版本的固定规则集。
| 顺序 | 匹配对象 | 出口 | 目的 |
|---|---|---|---|
| 1 | 回环、局域网和私有地址 | 直连 | 保留路由器、NAS、打印机、本机服务等本地访问。 |
| 2 | 已经确认需要拒绝的域名或规则集 | 拒绝 | 避免后续直连或代理规则覆盖拒绝结果。 |
| 3 | 国内域名、国内地址和本地服务 | 直连 | 减少不必要的代理路径;具体范围以当前规则集为准。 |
| 4 | 明确指定的域名、后缀或应用 | 代理 | 让指定目标进入代理出口。 |
| 5 | 未命中的目标 | 按全局模式或最终出口 | 避免出现没有出口的空规则。 |
- 先在“路由设置”中保留默认规则,确认核心可以启动。
- 将局域网、回环和私有 IP 规则放到通用代理规则之前。
- 再添加国内直连、明确代理或拒绝规则,避免同一目标同时落入冲突规则。
- 保存配置并重启核心;访问一个应直连的局域网地址和一个应代理的目标。
- 在主界面信息栏或
guiLogs中查看目标最终命中的出站标签。
如果只是想确认 DNS 和分流链路,建议先不要启用 FakeIP、复杂 Hosts、SVCB/HTTPS 查询阻止和多套自定义规则。先得到一个可重复的基础结果,再一次只改一个变量。
系统代理、PAC 和 TUN 的 DNS 接管区别
系统代理、PAC 和 TUN 是三种不同的流量接管方式。系统代理主要影响遵守 Windows 代理设置的应用;PAC 通过脚本决定目标是否使用代理;TUN 通过虚拟网卡接管更多系统流量。它们都不能单独证明 DNS 已经被 v2rayN 核心接管。
| 模式 | 主要影响 | DNS 和分流检查 |
|---|---|---|
| 系统代理 | 读取系统代理设置的浏览器和应用 | 命令行、部分独立应用可能不读取系统代理;需要分别测试。 |
| PAC | 由 PAC 脚本决定哪些域名走代理 | 检查目标是否命中 PAC;未命中目标可能直接连接。 |
| TUN | 接管更多 TCP、UDP 和系统流量 | 检查虚拟网卡、自动路由、DNS 劫持和路由排除地址。 |
v2rayN 官方界面说明列出了 TUN 协议栈、MTU、ICMP 路由策略和路由排除地址等选项,并注明 Xray 只支持 gvisor 栈。sing-box 官方文档说明,TUN 的 auto_route 会设置默认路由;strict_route 在 Windows 上用于更严格的路由,并可减少普通多网卡 DNS 解析造成的泄漏,但可能影响部分虚拟化软件。参考v2rayN TUN 界面说明和sing-box TUN 官方文档。
如果启用 TUN 后局域网访问失败,先检查路由排除地址是否包含实际局域网网段;如果 TUN 启动失败,先查看权限、虚拟网卡和核心日志。不要把“Windows 能解析域名”误认为“所有应用的 DNS 都已经通过 TUN”。
保存后验证:日志、Windows 命令、浏览器和回滚
- 先重启核心并看日志:保存 DNS 和路由后停止当前核心,再重新启动。未开启文件日志时,错误通常显示在 v2rayN 主界面信息栏;开启“启用日志存到文件”后,可在
guiLogs文件夹查看。重点搜索dns、resolve、route、direct、proxy、timeout和failed。 - 检查 Windows 系统解析:在 PowerShell 中执行
Resolve-DnsName example.com。它只能说明 Windows 当前解析链路是否有结果,不能单独证明 v2rayN 的代理 DNS 已生效。 - 对照指定 DNS:在 PowerShell 中执行
nslookup example.com 1.1.1.1和nslookup example.com 1.0.0.1,比较是否超时、是否返回地址。Cloudflare 官方排障文档也建议在 Windows 中使用nslookup对比不同解析器;若直接查询失败,优先判断网络到 DNS 服务器的连通性。 - 进行浏览器验证:在配置完成后打开 Cloudflare 连接检查页面,查看页面是否能检测到到 1.1.1.1 的连接。该页面只能验证相关连接和解析器状态,不能替代 v2rayN 日志,也不能证明所有 DNS 查询都没有泄漏。
- 检查实际分流:访问一个应直连的目标和一个应代理的目标,同时观察 v2rayN 日志中的出站标签。如果两个目标都走同一出口,优先检查规则顺序、全局模式和 PAC,而不是先换 DNS。
- 对照 IPv4:如果日志显示 IPv6 连接长时间等待、随后 IPv4 才成功,可临时把 sing-box 解析策略改为
prefer_ipv4或ipv4_only。如果问题消失,再检查本地网络和节点的 IPv6 可达性。 - 回滚:如果改完后所有域名都无法解析,先关闭新增的 FakeIP、Hosts、IPv6 策略和自定义规则,恢复备份的
guiConfigs,只保留默认 DNS 配置确认核心能启动。
如果是 DNS 服务器本身不可达,可使用 PowerShell 的 Test-NetConnection 1.1.1.1 -Port 53 做基础连通性对照;如果是 DoH 地址无法访问,则先回到普通 IP DNS 验证。Cloudflare 官方排障资料提供了 Windows 下的 nslookup、tracert 和 DoH 检查思路,具体结果仍受本地网络影响。参考Cloudflare DNS 排障文档。
最后核对:2026-10-25
本文依据 v2rayN 官方界面说明、Xray 官方 DNS 与路由文档、sing-box 官方 DNS 与 TUN 文档,以及 Cloudflare 的 DNS 验证和排障资料整理。v2rayN、Xray 和 sing-box 的菜单、字段和默认行为可能随版本变化;遇到字段缺失、名称变化或配置被重置时,应优先查看当前版本的官方说明。
完成排查后,理想结果应是:核心可以正常启动,局域网目标保持直连,规则命中的目标进入预期出口,DNS 查询没有持续超时,IPv4/IPv6 选择与当前网络可达性相符。若仍失败,请记录核心类型、代理模式、目标域名、失败时间、日志关键词和最近一次改动,再进行单变量排查。
常见问题
v2rayN 的 DNS 设置入口在哪里?
通常打开“设置→路由设置”,在其中查找“DNS 设置”或自定义 DNS 区域。先确认当前核心是 Xray 还是 sing-box,再修改直连 DNS、远程 DNS 和解析策略。不同版本的菜单名称可能变化,以当前界面为准。
直连 DNS、远程 DNS 和 Bootstrap DNS 应该怎么填?
基础测试可先填写一组当前网络可访问的 IP DNS,例如 1.1.1.1 和 1.0.0.1。直连 DNS 与远程 DNS 的实际调用范围取决于核心;Bootstrap DNS 用于解析以域名形式填写的 DNS 服务器,必须使用 IP 地址。
为什么 v2rayN 配置 DNS 后仍然打不开网站?
先区分是所有域名失败,还是只有代理目标失败。所有域名失败先查核心启动、DNS 超时和 Bootstrap 循环;只有代理目标失败再查节点域名解析、远程 DNS、代理目标解析策略和节点连接。日志位置通常是主界面信息栏或 guiLogs 文件夹。
Windows 的 Resolve-DnsName 能证明 v2rayN DNS 已经生效吗?
不能。Resolve-DnsName 检查的是 Windows 当前解析链路,系统代理、PAC 和 TUN 对 DNS 的接管范围不同。应同时查看 v2rayN 日志、实际分流出口,并用浏览器打开 DNS 验证页面进行交叉检查。
v2rayN 的 FakeIP 是否适合 Xray?
不能直接这样判断。v2rayN 官方界面说明将 FakeIP 标为仅支持 sing-box,且仅在 TUN 模式下有效。使用 Xray 时不要直接套用 sing-box 的 FakeIP 配置。
IPv6 优先导致连接等待很久怎么办?
先临时把 sing-box DNS 策略改为 prefer_ipv4 或 ipv4_only 做对照。如果问题消失,再检查本地网络、节点出口和目标的 IPv6 可达性;临时改成 IPv4 只是定位手段,不代表所有网络都应永久关闭 IPv6。