Skip to content

DNS解析第一个失败的情况下不会尝试第二个 #156

@darren

Description

@darren
  1. 你正在使用哪个版本的 V2Ray?(如果服务器和客户端使用了不同版本,请注明)
    d9f50f8

  2. 你看到的不正常的现象是什么?(请描述具体现象,比如访问超时,TLS 证书错误等)

配置的域名解析,解析vmwarefusion.github.io 失败

查询v2ray的结果

 dig @127.0.0.1 -p 15354 vmwarefusion.github.io

; <<>> DiG 9.11.5-P4-5.1+deb10u2-Debian <<>> @127.0.0.1 -p 15354 vmwarefusion.github.io
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: REFUSED, id: 31411
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;vmwarefusion.github.io.                IN      A

;; Query time: 4 msec
;; SERVER: 127.0.0.1#15354(127.0.0.1)
;; WHEN: Thu Sep 03 09:55:34 CST 2020
;; MSG SIZE  rcvd: 40

直接查询dns服务器的结果:(status为REFUSED, 即对应日志中rcode=5)

dig @123.123.123.123 vmwarefusion.github.io 

; <<>> DiG 9.11.5-P4-5.1+deb10u2-Debian <<>> @123.123.123.123 vmwarefusion.github.io
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: REFUSED, id: 25360
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
; COOKIE: 96941fdbbd1d79bd8be6b0c45f5050db298c8357136261de (good)
;; QUESTION SECTION:
;vmwarefusion.github.io.                IN      A

;; Query time: 4 msec
;; SERVER: 123.123.123.123#53(123.123.123.123)
;; WHEN: Thu Sep 03 10:11:39 CST 2020
;; MSG SIZE  rcvd: 79
  1. 你期待看到的正确表现是怎样的?

按照配置我理解, 当查询第一个dns无返回结果时,应该是不匹配

       "expectIPs": [
          "geoip:cn"
        ]

这个条件的,应该继续往下查询doh。

  1. 请附上你的配置(提交 Issue 前请隐藏服务器端IP地址)。

客户端配置:

{
  "log": {
    "loglevel": "info"
  },
  "inbounds": [
    {
      "listen": "127.0.0.1",
      "port": 15354,
      "tag": "dns-in",
      "protocol": "dokodemo-door",
      "settings": {
        "address": "1.1.1.1",
        "port": 53,
        "network": "tcp,udp"
      }
    }
  ],
  "outbounds": [
    {
      "protocol": "dns",
      "tag": "dns-out"
    },
    {
      "protocol": "freedom",
      "settings": {},
      "tag": "direct"
    }
  ],
  "dns": {
    "servers": [
      {
        "address": "123.123.123.123",
        "port": 53,
        "domains": [
          "geosite:cn"
        ],
        "expectIPs": [
          "geoip:cn"
        ]
      },
      "https+local://1.1.1.1/dns-query"
    ],
    "clientIp": "123.121.22.1",
    "tag": "dns-inbound"
  },
  "routing": {
    "strategy": "rules",
    "domainStrategy": "AsIs",
    "rules": [
      {
        "type": "field",
        "inboundTag": [
          "dns-in"
        ],
        "outboundTag": "dns-out"
      },
      {
        "type": "field",
        "inboundTag": [
          "dns-inbound"
        ],
        "outboundTag": "direct"
      }
    ]
  }
}
  1. 请附上出错时软件输出的错误日志。在 Linux 中,日志通常在 /var/log/v2ray/error.log 文件中。

客户端错误日志:

2020/09/03 09:44:36 [Info] v2ray.com/core/app/dns: DNS: created udp client inited for 123.123.123.123:53                                                                                                                                            
2020/09/03 09:44:36 [Info] v2ray.com/core/app/dns: DNS: created Local DOH client for https://1.1.1.1/dns-query                                                                                                                                      
2020/09/03 09:44:36 [Info] v2ray.com/core/transport/internet/tcp: listening TCP on 127.0.0.1:15354                                                                                                                                                  
2020/09/03 09:44:36 [Info] v2ray.com/core/transport/internet/udp: listening UDP on 127.0.0.1:15354                                                                                                                                                  
2020/09/03 09:44:36 [Warning] v2ray.com/core: V2Ray 4.27.5 started                                                                                                                                                                                  
2020/09/03 09:44:57 [Info] [4115359556] v2ray.com/core/proxy/dokodemo: received request for 127.0.0.1:39396                                                                                                                                         
2020/09/03 09:44:57 [Info] [4115359556] v2ray.com/core/app/dispatcher: taking detour [dns-out] for [udp:1.1.1.1:53]                                                                                                                                 
2020/09/03 09:44:57 [Info] [4115359556] v2ray.com/core/proxy/dns: handling DNS traffic to udp:1.1.1.1:53                                                                                                                                            
2020/09/03 09:44:57 127.0.0.1:39396 accepted udp:1.1.1.1:53 [dns-out]                                                                                                                                                                               
2020/09/03 09:44:57 [Info] v2ray.com/core/transport/internet/udp: establishing new connection for udp:123.123.123.123:53                                                                                                                            
2020/09/03 09:44:57 [Info] v2ray.com/core/app/dispatcher: taking detour [direct] for [udp:123.123.123.123:53]                                                                                                                                       
2020/09/03 09:44:57 [Info] v2ray.com/core/proxy/freedom: opening connection to udp:123.123.123.123:53                                                                                                                                               
2020/09/03 09:44:57 [Info] v2ray.com/core/app/dns: UDP:123.123.123.123:53 got answer: vmwarefusion.github.io. TypeA -> [] 4.589518ms                                                                                                                
2020/09/03 09:44:57 [Info] v2ray.com/core/app/dns: failed to lookup ip for domain vmwarefusion.github.io at server UDP:123.123.123.123:53 > rcode: 5                                                                                                
2020/09/03 09:45:05 [Info] v2ray.com/core/app/proxyman/outbound: failed to process outbound traffic > v2ray.com/core/proxy/freedom: connection ends > context canceled                                                                              
2020/09/03 09:45:05 [Info] v2ray.com/core/transport/internet/udp: failed to handle UDP input > io: read/write on closed pipe                                                                                                                        
2020/09/03 09:45:21 [Info] [4164880411] v2ray.com/core/proxy/dokodemo: received request for 127.0.0.1:40739          

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions