Closed r06ertray closed 2 months ago
这应该是预期的行为,对于非IP的DNS查询默认会丢弃。
在DNS出站中添加"nonIPQuery": "skip"
可以解决这个问题。
参考文档
这应该是预期的行为,对于非IP的DNS查询默认会丢弃。 在DNS出站中添加
"nonIPQuery": "skip"
可以解决这个问题。 参考文档
1、添加 "nonIPQuery": "skip"
后还是会出现 DNS request timed out.\n timeout was 2 seconds
提示。
2、下面这个配置文件更简单,直接使用可以复现问题
{
"log": {
"loglevel": "debug",
"dnsLog": true
},
"inbounds": [
{
"tag": "dns-in",
"port": 53,
"address": "127.0.0.1",
"protocol": "dokodemo-door",
"settings": {
"network": "udp",
"address": "114.114.114.114",
"port": 53
}
}
],
"outbounds": [
{
"protocol": "freedom"
},
{
"tag": "dns-out",
"protocol": "dns",
"nonIPQuery": "skip"
}
],
"dns": {
"servers": [
"114.114.114.114"
],
"queryStrategy": "UseIPv4",
"disableCache": true
},
"routing": {
"domainStrategy": "IPOnDemand",
"rules": [
{
"type": "field",
"outboundTag": "dns-out",
"inboundTag": [
"dns-in"
]
}
]
}
}
应该把"nonIPQuery": "skip"
加到settings
中。
{
"log": {
"loglevel": "debug",
"dnsLog": true
},
"inbounds": [
{
"tag": "dns-in",
"port": 53,
"address": "127.0.0.1",
"protocol": "dokodemo-door",
"settings": {
"network": "udp",
"address": "114.114.114.114",
"port": 53
}
}
],
"outbounds": [
{
"protocol": "freedom"
},
{
"tag": "dns-out",
"protocol": "dns",
"settings": {
"nonIPQuery": "skip"
}
}
],
"dns": {
"servers": [
"114.114.114.114"
],
"queryStrategy": "UseIPv4",
"disableCache": true
},
"routing": {
"domainStrategy": "IPOnDemand",
"rules": [
{
"type": "field",
"outboundTag": "dns-out",
"inboundTag": [
"dns-in"
]
}
]
}
}
OK
完整性要求
版本
Xray 1.8.16 9432a60 (go1.22.4 windows/amd64)
描述
在 Windows 10上,使用 xray 的dokodemo-door 监听本地 53 端口;在将流量发送给 xray 内部 DNS服务查询时,会出现超时卡顿问题。
重现方式
在 Widows 的 CMD 中,使用 nslookup 作 DNS 查询,会出现超时提示,如下:
注意, 1、如果将本地客户端中的 dns-in 直接路由到 proxy,则一切正常。 2、依次查询 google.com 和 youtube.com,服务端日志中只能看到一次 8.8.8.8 连接,不知为何。
客户端配置
客户端日志
域名替换成了 host.domain.com