有两台v2ray
服务器 A 和 B,配置相似,但 A 作为中介(入站和出站均使用 vmess+websocket)来访问 B。
我想让 A 将传入的 DNS 查询发送到localhost:53
CoreDNS 正在监听的位置。该怎么做?
我在 A 中已经完成了这个:
...
{
"protocol": "dns",
"tag": "dns_out",
"settings": {
"address": "localhost",
"port": 53
}
}
],
"dns": {
"queryStrategy": "UseIPv4",
"servers":["localhost"],
"tag": "dns_inbound"}
},
"routing": {
"domainStrategy": "IPOnDemand",
"rules": [
{
"type": "field",
"port": 53,
"network": "tcp,udp",
"outboundTag": "dns_out"
}
]
}
}
但是为什么 v2ray A 总是选择默认路由(两条路由:协议 vmess 和协议 dns)并且不向 CoreDNS 发送 DNS 查询localhost:53
?
答案1
问题在于我为 dns 指定标签时多了一个 }。而 v2ray 对此没有意见,忽略了其余部分。