Linux系統下域名解析的配置文件是/etc/resolv.conf
cat /etc/resolv.conf # Generated by NetworkManager options single-request-reopen nameserver 114.114.114.114
LINUX DNS客戶端解析緩慢的其中一個原因是CentOS 6/CentOS 7總是需要等待AAAA(IPv6)的結果,即使關閉IPv6也沒什么卵用。CentOS 6/CentOS 7中的DNS解析器對於ipv4和ipv6都使用同一個socket接口(如上圖),在同時發出ipv4和ipv6解析請求后,只會收到一個ipv4的解析響應,此時socket將一處於“等待”模式,等待ipv6的解析響應,故導致解析緩慢;添加single-request-reopen后就可以重新打開一個新的socket接收ipv6的解析響應,而不影響ipv4的解析響應。
cat /etc/resolv.conf options timeout:1 attempts:1 rotate nameserver 114.114.114.114 nameserver 8.8.8.8 nameserver 1.1.1.1
rotate:這個參數的含義是隨機選取一個作為查詢的dns server,默認為按照順序從上往下。
timeout:查詢一個nameserver的超時時間,單位是秒。系統缺省是5,最大可以設為30。設置為1S超時即可,否則等AAAA回應就到地老天荒了,浪費時間。
attempts:這個是查詢的整個都嘗試一遍的次數,默認LINUX會發出好幾次DNS查詢包,讓查一次即可,浪費時間。