MailVSR MailVSR 三分鐘搞定你的企業網站

DNS伺服器日誌

DNS伺服器日誌是內建 DNS 服務(named/BIND)的記錄,並且刻意把「查詢記錄」與「系統事件」分成兩個項目,避免大量的查詢紀錄蓋掉真正重要的服務訊息。當您要確認某個網域是否真的被查詢過、某台機器為什麼解析不到名稱,或要看 DNS 服務本身有沒有載入錯誤時,會使用這一頁。

什麼時候會用到這一頁:

  • 外部使用者說「你們的網站/郵件主機連不上」,想確認 DNS 查詢是否有進來、是否回應正常
  • 剛新增或修改了一筆 DNS 記錄,想確認查詢是否已經生效
  • 郵件被退信且原因與 DNS 有關(例如找不到對方主機、反解查不到)
  • DNS 服務啟動失敗或轄區載入失敗,需要看錯誤訊息
  • 懷疑有人對 DNS 服務做大量異常查詢

日誌項目

「記錄」分頁的「日誌項目」可切換兩支日誌,兩者都位於 /var/log/named:

  • DNS 查詢記錄 (query.log):每一筆查詢的來源、查詢名稱與類型,用來確認「某個名稱有沒有被查過、被誰查、查什麼類型」
  • DNS 系統事件 (named.log):服務啟動、轄區(zone)載入、查詢被拒等系統層級訊息。排查服務本身問題時看這一支

切換日誌項目時,系統會自動選取該項目的第一個檔案。

列表與查詢

選定日誌項目後,下方的「日誌檔案」會列出該項目目前的檔案與輪替舊檔(含 .gz 壓縮檔)。

  • 表格只有「日誌內容」一欄,一列就是一行日誌
  • 預設順序:由新到舊,可切換排序方向
  • 每頁筆數:預設 50 筆
  • 搜尋:即時全文檢索,符合的關鍵字會反白
  • 搜尋語法:關鍵字1,關鍵字2 為 OR(任一命中)、關鍵字1+關鍵字2 為 AND(兩者都命中);逗號與加號不要混用,混用時整串會被當成一個關鍵字原樣比對
  • 沒有資料時顯示「暫無 DNS 日誌資料」

實際最好用的關鍵字:

想查什麼 搜尋什麼
某個網域被查過幾次 網域名稱(例:yourcompany.com)
某台機器的查詢 它的 IP(例:203.0.113.8)
某種類型的查詢 記錄類型(MX、A、AAAA、TXT、PTR)
查詢被拒 refused、denied
轄區載入問題 zone、loaded、error

組合範例:

  • 只看某網域的 MX 查詢:yourcompany.com+MX
  • 同時看兩種記錄類型:MX,TXT

查詢記錄的成長速度很快(站上每一台機器、每一個郵件連線都可能產生查詢),請務必先用關鍵字縮小範圍再逐頁看,不要直接從第一頁翻。

匯出與刪除

日誌檔案選擇器旁有兩個共用按鈕:

  • 匯出:把目前選取的日誌檔下載。純文字以純文字下載、.gz 維持壓縮格式;檔名會自動加上下載時間戳,不會覆蓋舊檔
  • 刪除:輪替舊檔整檔刪除(確認視窗「確定要刪除日誌檔案「:file」嗎?」);現役檔只清空內容、保留檔案(確認視窗「此為目前正在寫入的日誌,刪除將僅清空其內容(檔案保留)。確定要清空「:file」嗎?」)
  • 成功顯示「日誌檔案「:file」內容已清空」或「日誌檔案「:file」已刪除」;失敗顯示「刪除日誌檔案失敗」
  • 刪除日誌的動作本身也會寫入「操作日誌」

設定(輪替)

「設定」分頁的輪替參數由 query.log 與 named.log 共用同一組設定:

  • 記錄週期:每週(預設)或每天
  • 保留天數/保留週數:依週期決定單位
  • 單檔大小上限(MB):超過就提前輪替
  • 壓縮 rotate 檔:舊檔以 gzip 壓縮

調整後按「儲存設定」,成功顯示「logrotate 設定已儲存」,失敗顯示「logrotate 設定儲存失敗」。

空間使用

「空間使用」分頁會依日誌項目分組,列出各檔案的檔名、最後修改時間、空間占用,並顯示「總計(N 個檔案)」,清單依時間倒序(新→舊)。沒有檔案時顯示「目前沒有日誌檔。」;讀取失敗時顯示「讀取失敗」。

查詢記錄的成長速度取決於站上實際的解析量,請留意總計數字;若成長過快,優先調整的是 query.log 的保留份數(named.log 通常很小,保留久一點沒關係)。

常見情境與判讀

  • 「外部連不上我們的網站/郵件」:先到 query.log 搜尋您的網域。若完全沒有查詢記錄,代表查詢根本沒送到這台 DNS(上游或對方的 DNS 設定問題);若有查詢記錄,接著看 named.log 有沒有載入錯誤或回應被拒
  • 「剛改了 DNS 記錄,什麼時候生效」:在 query.log 搜尋該名稱,確認現在回應的是否為新值;同時注意其他 DNS 伺服器可能有快取,實際生效時間取決於該記錄的 TTL
  • 「服務啟動後就沒有回應」:到 named.log 看啟動過程,找 zone、loaded 或 error 相關訊息。常見原因是轄區記錄內容有語法問題(例如 CNAME 設在 @、TXT 值含特殊字元)
  • 「某些查詢被拒絕」:在 named.log 搜尋 refused、denied。這通常與允許查詢的來源範圍設定有關,請到「服務管理 / DNS伺服器設定」確認
  • 「懷疑有人對 DNS 大量查詢」:在 query.log 用單一來源 IP 搜尋,短時間內出現大量不同名稱就是警訊;這類異常也可能觸發自動防禦,請看「防火牆設定 / 自動防禦設定」

注意事項

  • 查詢記錄的成長速度取決於站上實際的解析量,請留意「空間使用」的總計,必要時縮短保留週數
  • 這一頁只負責檢視;DNS 服務的啟用、監聽位址與轄區記錄都在「服務管理 / DNS伺服器設定」維護
  • named.log 同時是「防火牆設定 / 自動防禦設定」中 DNS 防禦項目的判斷來源(查詢被拒的異常行為);要查看或解除封鎖請到該頁的「已封鎖清單」
  • 若 DNS 服務未曾啟動,這兩個項目都不會有資料(檔案清單會是空的)
  • 這一頁記錄的是「本機這台 DNS 服務」的活動,不是您向 DNS 代管商申請的網域設定;對外的網域記錄仍以您的 DNS 代管商或上層 DNS 為準