![即使禁用,AD 上的 DNS 服务器也会记录查询](https://linux22.com/image/725919/%E5%8D%B3%E4%BD%BF%E7%A6%81%E7%94%A8%EF%BC%8CAD%20%E4%B8%8A%E7%9A%84%20DNS%20%E6%9C%8D%E5%8A%A1%E5%99%A8%E4%B9%9F%E4%BC%9A%E8%AE%B0%E5%BD%95%E6%9F%A5%E8%AF%A2.png)
我有两个运行 DNS 的 Server 2012 R2 DC。
DNS 服务器在 GUI 中关闭了调试日志记录,但我每天仍收到 500MB 的dns#TIMESTAMP#.log
文件C:\Windows\System32\DNS\Logs\
我运行了 PowerShellget-dnsserverdiagnostics
SaveLogsToPersistentStorage : True
Queries : False
Answers : False
Notifications : False
Update : False
QuestionTransactions : False
UnmatchedResponse : False
SendPackets : False
ReceivePackets : False
TcpPackets : False
UdpPackets : False
FullPackets : False
FilterIPAddressList :
EventLogLevel : 2
UseSystemEventLog : False
EnableLoggingToFile : True
EnableLogFileRollover : True
LogFilePath : c:\windows\system32\dns\logs\dns.log
MaxMBFileSize : 500000000
WriteThrough : False
EnableLoggingForLocalLookupEvent : True
EnableLoggingForPluginDllEvent : True
EnableLoggingForRecursiveLookupEvent : True
EnableLoggingForRemoteServerEvent : True
EnableLoggingForServerStartStopEvent : True
EnableLoggingForTombstoneEvent : True
EnableLoggingForZoneDataWriteEvent : True
EnableLoggingForZoneLoadingEvent : True
顶部的 Queries - FullPackets 部分似乎是 DNS 调试日志记录部分。在 GUI 中,EnableLoggingtoFile 和 SaveLogs 在哪里可以禁用?当然,每天 500MB 的文件会随着时间的推移堵塞硬盘。
答案1
我们发现,GUI DNS 调试日志属性控制顶部部分,查询 - FullPackets,但如果底部部分设置为 True,则即使SaveLogsToPersistentStorage
设置为 False,它们也会被记录。
通过比较启用和未启用底部部分的日志数据,可以确认这一点。启用标准 GUI DNS 调试日志属性数据的 DNS 日志如下所示:
8/17/2018 9:08:39 AM 1B70 PACKET 00000041E490A160 UDP Snd 8.8.4.4 524b Q [0001 D NOERROR] A (8)clients6(6)google(3)com(0)
8/17/2018 9:08:39 AM 1B70 PACKET 00000041E38B8170 UDP Snd 10.200.56.5 a3ae R Q [8081 DR NOERROR] A (8)clients6(6)google(3)com(0)
但更详细的日志如下所示:
8/15/2018 9:52:55 PM 1338 LOOKUP Writing AAAA records for node #DC#.local. (000000D5CAC007C0)
to additional section of packet 000000D5CC19A130
8/15/2018 9:52:55 PM 1338 LOOKUP Writing A records for node #DC#.local. (000000D5CAC004A0)
to additional section of packet 000000D5CC19A130
8/15/2018 9:52:55 PM 1338 LOOKUP Writing AAAA records for node #DC#.local. (000000D5CAC004A0)
to additional section of packet 000000D5CC19A130
8/15/2018 9:52:55 PM 1338 LOOKUP Writing A records for node #DC#.local. (000000D5CABFD330)
to additional section of packet 000000D5CC19A130
8/15/2018 9:52:55 PM 1338 LOOKUP Writing AAAA records for node #DC#.local. (000000D5CABFD330)
to additional section of packet 000000D5CC19A130
8/15/2018 9:52:55 PM 1338 LOOKUP Query name (1)1(1)0(1)0(3)127(7)in-addr(4)arpa(0)
zone 127.in-addr.arpa (type 1)
node 1.0.0.127.in-addr.arpa. (000000D5CABF6B40)
closest node 1.0.0.127.in-addr.arpa. (000000D5CABF6B40)
因此,我通过以下方式关闭了 Powershell 的高级日志记录选项:
set-dnsserverdiagnostics
-EnableLoggingForLocalLookupEvent False
-EnableLoggingForPluginDllEvent False
-EnableLoggingForRecursiveLookupEvent False
-EnableLoggingForRemoteServerEvent False
-EnableLoggingForServerStartStopEvent False
-EnableLoggingForTombstoneEvent False
-EnableLoggingForZoneDataWriteEvent False
-EnableLoggingForZoneLoadingEvent False
答案2
对于 Windows Server 2019 上的 DNS,除了 Greg 的建议外,我还必须将 LogFilePath 设置为 $null。在此之前,每当我启动 DNS 服务时,日志文件都会不断重新出现。
设置 DnsServerDiagnostics -LogFilePath $null