全部產品
Search
文件中心

Alibaba Cloud DNS:內網DNS解析日誌轉存SLS

更新時間:Sep 08, 2026
重要

您只能對已經開啟了流量分析的Region、VPC做日誌轉存。如果關閉流量分析服務,會導致日誌轉存服務沒有日誌資料。具體請參考開啟/關閉/設定流量分析。

應用情境

出於合規和安全性的考慮,公司通常要求對部落格進行儲存和分析。通過內網DNS日誌,可以清晰瞭解企業內網網域名稱的使用方式,協助企業對內網使用者行為進行審計,及時發現潛在的安全問題。

什麼是內網網域名稱解析日誌

內網網域名稱解析日誌(Privatezone Resolution Log)記錄了指定阿里雲UID下所有VPC網路內終端產生的DNS網域名稱解析請求和應答(包括請求的地區、請求的VPC ID、源IP地址、目的IP地址(DNS服務地址)、查詢的網域名稱、記錄類型、應答的結果等),終端請求的這些網域名稱既包含了配置在PrivateZone上的內網權威網域名稱,也包含了外部公網網域名稱。為了滿足使用者可以快速、簡單實現多帳號、多地區情境下內網DNS日誌的採集、管理、中心化查詢分析等需求,DNS與SLS聯合開發,在SLS日誌審計應用中發布一鍵開啟內網DNS日誌的功能。

內網DNS日誌記錄的是內網終端的網域名稱解析請求和應答記錄,請求的網域名稱主要來自於以下四類:

1、內建權威網域名稱

內網DNS解析是基於阿里雲Virtual Private Cloud(Virtual Private Cloud)環境的私人DNS服務。該服務允許您在一個或多個VPC中將自訂私人網域名稱映射到IP地址。通過內網DNS解析,您可以方便地使用自訂私人網域名稱來管理VPC中的ECS主機名稱、SLB、OSS等阿里雲資源,而這些私人網域名稱在VPC之外將無法訪問。此外,您還可以通過專線或VPN等串連方式,將您的VPC與傳統資料中心相連,實現傳統資料中心與阿里雲VPC之間通過私人網域名稱進行資源互相訪問。

2、配置在飛天雲平台DNS(雲底座DNS)上的雲產品執行個體網域名稱

雲底座DNS,是內建於阿里雲飛天平台的底層DNS,阿里雲的所有雲產品提供的執行個體網域名稱,都是通過雲底座DNS進行解析的。

3、轉寄到外部DNS上的外部網域名稱

外部DNS,通常指的是您資料中心的內網DNS系統,通過轉寄管理的功能,將來自VPC的網域名稱解析請求,轉寄到您資料中心的DNS系統進行解析,從而實現阿里雲VPC的ECS主機可以訪問您資料中心的應用網域名稱。

4、遞迴到外部公網權威DNS上的公網網域名稱

公網權威DNS,是特定公網網域名稱(例如“example.com”)在網域名稱註冊局或者網域名稱註冊商處所設定的DNS伺服器。公網權威DNS可以為根網域名稱、頂級網域名稱和其他各級網域名稱提供網域名稱權威資料的管理和解析服務。公網權威DNS伺服器只對自己所擁有的網域名稱進行網域名稱解析,對於不是自己的網域名稱則拒絕訪問。

開通內網網域名稱解析日誌轉存SLS

