domain-name-system – unbound中的tcp-upstream不起作用.使用TCP查询上游DNS服务器真的在现实世界中工作吗?

前端之家收集整理的这篇文章主要介绍了domain-name-system – unbound中的tcp-upstream不起作用.使用TCP查询上游DNS服务器真的在现实世界中工作吗?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
今天我一直在unbound.conf中玩一些选项只是为了好玩.我启用了tcp-upstream,但它不适用于某些域.

操作系统:OpenBSD当前.不作承诺:1.4.19

启用tcp-upstream的示例:

--> dig www.google.com  

; <<>> DiG 9.4.2-P2 <<>> www.google.com
;; global options:  printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY,status: NOERROR,id: 30362
;; flags: qr rd ra; QUERY: 1,ANSWER: 5,AUTHORITY: 0,ADDITIONAL: 0

;; QUESTION SECTION:
;www.google.com.                        IN      A

;; ANSWER SECTION:
www.google.com.         43200   IN      A       173.194.34.210
www.google.com.         43200   IN      A       173.194.34.212
www.google.com.         43200   IN      A       173.194.34.211
www.google.com.         43200   IN      A       173.194.34.209
www.google.com.         43200   IN      A       173.194.34.208

;; Query time: 579 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Wed Feb 20 01:01:54 2013
;; MSG SIZE  rcvd: 112

--> dig www.facebook.com  

; <<>> DiG 9.4.2-P2 <<>> www.facebook.com
;; global options:  printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY,status: SERVFAIL,id: 48116
;; flags: qr rd ra; QUERY: 1,ANSWER: 0,ADDITIONAL: 0

;; QUESTION SECTION:
;www.facebook.com.              IN      A

;; Query time: 4529 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Wed Feb 20 01:02:05 2013
;; MSG SIZE  rcvd: 34

/ var / log / messages显示facebook查询的此错误

unbound: [29654:0] error: tcp connect: Connection refused

禁用tcp-upstream:

--> dig www.facebook.com  

; <<>> DiG 9.4.2-P2 <<>> www.facebook.com
;; global options:  printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY,id: 50721
;; flags: qr rd ra; QUERY: 1,ANSWER: 2,ADDITIONAL: 0

;; QUESTION SECTION:
;www.facebook.com.              IN      A

;; ANSWER SECTION:
www.facebook.com.       43200   IN      CNAME   star.c10r.facebook.com.
star.c10r.facebook.com. 43200   IN      A       173.252.101.26

;; Query time: 692 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Wed Feb 20 01:06:20 2013
;; MSG SIZE  rcvd: 74

我猜问题是有些服务器不允许tcp客户端.一些
解决此问题的方法? tcp-upstream真的可以在现实世界中使用吗?

我知道UDP是一种更好的DNS协议.我不需要回答“使用UDP代替”.我只是询问DNS over TCP的这个问题,以及这在现实世界中是否可靠.

解决方法

DNS在大多数情况下使用小消息和响应(只需对随机查询进行散乱,并考虑查询和响应的紧凑表示所需的空间).对于此用途,UDP是理想的(无连接设置/拆卸成本).有些查询具有笨重的答案(例如,查看nslookup -query = any google.com的输出),这些答案不适合最小的UDP数据报.通过TCP提出并回答了这些问题.

猜你在找的HTML相关文章