DNS伺服器的維護與故障排除

2021-09-07 14:59:26 字數 3974 閱讀 7095

①unbound-checkconf:用於檢查unbound伺服器配置檔案的語法錯誤

②unbound-control:是乙個用於控制遠端unbound伺服器的工具。

③nscd(name service cache daemon,名稱服務快取管理器):一種專門對dns快取進行管理的工具(rhel7中預設未安裝,可使用yum -y install nscd命令安裝)。

④dig(domain information groper,域資訊搜尋器):一種用於詢問dns伺服器的命令工具,他執行dns搜尋,顯示從接收請求的網域名稱伺服器返回的答覆。

dig [@server] [type] [name] [-x addr] [-p port#]

其中:server——待查詢dns伺服器的名稱或ip位址,若預設此項則根據本機/etc/resolv.conf檔案中列舉的dns伺服器做出應答。

name——指定要查詢的網域名稱。

type——指定要查詢的記錄型別,如a、any、mx、ns、soa等型別,預設值為a。

-b address——指定通過哪塊網絡卡(ip位址)進行查詢,適用於多網絡卡環境下指定網絡卡。

-x address——表示要對指定的ip位址進行反向查詢。

-p port——指定dns伺服器所使用的埠.用於當伺服器使用非標準dns埠的狀況。

dig命令的輸出資訊包括以下內容:

●第一行:顯示當前dig的版本和查詢內容。

●第三行:全域性設定選項為直接在視窗顯示結果。

●第四行到第六行:顯示查詢結果的資訊。

●question section(查詢段),顯示查詢的條件和物件。

●answer section(回應段):顯示從伺服器上面得到的回答 202.132.10.161。

●最後面是其它報告資訊,如查詢花費(微秒)、查詢伺服器的ip位址、查詢的時間以及回應資料報的大小。

其主要的故障原因有:

①客戶端指派了不正確的dns伺服器的ip位址;

②防火牆規則阻止了53號埠的dns流量;

③unbound伺服器配置檔案出錯;

④dns快取滯後:當計算機訪問某個**或解析網域名稱時,該解析條目會儲存在計算機的dns快取中,但有時候會出現dns伺服器中更改了ip位址,而使用者本地的dns快取資訊沒有改變,這樣就會出現dns解析故障。

⑤dns劫持:又稱網域名稱劫持,是指在劫持的網路範圍內攔截網域名稱解析的請求,分析請求的網域名稱,把審查範圍以外的請求放行,否則返回假的ip位址或者什麼都不做使請求失去響應,其效果就是對特定的網路不能反應或訪問的是假**(釣魚**),從而實現竊取資料或者破壞原有正常服務的目的。

名稱dns伺服器ip位址

名稱dns伺服器ip位址

dnspod dns+

119.29.29.29、182.254.116.116

114 dns

114.114.114.114、114.114.115.115

阿里 alidns

223.5.5.5、223.6.6.6

google dns

8.8.8.8、8.8.4.4

v2ex dns

199.91.73.222、78.79.131.110

opendns

208.67.222.222、208.67.220.220

cnnic sdns

1.2.4.8、210.2.4.8

openerdns

42.120.21.30

dns派

101.226.4.6、218.30.118.6

180.76.76.76

在linux系統下dns快取滯後的故障排除

步驟1:檢視初始狀態的unbound伺服器的dns快取資料。

[root@dns2 ~]# unbound-control dump_cache

start_rrset_cache

end_rrset_cache

start_msg_cache

end_msg_c

步驟2:在客戶端上,使用dig命令向純快取dns伺服器請求解析兩條資源記錄。

[root@client ~]# dig @dns2.dyzx.edu a www.dyzx.edu

www.dyzx.edu. 3600 in a 192.168.8.3

[root@client ~]# dig @dns2.dyzx.edu cname ftp.dyzx.edu

ftp.dyzx.edu. 3600 in cname www.dyzx.edu.

步驟3:在快取dns伺服器端,顯示查詢後dns快取資訊。將當前unbound伺服器的dns快取資料轉儲到指定的檔案中

[root@dns2 ~]# unbound-control dump_cache

start_rrset_cache

;rrset 3500 1 0 8 3

ftp.dyzx.edu. 3500 in cname www.dyzx.edu.

;rrset 3363 1 0 8 3

www.dyzx.edu. 3363 in a 192.168.8.3

end_rrset_cache

start_msg_cache

msg ftp.dyzx.edu. in cname 33152 1 3500 3 1 0 0

ftp.dyzx.edu. in cname 0

msg www.dyzx.edu. in a 33152 1 3363 3 1 0 0

www.dyzx.edu. in a 0

end_msg_cache

eof

步驟4:在伺服器端,對dns快取進行整理,刪除快取中陳舊或錯誤的資源記錄→將整理後dns快取資訊轉儲到指定文字檔案,以備後用→重啟dns服務後系統會自動清除所有dns快取資訊。

[root@dns2 ~]# unbound-control flush www.dyzx.edu //清除快取中指定的資源記錄

ok[root@dns2 ~]# unbound-control flush_zone dyzx.edu //清除快取中指定區域的全部資源記錄

ok removed 3 rrsets, 3 messages and 0 key entries

[root@dns2 ~]# unbound-control dump_cache > /tmp/dns_cache.txt

[root@dns2 ~]# systemctl restart unbound.service

[root@dns2 ~]# unbound-control dump_cache

start_rrset_cache

end_rrset_cache

start_msg_cache

end_msg_cache

eof

步驟5:載入unbound快取資料,使儲存的dns快取資料回填到快取中→檢視回填後的資訊。

//從檔案讀取資料以填充快取

[root@dns2 ~]# unbound-control load_cache [root@dns2 ~]# unbound-control dump_cache

①在linux下還可以通過安裝nscd服務,並使用「nscd -i hosts」命令或重新啟動nscd服務命令「systemctl restart nscd」來清除dns快取。

②在windows客戶端中dns快取滯後的故障,可通過重新整理dns快取來排除,其重新整理過程為:同時按下【windows徽標+r】組合鍵→在開啟的【執行】對話方塊中輸入「cmd」命令→在開啟的命令列視窗中輸入「ipconfig /displaydns」命令檢視本機的dns快取資訊→輸入「ipconfig /flushdns」命令重新整理dns快取資訊。

③windows下的dns快取是由後台程序控制的,可以在【控制面板】→【服務】中將【dns client】禁用,從而取消windows的dns快取功能,此後的查詢請求都將直接查詢dns伺服器而忽略本機的dns快取了。

用strace排除Linux伺服器故障

quote 用strace排除linux伺服器故障 linuxeden q q 群 165854196歡迎加入 strace是乙個有用的小工具 大多數linux系統預設已經安裝 可以通過跟蹤系統呼叫來讓你知道乙個程式在後台所做的事情。strace是乙個基礎的除錯工具 但是即便你不是在跟蹤乙個問題的時...

排除伺服器上不網的故障

排查無法上網的原因 通常伺服器上不了網,我們經過以下幾步來讓伺服器上網 1.檢視能否上網 ping 不通,那恭喜你,你是上不了網的,接下來我們進行第二步 2.檢視伺服器的網絡卡,這裡用的命名是vim etc sysconfig network scripts ifcfg eth0 evice eth...

Linux DHCP伺服器維護修改DNS伺服器

linux 做閘道器,由於是pppoe撥號,遇到過dns伺服器變動的情況導致dhcp獲得的dns失敗的案例。由於dhcpd平時承擔mac位址繫結工作,所以配置檔案很大。今天修改了一下,可以使用。需求1.雙網絡卡,dhcp平時放在192.168.0.0網段,另外乙個網絡卡不用 2.根據pppoe撥號軟...