內網網域名稱解析日誌轉存 SLS 僅對白名單帳號開放。如需配置轉存,請聯絡您的阿里雲商務經理或通過提交工單申請加入白名單。

  1. 訪問Alibaba Cloud DNS-內網網域名稱解析。

  2. 開啟右上方的 Private Zone 流量分析開關。若已開啟,則點擊開關右側的设置按鈕。

  3. 完成表單填寫並提交。

    表單項

    說明

    地區Region列表

    選擇需要開啟流量分析的地區。

    Virtual Private Cloud列表

    根據選擇的地區,展示地區下可選擇的VPC。若該選項為空白,則代表預設分析選定地區的所有VPC的流量。

    部署地區

    日誌分析伺服器部署地區,無需使用者選擇。流量分析開啟後,會在部署地分析解析日誌資料。

    日誌儲存與分析

    開通內網網域名稱解析日誌轉存 SLS 可選擇:

    • 仅转存阿里云日志服务 SLS:Alibaba Cloud DNS不提供儲存和分析服務,直接轉存到SLS。

    • Private Zone 存储并统计分析,同时转存阿里云日志服务 SLS:Alibaba Cloud DNS的內網網域名稱解析服務儲存並提供報表分析服務同時轉存一份日誌到SLS。

    转存配置

    為每個需要轉存的地區填寫 SLS 相關資訊:

    • 地域:選擇日誌儲存地區。

    • 日志服务Project:建立Project或選擇已有的Project。

    • 日志服务Logstore:建立Logstore或選擇已有的Logstore。

  4. 單擊確定儲存配置。儲存後流量分析保持開啟狀態。

查看內網網域名稱解析日誌轉存明細

  1. 登入Log Service控制台。

  2. 在 Project 列表中選擇 DNS 控制台轉存配置中指定的 Project。

  3. 在左側日誌庫列表,選擇轉存配置中指定的 Logstore,查看解析日誌明細。

內網網域名稱解析日誌欄位資訊

1、請求日誌樣本

日誌欄位

說明

樣本資料(僅做格式參考)

dns_msg_flags

DNS資訊Flags:

  • RD:表示期望進行遞迴查詢;

  • AD:請求報文一般不會攜帶此欄位,如果攜帶此標誌位,沒有實際意義。

  • CD:表示應答伺服器需應答,不管DNSSEC驗證是否通過;

RD

dns_msg_id

DNS資訊ID,表示本次DNS查詢的唯一識別碼

30914

dst_addr

目的IP地址

100.100.2.136

dst_port

目的連接埠

53

ecs_hostname

ECS 主機名稱

iZbp1b1mx9fhe34k*****

ecs_id

ECS 執行個體ID

i-bp1b1mx9fhe34kh****

module_type

模組日誌類型,請求日誌只有全域日誌:

  • GLOBAL:全域

GLOBAL

query_name

查詢網域名稱名稱

www.example.com.

query_type

查詢記錄類型,例如A,AAAA,CNAME,TXT,MX等

A

region_id

地區

cn-shanghai

src_addr

源IP地址

192.168.0.1

src_port

源連接埠

42071

transport

傳輸協議

UDP

user_id

阿里雲帳號ID

139749398683****

vpc_id

VPC執行個體ID

vpc-bp1eyy43516itw78****

edns

DNS擴充協議,查詢/應答日誌可能包含

"flags: DO udp: 1408 CLIENT-SUBNET: 1.1.XX.XX/32/24"

2、全域應答日誌樣本

日誌欄位

說明

樣本資料(僅做格式參考)

answer_rrset

回答資源記錄集

Json array:

["www.example.com. 600 A 192.168.1.1", "www.example.com 600 A 192.168.1.2", ]

authority_rrset

權威資源記錄集

Json array:

["example.com. 600 SOA ns1.example.com. hostmaster.example.com. 2023010101 3600 1200 3600 360" ]

additional_rrset

其他資源記錄集

Json array:

["ns1.example.com. 600 A 100.100.2.136"]

dns_msg_flags

  • QR:表示服務端響應包;

  • RD:表示期望進行遞迴查詢;

  • AA:表示是權威伺服器應答;

  • TC:表示報文過長被截斷;

  • AD:表示已驗證DNSSEC數位簽章;

  • CD:表示應答伺服器需應答,不管DNSSEC驗證是否通過;

QR

dns_msg_id

DNS資訊ID,表示本次DNS查詢的唯一識別碼

