如何處理阿里云CentOS DNS解析超時
發(fā)布時間:2018-02-02 點擊數(shù):5548
問題現(xiàn)象
CentOS 實例出現(xiàn) DNS 解析超時的情況。
?原因分析
因 CentOS 6 和 CentOS 7 的 DNS 解析機制變動所致,2017 年 2 月 22 日以前創(chuàng)建的 ECS 實例或使用 2017 年 2 月 22 日前的自定義鏡像創(chuàng)建的 CentOS 6 和 CentOS7 實例可能出現(xiàn) DNS 解析超時的情況。
?解決方法
- 下載腳本 fix_dns.sh。
- 將下載的腳本放到 /tmp 目錄下。
- 執(zhí)行命令 bash /tmp/fix_dns.sh 運行腳本。
?腳本作用
判斷 DNS 解析文件 /etc/resolv.conf 中是否有 options > single-request-reopen 配置。CentOS 6 和 CentOS 7 的 DNS 解析機制中,發(fā)送 IPV4 DNS 和 IPV6 DNS 請求使用了相同的網(wǎng)絡(luò)五元組,此時應(yīng)開啟 single-request-reopen 配置,一旦出現(xiàn)同一 socket 發(fā)送的兩次請求處理,解析端發(fā)送第一次請求后會關(guān)閉 socket,并在發(fā)送第二次請求前打開新的 socket。配置成功后不需要重啟實例即可生效。
?腳本邏輯
-
判斷實例系統(tǒng)是否為 CentOS 系統(tǒng):
- 實例為非 CentOS 系統(tǒng),如 Ubuntu 和 Debian,腳本停止工作。
- 實例為 CentOS 系統(tǒng),繼續(xù)工作。
-
查詢解析文件 /etc/resolv.conf 中 options 配置情況。
-
如果不存在 options 配置,默認(rèn)使用阿里云 options 配置:options timeout:2 attempts:3 rotate single-request-reopen。
-
如果存在 options 配置:
- 不存在 single-request-reopen,在 options 配置中追加該項。
- 存在 single-request-reopen,則腳本停止工作,不更改 DNS nameserver 的配置。
-
如果不存在 options 配置,默認(rèn)使用阿里云 options 配置:options timeout:2 attempts:3 rotate single-request-reopen。
如問題還未解決,請提交工單聯(lián)系阿里云。