30914

dst_addr

目的IP地址

192.168.0.1

dst_port

目的連接埠

42071

ecs_hostname

ECS 主機名稱

iZbp1b1mx9fhe34k*****

ecs_id

ECS 執行個體ID

i-bp1b1mx9fhe34kh****

module_type

模組日誌類型:

  • GLOBAL:全域

GLOBAL

query_name

查詢網域名稱名稱

www.example.com.

query_type

查詢記錄類型,例如A,AAAA,CNAME,TXT,MX等

A

rcode

響應狀態代碼:

  • 0: NOERROR,沒有錯誤查詢網域名稱成功

  • 1: FORMERR,格式錯誤,DNS 無法解析該請求

  • 2: SERVFAIL,DNS 伺服器遇到內部錯誤或者逾時引起的解析失敗

  • 3: NXDOMAIN,網域名稱未找到

  • 4: NOTIMP,伺服器不支援指定的作業碼

  • 5: REFUSED,DNS伺服器因為策略或者安全原因拒絕應答

0

region_id

地區

cn-shanghai

resolve_path

解析路徑,僅全域應答日誌包含。使用半形逗號“,”分割,分別表示權威加速區、權威普通區、緩衝模組、轉寄模組、遞迴模組

1:表示經過該模組

0:表示跳過該模組

當涉及多級CNAME解析時,可能會出現多位為“1”的情況。

1,0,0,0,0

rt

響應時延:

  • 全域應答rt表示整個查詢到應答的時延;

  • 模組日誌rt表示在模組內部消耗的時延

10ms

src_addr

源IP地址

100.100.2.136

src_port

源連接埠

53

transport

傳輸協議

UDP

user_id

阿里雲帳號ID

139749398683****

vpc_id

VPC執行個體ID

vpc-bp1eyy43516itw78****

edns

DNS擴充協議,查詢/應答日誌可能包含

"flags: DO udp: 1408 CLIENT-SUBNET: 1.1.XX.XX/32/24"

3、模組應答日誌樣本

日誌欄位

說明

樣本資料(僅做格式參考)

answer_rrset

回答資源記錄集

Json array:

["www.example.com. 600 A 192.168.1.1", "www.example.com 600 A 192.168.1.2", ]

authority_rrset

權威資源記錄集

Json array:

["example.com. 600 SOA ns1.example.com. hostmaster.example.com. 2023010101 3600 1200 3600 360" ]

additional_rrset

其他資源記錄集

Json array:

["ns1.example.com. 600 A 100.100.2.136"]

dns_msg_id

DNS資訊ID,表示本次DNS查詢的唯一識別碼

30914

dst_addr

目的IP地址

100.100.2.136

dst_port

目的連接埠

53

ecs_hostname

ECS 主機名稱

iZbp1b1mx9fhe34k*****

ecs_id

ECS 執行個體ID

i-bp1b1mx9fhe34kh****

module_type

模組日誌類型:

  • AUTH_FAST:權威加速區

  • AUTH_SLOW:權威普通區

  • FORWARD:轉寄模組

  • CACHE:緩衝模組

  • RECURSION:遞迴模組

AUTH_FAST

query_name

查詢網域名稱名稱

www.example.com.

query_type

查詢記錄類型,例如A,AAAA,CNAME,TXT,MX等

A

rcode

響應狀態代碼:

  • 0: NOERROR,沒有錯誤查詢網域名稱成功

  • 1: FORMERR,格式錯誤,DNS 無法解析該請求

  • 2: SERVFAIL,DNS 伺服器遇到內部錯誤或者逾時引起的解析失敗

  • 3: NXDOMAIN,網域名稱未找到

  • 4: NOTIMP,伺服器不支援指定的作業碼

  • 5: REFUSED,DNS伺服器因為策略或者安全原因拒絕應答

0

region_id

地區

cn-shanghai

rt

響應時延:

  • 全域應答rt表示整個查詢到應答的時延;

  • 模組日誌rt表示在模組內部消耗的時延

1ms

src_addr

源IP地址

192.168.0.1

src_port

源連接埠

42071

transport

傳輸協議

UDP

user_id

阿里雲帳號ID

139749398683****

vpc_id

VPC執行個體ID

vpc-bp1eyy43516itw78****

edns

DNS擴充協議,查詢/應答日誌可能包含

"flags: DO udp: 1408 CLIENT-SUBNET: 1.1.XX.XX/32/24"

日誌分析最佳實務

下面列舉幾類常見的內網DNS日誌的查詢分析情境,使用者也可以根據實際需求自訂查詢分析語句。此外,使用者還可以將SQL語句查詢結果添加到儀錶盤、或者另存新檔快速查詢、另存新檔警示等進行後續分析處理。

1、DNS解析結果類

某時間段內,指定VPC下,不同查詢網域名稱的DNS請求量分布。

* and vpc_id: vpc-2ze9dducyc3t6p8aeksb3 |select count(*) as total_req, query_name group by query_name

執行上述查詢語句後,在統計圖表頁簽下以餅圖形式展示各查詢網域名稱的請求量佔比分布。

2、DNS解析RT類

某時間段內,指定VPC,指定網域名稱,指定queryType的DNS解析RT統計分析。

* and vpc_id: vpc-2ze9dducyc3t6p8aeksb3 and query_name: "metrichub-cn-beijing.aliyun.com." and query_type: A | select stddev(__time__) as RT, dns_msg_id GROUP by dns_msg_id

查詢結果為兩列資料表格,列名分別為 RT 和 dns_msg_id,其中所有記錄的 RT 值均為 0.0,表示按 dns_msg_id 分組後各組時間標準差為 0,共返回 100 條記錄。

3、解析異常分析

客戶的阿里雲ECS伺服器查詢網域名稱時存在解析異常情況,客戶開啟了內網網域名稱解析日誌並將相關日誌轉存至SLS,進一步分析解析異常原因。在SLS日誌記錄內可能會同時存在如下三種日誌內容:請求日誌、全域應答日誌、模組應答日誌。

分析過程如下:

  1. 可以通過src_port和dns_msg_id參數,識別過濾一次解析請求的全部日誌內容。

  2. 可以通過如下欄位區分3種日誌的區別:

    1. rt欄位為空白的是請求日誌

    2. resolve_path為空白的是模組應答日誌

    3. 不為空白的是全域應答日誌

  3. 異常結果樣本

    根據前面的區分規則,第一條為請求日誌,第二條為模組應答日誌,第三條為全域應答日誌。

    三條日誌的 dns_msg_id 均為 59241,其中第一條 module_type 為 GLOBAL、dns_msg_flags 為 RD;第二條 module_type 為 RECURSION、dns_msg_flags 為空白;第三條 module_type 為 GLOBAL、dns_msg_flags 為 QR RD,dst_addr 為 100.100.2.136。

    1. 用戶端發起DNS解析請求,表示期望進行遞迴查詢;

    2. 向遞迴模組發起請求,遞迴模組解析失敗;

    3. 100.100.2.136 返回用戶端結果,解析失敗。

  4. 正常結果樣本

    DNS 內網日誌查詢結果表格中,關鍵字段及其正常值包括:_source_ 為 log_dispatch,_topic_ 為 dns_intranet_log,module_type 為 GLOBAL 或 CACHE,query_type 為 A,dst_addr 為 100.100.2.136,dst_port 為 53,transport 為 UDP,answer_rset 包含 CNAME 解析記錄,node_id 為 cn-shanghai。

    1. 用戶端發起DNS解析請求,表示期望進行遞迴查詢;

    2. 向遞迴模組發起請求,遞迴模組解析成功;

    3. 100.100.2.136返回用戶端解析結果。