<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>DNSServer.DebugLogParser on PowerShell 模块 DNSServer.DebugLogParser</title><link>https://DNSServerDebugLogParser.andibellstedt.com/v1.2.0.0/cn/</link><description>Recent content in DNSServer.DebugLogParser on PowerShell 模块 DNSServer.DebugLogParser</description><generator>Hugo</generator><language>cn</language><lastBuildDate>Mon, 25 May 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://DNSServerDebugLogParser.andibellstedt.com/v1.2.0.0/cn/index.xml" rel="self" type="application/rss+xml"/><item><title>概述</title><link>https://DNSServerDebugLogParser.andibellstedt.com/v1.2.0.0/cn/docs/01-overview/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://DNSServerDebugLogParser.andibellstedt.com/v1.2.0.0/cn/docs/01-overview/</guid><description>&lt;p&gt;DNSServer.DebugLogParser 是一个 PowerShell 模块，可将 Windows DNS 服务器调试日志文件转换为结构化、可分析的 CSV 数据，用于安全分析、性能监控、故障排除和合规报告。&lt;/p&gt;
&lt;h2 id="什么是-dns-调试日志"&gt;什么是 DNS 调试日志？&lt;/h2&gt;
&lt;p&gt;DNS 调试日志是 Windows DNS 服务器的一项功能，用于记录有关 DNS 操作的详细信息。启用后，DNS 服务器会将日志条目写入文本文件（通常为 &lt;code&gt;dns.log&lt;/code&gt;），该文件位于 DNS 服务器的目录中。&lt;/p&gt;
&lt;p&gt;每条日志记录包含最多 16 个字段，包括：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;查询的日期和时间&lt;/li&gt;
&lt;li&gt;使用的协议（UDP 或 TCP）&lt;/li&gt;
&lt;li&gt;方向（发送或接收）&lt;/li&gt;
&lt;li&gt;客户端 IP 地址&lt;/li&gt;
&lt;li&gt;查询类型（A、AAAA、MX、PTR 等）&lt;/li&gt;
&lt;li&gt;查询的域名&lt;/li&gt;
&lt;li&gt;响应代码（NOERROR、NXDOMAIN 等）&lt;/li&gt;
&lt;li&gt;查询标志和选项&lt;/li&gt;
&lt;li&gt;响应中的 IP 地址（针对成功查询）&lt;/li&gt;
&lt;li&gt;端口号及其他技术细节&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="为什么要解析-dns-调试日志"&gt;为什么要解析 DNS 调试日志？&lt;/h2&gt;
&lt;p&gt;DNS 日志对于以下方面至关重要：&lt;/p&gt;
&lt;h3 id="故障排除"&gt;故障排除&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;诊断名称解析失败&lt;/li&gt;
&lt;li&gt;识别配置错误的客户端或应用程序&lt;/li&gt;
&lt;li&gt;追踪问题查询的来源&lt;/li&gt;
&lt;li&gt;验证正确的 DNS 配置和区域传送&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="性能监控"&gt;性能监控&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;识别高流量查询来源&lt;/li&gt;
&lt;li&gt;分析查询类型和模式以优化 DNS 基础设施&lt;/li&gt;
&lt;li&gt;发现导致查询过多的配置问题&lt;/li&gt;
&lt;li&gt;跟踪响应时间和成功率&lt;/li&gt;
&lt;li&gt;监控 DNS 服务器负载和容量&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="安全分析"&gt;安全分析&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;发现 DNS 隧道和数据外泄尝试&lt;/li&gt;
&lt;li&gt;识别与恶意软件及命令与控制服务器相关的域名&lt;/li&gt;
&lt;li&gt;跟踪可能表明系统被攻陷的可疑查询模式&lt;/li&gt;
&lt;li&gt;监控 DNS 放大攻击&lt;/li&gt;
&lt;li&gt;调查安全事件并追踪攻击者活动&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="合规与审计"&gt;合规与审计&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;满足日志记录和保留的法规要求&lt;/li&gt;
&lt;li&gt;记录网络活动以备审计&lt;/li&gt;
&lt;li&gt;为管理层和合规官生成报告&lt;/li&gt;
&lt;li&gt;展示安全监控的尽职调查&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="模块工作原理高层次"&gt;模块工作原理（高层次）&lt;/h2&gt;
&lt;p&gt;该模块针对大文件进行了优化，将 DNS 调试日志处理为结构化的 CSV 输出。它支持多行记录（例如 PACKET 详细信息块和缩进的续行），确保事件/诊断消息和数据包详细信息附着在正确的记录上。&lt;/p&gt;</description></item><item><title>输出格式</title><link>https://DNSServerDebugLogParser.andibellstedt.com/v1.2.0.0/cn/docs/02-output-formats/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://DNSServerDebugLogParser.andibellstedt.com/v1.2.0.0/cn/docs/02-output-formats/</guid><description>&lt;p&gt;DNSServer.DebugLogParser 可以生成两种类型的输出：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;包含所有解析条目的 CSV 数据文件&lt;/li&gt;
&lt;li&gt;用于每日汇总的可选统计文件&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;要查看每种输出类型的实际示例，请查看本文中的示例。&lt;/p&gt;
&lt;h2 id="csv-数据文件"&gt;CSV 数据文件&lt;/h2&gt;
&lt;p&gt;示例输出文件：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;en-US（无详细信息）：&lt;a href="../outputformat/en-us.-.dnsdebug-dc01.-.WithComputerName.csv"&gt;WithComputerName&lt;/a&gt;, &lt;a href="../outputformat/en-us.-.dnsdebug-dc01.-.NoComputerName.csv"&gt;NoComputerName&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;de-DE（无详细信息）：&lt;a href="../outputformat/de-de.-.dnsdebug-dc01.-.WithComputerName.-.NoDetails.csv"&gt;WithComputerName&lt;/a&gt;, &lt;a href="../outputformat/de-de.-.dnsdebug-dc01.-.NoComputerName.-.NoDetails.csv"&gt;NoComputerName&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;de-DE（带详细信息 / &lt;code&gt;Details&lt;/code&gt; JSON 填充了数据包详细块）：&lt;a href="../outputformat/de-de.-.dnsdebug-dc01.-.WithComputerName.-.WithDetails.csv"&gt;WithComputerName&lt;/a&gt;, &lt;a href="../outputformat/de-de.-.dnsdebug-dc01.-.NoComputerName.-.WithDetails.csv"&gt;NoComputerName&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;CSV 数据文件包含所有解析的日志条目，包含以下列：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;DateTime&lt;/code&gt;：DNS 查询/响应的日期和时间&lt;/li&gt;
&lt;li&gt;&lt;code&gt;ThreadId&lt;/code&gt;：内部 DNS 服务器线程标识符&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Context&lt;/code&gt;：操作上下文（例如 Packet、Event、Note、DSPoll、Init、Lookup、Recurse、Remote、Tombstone）&lt;/li&gt;
&lt;li&gt;&lt;code&gt;PacketId&lt;/code&gt;：DNS 数据包标识符&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Protocol&lt;/code&gt;：UDP 或 TCP&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Direction&lt;/code&gt;：&lt;code&gt;Rcv&lt;/code&gt;（接收/查询）或 &lt;code&gt;Snd&lt;/code&gt;（发送/响应）&lt;/li&gt;
&lt;li&gt;&lt;code&gt;ClientIP&lt;/code&gt;：客户端 IP 地址&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Xid&lt;/code&gt;：事务 ID（十六进制）&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Type&lt;/code&gt;：查询或响应&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Opcode&lt;/code&gt;：Standard、Notify、Update 或 Unknown&lt;/li&gt;
&lt;li&gt;&lt;code&gt;FlagsHex&lt;/code&gt;：查询/响应标志（十六进制）&lt;/li&gt;
&lt;li&gt;&lt;code&gt;FlagsChar&lt;/code&gt;：标志解码（权威、截断、递归请求、递归可用）&lt;/li&gt;
&lt;li&gt;&lt;code&gt;ResponseCode&lt;/code&gt;：NOERROR、NXDOMAIN、SERVFAIL 等&lt;/li&gt;
&lt;li&gt;&lt;code&gt;QuestionType&lt;/code&gt;：DNS 记录类型（A、AAAA、MX、PTR 等）&lt;/li&gt;
&lt;li&gt;&lt;code&gt;QuestionName&lt;/code&gt;：查询的域名&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Information&lt;/code&gt;：附加信息（针对 Event/Note 等；针对数据包详细块，包含 TCP/UDP 详细头行）&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Details&lt;/code&gt;：包含详细块的数据包条目的 JSON 数据（否则为空）&lt;/li&gt;
&lt;li&gt;&lt;code&gt;ComputerName&lt;/code&gt;：源服务器名称（始终存在；未指定时为空）&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;注意：&lt;code&gt;ComputerName&lt;/code&gt; 列始终包含在每条记录的末尾，以确保输出结构一致。这有助于多服务器日志合并场景。&lt;/p&gt;
&lt;h2 id="统计文件可选"&gt;统计文件（可选）&lt;/h2&gt;
&lt;p&gt;示例输出文件：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;上下文统计：&lt;a href="../outputformat/en-us.-.dnsdebug-dc01_Statistic.-.WithComputerName.csv"&gt;en-US（WithComputerName）&lt;/a&gt;, &lt;a href="../outputformat/en-us.-.dnsdebug-dc01_Statistic.-.NoComputerName.csv"&gt;en-US（NoComputerName）&lt;/a&gt;, &lt;a href="../outputformat/de-de.-.dnsdebug-dc01_Statistic.-.WithComputerName.csv"&gt;de-DE（WithComputerName）&lt;/a&gt;, &lt;a href="../outputformat/de-de.-.dnsdebug-dc01_Statistic.-.NoComputerName.csv"&gt;de-DE（NoComputerName）&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;数据包统计：&lt;a href="../outputformat/en-us.-.dnsdebug-dc01_PacketStatistic.-.WithComputerName.csv"&gt;en-US（WithComputerName）&lt;/a&gt;, &lt;a href="../outputformat/en-us.-.dnsdebug-dc01_PacketStatistic.-.NoComputerName.csv"&gt;en-US（NoComputerName）&lt;/a&gt;, &lt;a href="../outputformat/de-de.-.dnsdebug-dc01_PacketStatistic.-.WithComputerName.csv"&gt;de-DE（WithComputerName）&lt;/a&gt;, &lt;a href="../outputformat/de-de.-.dnsdebug-dc01_PacketStatistic.-.NoComputerName.csv"&gt;de-DE（NoComputerName）&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;生成统计时，会创建两个独立的文件：&lt;/p&gt;
&lt;h3 id="1-上下文统计_statisticcsv"&gt;1) 上下文统计（&lt;code&gt;*_Statistic.csv&lt;/code&gt;）&lt;/h3&gt;
&lt;p&gt;列：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;Date&lt;/code&gt;：日期（&lt;code&gt;yyyy-MM-dd&lt;/code&gt;）&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Context&lt;/code&gt;：上下文名称（例如 Packet、Event、Note）&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Count&lt;/code&gt;：记录数量&lt;/li&gt;
&lt;li&gt;&lt;code&gt;ComputerName&lt;/code&gt;：源服务器名称&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="2-数据包统计_packetstatisticcsv"&gt;2) 数据包统计（&lt;code&gt;*_PacketStatistic.csv&lt;/code&gt;）&lt;/h3&gt;
&lt;p&gt;列：&lt;/p&gt;</description></item><item><title>运营最佳实践</title><link>https://DNSServerDebugLogParser.andibellstedt.com/v1.2.0.0/cn/docs/06-operational-best-practices/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://DNSServerDebugLogParser.andibellstedt.com/v1.2.0.0/cn/docs/06-operational-best-practices/</guid><description>&lt;p&gt;在生产环境中使用 DNSServer.DebugLogParser 时：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;定期安排处理&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;使用任务计划程序自动每日或每周转换新的日志文件。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;适当轮换日志&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;DNS 调试日志可能快速增长；配置在可管理的大小轮换（例如 100MB）。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;验证输出&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;在完全自动化之前，先验证前几个转换的文件。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;规划存储需求&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;即使有压缩，也要根据 DNS 流量和保留时间规划存储。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;保护敏感数据&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;DNS 日志可能包含敏感信息；使用适当的访问控制保护输出。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;记录工作流程&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;记录处理计划、存储位置和分析用途。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;使用样本文件测试&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;在处理关键日志前，验证参数和输出格式。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;监控错误&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;注意日志损坏、访问问题或磁盘空间不足。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;</description></item><item><title>故障排除</title><link>https://DNSServerDebugLogParser.andibellstedt.com/v1.2.0.0/cn/docs/08-troubleshooting/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://DNSServerDebugLogParser.andibellstedt.com/v1.2.0.0/cn/docs/08-troubleshooting/</guid><description>&lt;h2 id="常见问题及解决方案"&gt;常见问题及解决方案&lt;/h2&gt;
&lt;h3 id="该文件不是有效的-dns-调试日志文件"&gt;“该文件不是有效的 DNS 调试日志文件”&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;确保你正在转换的是实际的 DNS 服务器调试日志。&lt;/li&gt;
&lt;li&gt;文件应以 &lt;code&gt;Message logging started at&lt;/code&gt; 开头或包含 DNS 查询条目。&lt;/li&gt;
&lt;li&gt;如果你确定文件有效但头部不同，请使用 &lt;code&gt;-SkipHeaderValidation&lt;/code&gt;。&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="输出文件为空或不完整"&gt;输出文件为空或不完整&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;确认输入文件包含有效的日志条目。&lt;/li&gt;
&lt;li&gt;如果没有发生查询，有些日志可能只包含头部信息。&lt;/li&gt;
&lt;li&gt;验证日志文件未损坏且包含实际的查询数据。&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="处理速度非常慢"&gt;处理速度非常慢&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;确保有足够的内存且磁盘负载不高。&lt;/li&gt;
&lt;li&gt;考虑处理较小的日志文件。&lt;/li&gt;
&lt;li&gt;考虑使用 &lt;code&gt;-CompressOutput&lt;/code&gt; 并结合计划任务处理较小批次。&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="访问被拒绝错误"&gt;“访问被拒绝”错误&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;以具有读取源日志文件和写入目标目录权限的身份运行 PowerShell。&lt;/li&gt;
&lt;li&gt;DNS 日志文件可能需要管理员权限。&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="压缩后的输出文件比预期大"&gt;压缩后的输出文件比预期大&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;含有许多唯一值的日志压缩效率较低；这是正常现象。&lt;/li&gt;
&lt;li&gt;ZIP 压缩通常仍能大幅减小文件大小。&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="统计文件与预期不符"&gt;统计文件与预期不符&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;确认你使用了 &lt;code&gt;-OutputType Both&lt;/code&gt; 或 &lt;code&gt;-OutputType Statistic&lt;/code&gt;。&lt;/li&gt;
&lt;li&gt;统计数据是汇总计数（按天分组），因此值表示总计。&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="报告问题"&gt;报告问题&lt;/h2&gt;
&lt;p&gt;如果遇到此处未涵盖的问题：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;确认你使用的是模块的最新版本。&lt;/li&gt;
&lt;li&gt;检查 GitHub Issues 是否有类似问题。&lt;/li&gt;
&lt;li&gt;收集诊断信息：
&lt;ul&gt;
&lt;li&gt;PowerShell 版本（&lt;code&gt;$PSVersionTable&lt;/code&gt;）&lt;/li&gt;
&lt;li&gt;模块版本（&lt;code&gt;Get-Module DNSServer.DebugLogParser&lt;/code&gt;）&lt;/li&gt;
&lt;li&gt;示例日志文件（如果可能）&lt;/li&gt;
&lt;li&gt;完整的错误信息和堆栈跟踪&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;在 GitHub 上新建 issue 并提供详细信息。&lt;/li&gt;
&lt;/ol&gt;</description></item><item><title>Convert-DNSDebugLogFile</title><link>https://DNSServerDebugLogParser.andibellstedt.com/v1.2.0.0/cn/docs/commands/convert-dnsdebuglogfile/</link><pubDate>Mon, 25 May 2026 00:00:00 +0000</pubDate><guid>https://DNSServerDebugLogParser.andibellstedt.com/v1.2.0.0/cn/docs/commands/convert-dnsdebuglogfile/</guid><description>&lt;h2 id="synopsis"&gt;SYNOPSIS&lt;/h2&gt;
&lt;p&gt;将 Windows DNS 服务器调试日志转换为结构化的 CSV 格式，便于分析和报告。&lt;/p&gt;
&lt;h2 id="syntax"&gt;SYNTAX&lt;/h2&gt;
&lt;h3 id="__allparametersets"&gt;__AllParameterSets&lt;/h3&gt;
&lt;pre&gt;&lt;code&gt;Convert-DNSDebugLogFile [-InputFile] &amp;lt;string[]&amp;gt; [[-OutputFile] &amp;lt;string&amp;gt;] [[-Delimiter] &amp;lt;string&amp;gt;]
 [[-ComputerName] &amp;lt;string&amp;gt;] [[-OutputType] &amp;lt;string&amp;gt;] [[-ContextFilter] &amp;lt;string[]&amp;gt;]
 [[-InputCulture] &amp;lt;cultureinfo&amp;gt;] [[-OutputCulture] &amp;lt;cultureinfo&amp;gt;] [-SkipHeaderValidation]
 [-RemoveSourceFile] [-CompressOutput] [-NoDetailsParsing] [-WhatIf] [-Confirm] [&amp;lt;CommonParameters&amp;gt;]
&lt;/code&gt;&lt;/pre&gt;
&lt;h2 id="aliases"&gt;ALIASES&lt;/h2&gt;
&lt;p&gt;此 cmdlet 有以下别名，&lt;/p&gt;
&lt;h2 id="description"&gt;DESCRIPTION&lt;/h2&gt;
&lt;p&gt;将 Windows DNS 服务器调试日志文件转换为结构化的 CSV 数据，可用于 Excel、Power BI、SQL 数据库或 SIEM 工具中进行分析。&lt;br&gt;
设计用于安全分析、性能监控、故障排除和合规报告。&lt;/p&gt;
&lt;p&gt;该 cmdlet 解析 DNS 调试日志并输出一致的 CSV 格式以供分析。&lt;br&gt;
CSV 输出包含 18 列，包括用于事件/诊断文本的 &lt;code&gt;Information&lt;/code&gt; 列、可选的包含数据包详细信息块的 &lt;code&gt;Details&lt;/code&gt; JSON 列，以及始终存在的 &lt;code&gt;ComputerName&lt;/code&gt; 列（除非指定，否则为空）。&lt;/p&gt;
&lt;p&gt;主要功能：&lt;/p&gt;</description></item><item><title>版本说明 v1.2.0.0 (2026-01-25)</title><link>https://DNSServerDebugLogParser.andibellstedt.com/v1.2.0.0/cn/changelog/release-v1.2.0.0/</link><pubDate>Sun, 25 Jan 2026 00:00:00 +0000</pubDate><guid>https://DNSServerDebugLogParser.andibellstedt.com/v1.2.0.0/cn/changelog/release-v1.2.0.0/</guid><description>&lt;h2 id="新增"&gt;新增&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;新增&lt;/strong&gt;：DNS PACKET 详细块的多行记录处理
&lt;ul&gt;
&lt;li&gt;PACKET 上下文条目现在可以包含详细的 TCP/UDP 连接信息和 DNS 消息结构&lt;/li&gt;
&lt;li&gt;详细块被解析为结构化的 JSON 格式，存储在新的 &lt;code&gt;Details&lt;/code&gt; 列中&lt;/li&gt;
&lt;li&gt;包含：套接字信息、远程地址/端口、时序数据、消息结构（XID、Flags、QCOUNT 等）&lt;/li&gt;
&lt;li&gt;DNS 部分（QUESTION、ANSWER、AUTHORITY、ADDITIONAL）捕获完整记录详情&lt;/li&gt;
&lt;li&gt;详细块中的编码域名自动转换为 FQDN 格式&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;新增&lt;/strong&gt;：CSV 输出中的 &lt;code&gt;Details&lt;/code&gt; 列
&lt;ul&gt;
&lt;li&gt;包含带有详细块的 PACKET 条目的结构化 JSON 数据&lt;/li&gt;
&lt;li&gt;对于无详细信息的 PACKET 条目及所有非 PACKET 上下文，该列为空&lt;/li&gt;
&lt;li&gt;支持对 DNS 查询/响应进行深度数据包分析和取证调查&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;新增&lt;/strong&gt;：性能优化的 &lt;code&gt;NoDetailsParsing&lt;/code&gt; 开关参数
&lt;ul&gt;
&lt;li&gt;跳过对 PACKET 详细块的昂贵 JSON 解析&lt;/li&gt;
&lt;li&gt;&lt;em&gt;&lt;strong&gt;可提升&lt;/strong&gt;&lt;/em&gt;处理速度 &lt;strong&gt;30-50%&lt;/strong&gt;，适用于包含大量详细块的日志&lt;/li&gt;
&lt;li&gt;适合处理超大文件（100MB+）且不需要详细包结构时使用&lt;/li&gt;
&lt;li&gt;详细块仍收集于 Information 列，但 Details 列保持为空&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;新增&lt;/strong&gt;：非 PACKET 上下文的多行续行支持
&lt;ul&gt;
&lt;li&gt;EVENT、Note、DSPoll 等上下文现在可跨多行&lt;/li&gt;
&lt;li&gt;缩进的续行自动合并至主记录的 Information 字段&lt;/li&gt;
&lt;li&gt;保留完整的错误信息、区域更新和诊断输出&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;新增&lt;/strong&gt;：&lt;code&gt;ContextFilter&lt;/code&gt; 识别更多上下文类型：&lt;code&gt;DSPoll&lt;/code&gt;、&lt;code&gt;Init&lt;/code&gt;、&lt;code&gt;Lookup&lt;/code&gt;、&lt;code&gt;Recurse&lt;/code&gt;、&lt;code&gt;Remote&lt;/code&gt;、&lt;code&gt;Tombstone&lt;/code&gt;
&lt;ul&gt;
&lt;li&gt;作用：&lt;code&gt;Convert-DNSDebugLogFile&lt;/code&gt; 现在可通过 &lt;code&gt;-ContextFilter&lt;/code&gt; 包含/排除这些诊断和生命周期条目&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;新增&lt;/strong&gt;：统计输出新增两个专用文件
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;_Statistic.csv&lt;/code&gt;：按日期和上下文类型的每日记录计数（Date、Context、Count、ComputerName）&lt;/li&gt;
&lt;li&gt;&lt;code&gt;_PacketStatistic.csv&lt;/code&gt;：按日期、客户端/协议/方向/类型的每日 PACKET 计数（Date、ClientIP、Protocol、Direction、QuestionType、Count、ComputerName）&lt;/li&gt;
&lt;li&gt;优势：更聚焦的报告（操作上下文量与 DNS 流量细分）&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;PACKET 详细块的 JSON 生成经过性能优化（手动解析替代正则）&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="变更"&gt;变更&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;重大变更&lt;/strong&gt;：CSV 输出现在包含 18 列（在 &lt;code&gt;ComputerName&lt;/code&gt; 前新增 &lt;code&gt;Details&lt;/code&gt; 列）
&lt;ul&gt;
&lt;li&gt;新列顺序：DateTime、ThreadId、Context、PacketId、Protocol、Direction、ClientIP、Xid、Type、Opcode、FlagsHex、FlagsChar、ResponseCode、QuestionType、QuestionName、Information、&lt;strong&gt;Details&lt;/strong&gt;、ComputerName&lt;/li&gt;
&lt;li&gt;影响：依赖列位置的脚本需更新&lt;/li&gt;
&lt;li&gt;优势：丰富的数据包分析能力，同时不改变现有 Information 列行为&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;数据行处理重构为将所有行读入内存，以便高效检测多行记录
&lt;ul&gt;
&lt;li&gt;性能：由于优化的 List&lt;string&gt; 使用，影响极小&lt;/li&gt;
&lt;li&gt;优势：支持准确的前瞻检测详细块和续行&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;缺失或编码为空的查询名现在优雅处理（无解析错误）；CSV 输出中缺失时 QuestionName 字段为空&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="改进"&gt;改进&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;Convert-DNSDebugLogFile&lt;/code&gt; 解析更健壮：更严格的行验证和改进的提取减少了格式错误日志产生的虚假/无效行，同时保持 CSV/统计输出格式&lt;/li&gt;
&lt;li&gt;PACKET 上下文检测区分简单查询和带详细块的查询&lt;/li&gt;
&lt;li&gt;无详细信息的 PACKET 条目后空行正确跳过&lt;/li&gt;
&lt;li&gt;详细块中的域名解码使用现有的 &lt;code&gt;ConvertTo-Fqdn&lt;/code&gt; 函数以保持一致性&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="性能"&gt;性能&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;对无详细块日志保持处理速度&lt;/li&gt;
&lt;li&gt;&lt;code&gt;NoDetailsParsing&lt;/code&gt; 开关在不需要 JSON 解析时提供 30-50% 的速度提升&lt;/li&gt;
&lt;li&gt;多行记录处理期间高效的状态管理&lt;/li&gt;
&lt;li&gt;使用优化的字符串操作（TrimStart、Join）替代正则处理续行&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="备注"&gt;备注&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;这些更改设计为向后兼容正常使用场景。如依赖特定上下文名称集或之前严格的解析行为，请验证下游脚本&lt;/li&gt;
&lt;li&gt;新的 &lt;code&gt;Details&lt;/code&gt; 列始终存在于 CSV 输出中；使用 &lt;code&gt;NoDetailsParsing&lt;/code&gt; 可保持其为空以提升性能&lt;/li&gt;
&lt;li&gt;现有按列位置解析 CSV 的脚本需考虑新增的 &lt;code&gt;Details&lt;/code&gt; 列（位置为第17列，位于 ComputerName 之前）&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>v1.0.0 (2026-01-23)</title><link>https://DNSServerDebugLogParser.andibellstedt.com/v1.2.0.0/cn/changelog/release-v1.0.0/</link><pubDate>Fri, 23 Jan 2026 00:00:00 +0000</pubDate><guid>https://DNSServerDebugLogParser.andibellstedt.com/v1.2.0.0/cn/changelog/release-v1.0.0/</guid><description>&lt;h3 id="新增"&gt;新增&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;初始版本发布&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Convert-DNSDebugLogFile&lt;/code&gt; - 高性能解析器，用于 Windows DNS 服务器调试日志文件&lt;/li&gt;
&lt;li&gt;解析 DNS 调试日志中的所有 15 个标准字段，转换为结构化的 CSV 格式&lt;/li&gt;
&lt;li&gt;支持自定义 CSV 分隔符（默认：分号）&lt;/li&gt;
&lt;li&gt;可选的 ComputerName 列，便于多服务器日志合并&lt;/li&gt;
&lt;li&gt;三种输出模式：仅 CSV 数据、仅统计信息或两者兼有&lt;/li&gt;
&lt;li&gt;按客户端 IP、协议和查询类型汇总的统计摘要&lt;/li&gt;
&lt;li&gt;支持管道处理，实现批量处理多个日志文件&lt;/li&gt;
&lt;li&gt;头部验证以确保数据完整性（可根据需要绕过）&lt;/li&gt;
&lt;li&gt;可选自动压缩输出文件（ZIP 格式）&lt;/li&gt;
&lt;li&gt;处理成功后可选删除源文件&lt;/li&gt;
&lt;li&gt;文化感知的日期解析和格式化，适用于国际 DNS 服务器&lt;/li&gt;
&lt;li&gt;针对大文件（100MB 以上）优化，采用流式 I/O 和高效字符串操作&lt;/li&gt;
&lt;li&gt;兼容 PowerShell 5.1+（桌面版和核心版）&lt;/li&gt;
&lt;li&gt;支持 Windows Server 2016+ 及 DNS Server 2012 R2 至 2025 日志格式&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>版本说明 v1.1.0 (2026-01-23)</title><link>https://DNSServerDebugLogParser.andibellstedt.com/v1.2.0.0/cn/changelog/release-v1.1.0.0/</link><pubDate>Fri, 23 Jan 2026 00:00:00 +0000</pubDate><guid>https://DNSServerDebugLogParser.andibellstedt.com/v1.2.0.0/cn/changelog/release-v1.1.0.0/</guid><description>&lt;h2 id="新增"&gt;新增&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;新增&lt;/strong&gt;：ContextFilter 参数用于选择性日志解析
&lt;ul&gt;
&lt;li&gt;按上下文类型过滤日志条目：PACKET（DNS 查询/响应）、EVENT（服务器事件）或 Note（诊断信息）&lt;/li&gt;
&lt;li&gt;允许针对特定日志条目类型进行聚焦分析&lt;/li&gt;
&lt;li&gt;默认值：All（包含所有上下文类型）&lt;/li&gt;
&lt;li&gt;使用场景：仅关注 DNS 流量，监控服务器事件，排查诊断问题&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;新增&lt;/strong&gt;：CSV 输出中的信息字段
&lt;ul&gt;
&lt;li&gt;捕获 EVENT 和 Note 上下文条目的详细信息&lt;/li&gt;
&lt;li&gt;示例：“DNS 服务器已启动”、“区域加载完成”、套接字错误、内部状态消息&lt;/li&gt;
&lt;li&gt;增强对 DNS 服务器运行事件和诊断的可见性&lt;/li&gt;
&lt;li&gt;当 Context 为 EVENT 或 Note 时填充该字段；PACKET 条目为空&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="变更"&gt;变更&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;重大变更&lt;/strong&gt;：ComputerName 列现在始终包含在所有输出记录的末尾
&lt;ul&gt;
&lt;li&gt;之前：ComputerName 仅在指定参数时有条件地包含在开头&lt;/li&gt;
&lt;li&gt;现在：ComputerName 始终作为最后一列出现；未指定参数时为空&lt;/li&gt;
&lt;li&gt;优点：输出结构一致，简化多服务器日志合并和自动化处理&lt;/li&gt;
&lt;li&gt;影响：现有解析列位置或依赖条件列存在的脚本需更新&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="新增-1"&gt;新增&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;通过 ContextFilter 参数实现上下文过滤，聚焦特定日志条目类型（PACKET、EVENT、NOTE）&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="改进"&gt;改进&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;重构 Convert-DNSDebugLogFile 的注释帮助，提升清晰度和简洁性&lt;/li&gt;
&lt;li&gt;更新参数描述，使其更具信息性和可操作性&lt;/li&gt;
&lt;li&gt;改进示例文档，提供更聚焦且实用的用例&lt;/li&gt;
&lt;li&gt;增强 about_DNSServer.DebugLogParser 帮助文件，反映当前功能&lt;/li&gt;
&lt;li&gt;增强详细日志记录，提供处理过程中的更详细进度信息&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>法律声明</title><link>https://DNSServerDebugLogParser.andibellstedt.com/v1.2.0.0/cn/impressum/</link><pubDate>Sun, 18 Jan 2026 00:00:00 +0000</pubDate><guid>https://DNSServerDebugLogParser.andibellstedt.com/v1.2.0.0/cn/impressum/</guid><description>&lt;div&gt;&lt;a id="td-block-0" class="td-anchor-no-extra-offset"&gt;&lt;/a&gt;&lt;/div&gt;
&lt;section class="row td-box td-box--primary td-box--height-auto"&gt;
&lt;div class="col"&gt;
&lt;div class="h1"&gt;
&lt;h1 id="根据德国电信媒体法tmg第5条的信息"&gt;根据德国电信媒体法（TMG）第5条的信息&lt;/h1&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/section&gt;
&lt;br&gt;
&lt;h2 id="法律声明"&gt;法律声明&lt;/h2&gt;
&lt;p&gt;Andreas Bellstedt&lt;br&gt;
Brunnenstr. 38&lt;br&gt;
75387 Neubulach&lt;br&gt;
德国&lt;/p&gt;
&lt;br&gt;
&lt;h2 id="联系方式"&gt;联系方式&lt;/h2&gt;
&lt;p&gt;电子邮件: &lt;a href="mailto:blog@andibellstedt.com"&gt;blog@andibellstedt.com&lt;/a&gt;&lt;/p&gt;
&lt;br&gt;
&lt;h2 id="法律形式--商业状态"&gt;法律形式 / 商业状态&lt;/h2&gt;
&lt;p&gt;本网站由个人 / 个体经营者运营。&lt;/p&gt;
&lt;br&gt;
&lt;h2 id="根据德国州际广播条约rstv第552条负责内容"&gt;根据德国州际广播条约（RStV）第55(2)条负责内容&lt;/h2&gt;
&lt;p&gt;Andreas Bellstedt&lt;br&gt;
（上述地址）&lt;/p&gt;
&lt;br&gt;
&lt;h2 id="内容责任"&gt;内容责任&lt;/h2&gt;
&lt;p&gt;作为服务提供者，我们根据一般法律在这些页面上对我们自己的内容负责，符合TMG第7(1)条的规定。然而，根据TMG第8-10条的规定，我们没有义务监控传输或存储的第三方信息，或调查表明非法活动的情况。&lt;/p&gt;
&lt;p&gt;根据一般法律的删除或阻止使用信息的义务不受影响。在具体法律违规行为被知晓之前，责任仅在于知晓后。我们在得知相应的法律违规行为后，将立即删除相关内容。&lt;/p&gt;
&lt;br&gt;
&lt;h2 id="链接责任"&gt;链接责任&lt;/h2&gt;
&lt;p&gt;本网站包含指向外部第三方网站的链接，我们对其内容没有控制权。链接页面的各自提供者或运营者始终对其内容负责。链接页面在链接时已检查可能的法律违规行为。链接时未发现任何非法内容。&lt;/p&gt;
&lt;p&gt;然而，在没有具体法律违规证据的情况下，持续监控链接页面内容是不合理的。在得知法律违规行为后，我们将立即删除此类链接。&lt;/p&gt;
&lt;br&gt;
&lt;h2 id="版权"&gt;版权&lt;/h2&gt;
&lt;p&gt;网站运营者在这些页面上创建的内容和作品受德国版权法保护。复制、处理、分发以及任何超出版权限制的利用均需获得相应作者或创作者的书面同意。仅允许出于私人、非商业用途下载和复制本网站。&lt;/p&gt;
&lt;p&gt;对于本网站上未由运营者创建的内容，尊重第三方的版权。第三方内容已标记为此类。如果您仍然发现版权侵权，请相应地通知我们。在得知法律违规行为后，我们将立即删除相关内容。&lt;/p&gt;
&lt;br&gt;
&lt;h2 id="争议解决"&gt;争议解决&lt;/h2&gt;
&lt;p&gt;欧洲委员会提供在线争议解决（ODR）平台：https://ec.europa.eu/consumers/odr/
我们的电子邮件地址在法律声明中已列出。&lt;/p&gt;
&lt;p&gt;我们既不愿意也没有义务参与消费者仲裁委员会的争议解决程序。&lt;/p&gt;
&lt;br&gt;
&lt;div&gt;&lt;a id="td-block-1" class="td-anchor-no-extra-offset"&gt;&lt;/a&gt;&lt;/div&gt;
&lt;section class="row td-box td-box--secondary td-box--height-auto td-below-navbar"&gt;
&lt;div class="col"&gt;
&lt;div class="h6"&gt;
&lt;p&gt;&lt;strong&gt;最后更新:&lt;/strong&gt; 2026年1月18日&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/section&gt;
&lt;p&gt;来源: 基于 &lt;a href="https://www.e-recht24.de"&gt;https://www.e-recht24.de&lt;/a&gt;&lt;/p&gt;</description></item><item><title>隐私政策</title><link>https://DNSServerDebugLogParser.andibellstedt.com/v1.2.0.0/cn/privacy-policy/</link><pubDate>Sun, 18 Jan 2026 00:00:00 +0000</pubDate><guid>https://DNSServerDebugLogParser.andibellstedt.com/v1.2.0.0/cn/privacy-policy/</guid><description>&lt;div&gt;&lt;a id="td-block-0" class="td-anchor-no-extra-offset"&gt;&lt;/a&gt;&lt;/div&gt;
&lt;section class="row td-box td-box--primary td-box--height-auto"&gt;
&lt;div class="col"&gt;
&lt;div class="h1"&gt;
&lt;h1 id="隐私政策"&gt;隐私政策&lt;/h1&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/section&gt;
&lt;br&gt;
&lt;h2 id="1-隐私概览"&gt;1. 隐私概览&lt;/h2&gt;
&lt;h3 id="一般说明"&gt;一般说明&lt;/h3&gt;
&lt;p&gt;以下说明提供了您访问本网站时个人数据处理的简单概述。个人数据是指可以识别您个人身份的所有数据。有关数据保护主题的详细信息，请参阅我们在本文下方列出的隐私政策。&lt;/p&gt;
&lt;h3 id="本网站的数据收集"&gt;本网站的数据收集&lt;/h3&gt;
&lt;h4 id="谁负责本网站的数据收集"&gt;谁负责本网站的数据收集？&lt;/h4&gt;
&lt;p&gt;本网站的数据处理由网站运营商进行。其联系信息可以在本隐私政策的“数据控制者通知”部分找到。&lt;/p&gt;
&lt;h4 id="我们如何收集您的数据"&gt;我们如何收集您的数据？&lt;/h4&gt;
&lt;p&gt;您的数据一方面是通过您提供给我们的方式收集的。这可以是您在联系表单中输入的数据。&lt;/p&gt;
&lt;p&gt;其他数据则是通过我们的IT系统在您访问网站时自动收集或在您同意后收集的。这些主要是技术数据（例如，互联网浏览器、操作系统或页面请求时间）。这些数据的收集在您进入本网站时自动进行。&lt;/p&gt;
&lt;h4 id="我们将您的数据用于什么"&gt;我们将您的数据用于什么？&lt;/h4&gt;
&lt;p&gt;部分数据的收集是为了确保网站的无误提供。其他数据可以用于分析您的用户行为。如果可以通过网站签订或启动合同，传输的数据也将用于合同报价、订单或其他服务查询。&lt;/p&gt;
&lt;h4 id="您对您的数据有哪些权利"&gt;您对您的数据有哪些权利？&lt;/h4&gt;
&lt;p&gt;您有权随时免费获取有关您存储的个人数据的来源、接收者和目的的信息。您还有权请求更正或删除这些数据。如果您已同意数据处理，您可以随时撤回该同意。您在某些情况下还有权请求限制对您个人数据的处理。此外，您有权向主管监督机构提出投诉。&lt;/p&gt;
&lt;p&gt;如需对此及其他数据保护主题的进一步问题，您可以随时与我们联系。&lt;/p&gt;
&lt;h3 id="分析工具和第三方工具"&gt;分析工具和第三方工具&lt;/h3&gt;
&lt;p&gt;访问本网站时，您的浏览行为可能会被统计分析。这主要是通过所谓的分析程序进行的。&lt;/p&gt;
&lt;p&gt;有关这些分析程序的详细信息，请参阅以下隐私政策。&lt;/p&gt;
&lt;h2 id="2-托管"&gt;2. 托管&lt;/h2&gt;
&lt;p&gt;我们与以下提供商托管我们网站的内容：&lt;/p&gt;
&lt;h3 id="strato"&gt;Strato&lt;/h3&gt;
&lt;p&gt;提供商是Strato AG，地址为：Otto-Ostrowski-Straße 7, 10249 Berlin（以下简称“Strato”）。当您访问我们的网站时，Strato会记录包括您的IP地址在内的各种日志文件。&lt;/p&gt;
&lt;p&gt;更多信息请参见Strato的隐私政策：&lt;a href="https://www.strato.de/datenschutz/"&gt;https://www.strato.de/datenschutz/&lt;/a&gt;。&lt;/p&gt;
&lt;p&gt;使用Strato基于GDPR第6条第1款(f)项。我们有合理的利益以尽可能可靠地展示我们的网站。如果获得了相应的同意，处理将仅基于GDPR第6条第1款(a)项和德国电信-电信媒体数据保护法第25条第1款，前提是同意包括存储Cookies或访问用户终端设备上的信息（例如设备指纹识别）在TTDSG的意义下。该同意可以随时撤回。&lt;/p&gt;
&lt;h2 id="3-一般说明和强制性信息"&gt;3. 一般说明和强制性信息&lt;/h2&gt;
&lt;h3 id="数据保护"&gt;数据保护&lt;/h3&gt;
&lt;p&gt;这些页面的运营商非常重视您的个人数据保护。我们会根据法定数据保护规定以及本隐私政策对您的个人数据进行保密处理。&lt;/p&gt;
&lt;p&gt;当您使用本网站时，会收集各种个人数据。个人数据是指可以识别您个人身份的数据。本隐私政策解释了我们收集哪些数据以及我们将其用于何处。它还解释了如何以及出于何种目的进行这些操作。&lt;/p&gt;
&lt;p&gt;我们指出，互联网数据传输（例如，通过电子邮件进行通信）可能存在安全漏洞。完全安全地保护数据不被第三方访问是不可能的。&lt;/p&gt;
&lt;h3 id="数据控制者通知"&gt;数据控制者通知&lt;/h3&gt;
&lt;p&gt;本网站数据处理的控制者是：&lt;/p&gt;
&lt;p&gt;Andreas Bellstedt
Brunnenstr. 38
75387 Neubulach
德国&lt;/p&gt;
&lt;p&gt;电子邮件：blog@andibellstedt.com&lt;/p&gt;
&lt;p&gt;数据控制者是指单独或与他人共同决定个人数据处理的目的和手段的自然人或法人（例如，姓名、电子邮件地址或类似信息）。&lt;/p&gt;
&lt;h3 id="存储期限"&gt;存储期限&lt;/h3&gt;
&lt;p&gt;除非本隐私政策中另有具体存储期限的说明，否则您的个人数据将保留在我们这里，直到数据处理的目的终止。如果您提出合理的删除请求或撤回数据处理的同意，您的数据将被删除，除非我们有其他合法的理由存储您的个人数据（例如，税务或商业保留期限）；在后者情况下，删除将在这些理由不再适用后进行。&lt;/p&gt;
&lt;h3 id="关于本网站数据处理法律依据的一般说明"&gt;关于本网站数据处理法律依据的一般说明&lt;/h3&gt;
&lt;p&gt;如果您同意数据处理，我们将根据GDPR第6条第1款(a)项处理您的个人数据，或者如果处理特殊类别的数据（根据GDPR第9条第1款），则根据GDPR第9条第2款(a)项进行处理。在明确同意将个人数据转移到第三国的情况下，数据处理也基于GDPR第49条第1款(a)项。如果您同意存储Cookies或访问您终端设备上的信息（例如，通过设备指纹识别），数据处理也基于德国电信-电信媒体数据保护法第25条第1款。该同意可以随时撤回。如果您的数据对于履行合同或实施合同前措施是必要的，我们将根据GDPR第6条第1款(b)项处理您的数据。此外，如果出于遵守法律义务的需要，我们将根据GDPR第6条第1款(c)项处理您的数据。数据处理也可能基于我们根据GDPR第6条第1款(f)项的合法利益。各个案例中适用的法律依据将在本隐私政策的后续段落中进行解释。&lt;/p&gt;
&lt;h3 id="关于向没有足够数据保护水平的第三国转移数据以及向未获得dpf认证的美国公司的转移的说明"&gt;关于向没有足够数据保护水平的第三国转移数据以及向未获得DPF认证的美国公司的转移的说明&lt;/h3&gt;
&lt;p&gt;我们使用来自于不提供足够数据保护水平的第三国的公司工具，以及未在欧盟-美国数据隐私框架（DPF）下获得认证的美国工具。如果这些工具处于活动状态，您的个人数据可能会被转移到这些国家并在其中处理。我们指出，在这些第三国中，无法保证与欧盟相当的数据保护水平。&lt;/p&gt;
&lt;p&gt;我们指出，美国通常提供与欧盟相当的数据保护水平。因此，如果接收方在“欧盟-美国数据隐私框架”（DPF）下获得认证或具有适当的额外保障，则向美国转移数据是允许的。有关向第三国转移数据的信息，包括数据接收者的信息，可以在本隐私政策中找到。&lt;/p&gt;
&lt;h3 id="个人数据的接收者"&gt;个人数据的接收者&lt;/h3&gt;
&lt;p&gt;在我们的商业活动中，我们与各种外部实体合作。在某些情况下，可能还需要将个人数据转移给这些外部实体。我们仅在合同履行必要、法律要求（例如，向税务机关披露数据）、根据GDPR第6条第1款(f)项有合理利益或其他法律依据允许数据转移的情况下，向外部实体提供个人数据。在使用处理者时，我们仅基于有效的订单处理合同转移客户的个人数据。在共同处理的情况下，签订共同处理合同。&lt;/p&gt;
&lt;h3 id="撤回您对数据处理的同意"&gt;撤回您对数据处理的同意&lt;/h3&gt;
&lt;p&gt;许多数据处理操作仅在您明确同意的情况下才能进行。您可以随时撤回已给予的任何同意。撤回不会影响撤回之前进行的数据处理的合法性。&lt;/p&gt;
&lt;h3 id="在特殊情况下反对数据收集和直接广告的权利gdpr第21条"&gt;在特殊情况下反对数据收集和直接广告的权利（GDPR第21条）&lt;/h3&gt;
&lt;p&gt;如果数据处理基于GDPR第6条第1款(e)或(f)项，您有权随时出于您特定情况的原因反对处理您的个人数据；这也适用于基于这些规定的分析。处理操作的法律依据可以在本隐私政策中找到。如果您反对，我们将不再处理您的个人数据，除非我们能够证明有强有力的合法理由进行处理，这些理由超过您的利益、权利和自由，或者处理是为了建立、行使或捍卫法律主张（根据GDPR第21条第1款的反对）。&lt;/p&gt;
&lt;p&gt;如果您的个人数据用于直接营销目的，您有权随时反对将您的个人数据用于此类营销；这也适用于与此类直接营销相关的分析。如果您反对，您的个人数据将不再用于直接营销目的（根据GDPR第21条第2款的反对）。&lt;/p&gt;
&lt;h3 id="向主管监督机构提出投诉的权利"&gt;向主管监督机构提出投诉的权利&lt;/h3&gt;
&lt;p&gt;在GDPR违反的情况下，数据主体有权向监督机构提出投诉，特别是在其常住地、工作地点或涉嫌侵权的地点的成员国。提出投诉的权利不影响其他行政或司法救济。&lt;/p&gt;
&lt;h3 id="数据可携带权"&gt;数据可携带权&lt;/h3&gt;
&lt;p&gt;您有权以结构化、常用和机器可读的格式接收我们根据您的同意或履行合同自动处理的数据，并有权将这些数据传输给另一个controller. 如果您请求将数据直接传输给另一个控制者，这仅在技术上可行的范围内进行。&lt;/p&gt;</description></item><item><title>域环境中的实际应用（基于 GPO 的收集与转换）</title><link>https://DNSServerDebugLogParser.andibellstedt.com/v1.2.0.0/cn/docs/examples/gpo-driven-collection/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://DNSServerDebugLogParser.andibellstedt.com/v1.2.0.0/cn/docs/examples/gpo-driven-collection/</guid><description>&lt;p&gt;本文档概述了在 Active Directory 域环境中运行 DNSServer.DebugLogParser 的一个实际端到端示例，重点是转换域控制器上的 Windows DNS 服务器调试日志。&lt;/p&gt;
&lt;p&gt;本示例附带一个 &lt;a href="../gpo/T0-C-Analytics-DNSDebugLogging.zip"&gt;ZIP 压缩包&lt;/a&gt;，其中包含用于实现本文描述工作流的策略工件。&lt;br&gt;
最相关的工件包括 &lt;a href="../gpo/backup/manifest.xml" target="_blank" rel="noopener noreferrer"&gt;备份清单&lt;/a&gt;、&lt;a href="../gpo/backup/{2B6F16BC-0E7C-4787-83D7-2854FED882EE}/gpreport.xml" target="_blank" rel="noopener noreferrer"&gt;GPO 报告&lt;/a&gt;、&lt;a href="../gpo/backup/{2B6F16BC-0E7C-4787-83D7-2854FED882EE}/DomainSysvol/GPO/Machine/Preferences/Files/Files.xml" target="_blank" rel="noopener noreferrer"&gt;Files.xml&lt;/a&gt;、&lt;a href="../gpo/backup/{2B6F16BC-0E7C-4787-83D7-2854FED882EE}/DomainSysvol/GPO/Machine/Preferences/Files/Set-DNSServerDebugLogging.ps1" target="_blank" rel="noopener noreferrer"&gt;Set-DNSServerDebugLogging.ps1&lt;/a&gt; 以及 &lt;a href="../gpo/backup/{2B6F16BC-0E7C-4787-83D7-2854FED882EE}/DomainSysvol/GPO/Machine/Preferences/ScheduledTasks/ScheduledTasks.xml" target="_blank" rel="noopener noreferrer"&gt;ScheduledTasks.xml&lt;/a&gt;。&lt;/p&gt;
&lt;h2 id="场景"&gt;场景&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;多个域控制器（DC）承载 DNS 服务器角色。&lt;/li&gt;
&lt;li&gt;通过计划任务在每个 DC 上启用并统一配置 DNS 调试日志（日志文件写入路径为 &lt;code&gt;C:\Administration\Logs\DNSServer&lt;/code&gt;）。&lt;/li&gt;
&lt;li&gt;集中管理的进程将日志转换为 CSV，用于：
&lt;ul&gt;
&lt;li&gt;安全分析&lt;/li&gt;
&lt;li&gt;运营报告&lt;/li&gt;
&lt;li&gt;故障排查&lt;/li&gt;
&lt;li&gt;合规/保留&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="目标结果"&gt;目标结果&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;所有 DC 上的转换设置保持一致&lt;/li&gt;
&lt;li&gt;输出位置和命名可预测&lt;/li&gt;
&lt;li&gt;可选压缩以减少存储占用&lt;/li&gt;
&lt;li&gt;可选统计输出以实现快速的每日汇总&lt;/li&gt;
&lt;li&gt;主机端风险最小，明确重跑和清理策略&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="建议架构"&gt;建议架构&lt;/h2&gt;
&lt;h3 id="收集模型本地转换--中央拉取"&gt;收集模型：本地转换 + 中央拉取&lt;/h3&gt;
&lt;ol&gt;
&lt;li&gt;每个 DC 将 DNS 调试日志写入磁盘，并启用日志轮转。&lt;/li&gt;
&lt;li&gt;每个 DC 将轮转的 &lt;code&gt;*.log&lt;/code&gt; 文件转换成数据 CSV 和统计 CSV，然后通过计划任务压缩输出为 &lt;code&gt;*.zip&lt;/code&gt;。&lt;/li&gt;
&lt;li&gt;输出文件与日志文件写在同一目录，简化管道流程。&lt;/li&gt;
&lt;li&gt;中央服务器收集 &lt;code&gt;*.zip&lt;/code&gt; 输出，例如通过文件共享导入、定时复制、SIEM 转发器或基于代理的收集器。&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;该模型最大限度减少了对大型原始日志文件的网络读取，将解析工作保持在数据近旁。&lt;/p&gt;
&lt;h2 id="gpo-工作流"&gt;GPO 工作流&lt;/h2&gt;
&lt;p&gt;该工作流通过组策略（计算机配置）实现，确保所有域控制器的设置一致。&lt;/p&gt;</description></item><item><title>使用 SQL Server 的安全分析工作流</title><link>https://DNSServerDebugLogParser.andibellstedt.com/v1.2.0.0/cn/docs/examples/security-analysis-sql/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://DNSServerDebugLogParser.andibellstedt.com/v1.2.0.0/cn/docs/examples/security-analysis-sql/</guid><description>&lt;p&gt;此示例展示了一个实用的安全分析工作流：使用 &lt;code&gt;Convert-DNSDebugLogFile&lt;/code&gt; 解析 DNS 调试日志，将生成的 CSV 导入 SQL Server，并运行查询以突出显示异常大量的 TXT 记录查询。&lt;/p&gt;
&lt;p&gt;为了最佳的互操作性，此示例通过使用 &lt;code&gt;-OutputCulture 'sv-SE'&lt;/code&gt; 以类似 ISO 的格式写入时间戳。&lt;/p&gt;
&lt;h2 id="所需模块"&gt;所需模块&lt;/h2&gt;
&lt;p&gt;此示例使用以下 PowerShell 模块：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;DNSServer.DebugLogParser&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;SqlServer&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;如有需要，请安装它们：&lt;/p&gt;
&lt;pre&gt;&lt;code class="language-powershell"&gt;Install-Module -Name DNSServer.DebugLogParser -Scope CurrentUser
Install-Module -Name SqlServer -Scope CurrentUser
&lt;/code&gt;&lt;/pre&gt;
&lt;h2 id="场景"&gt;场景&lt;/h2&gt;
&lt;p&gt;当你想将解析后的 DNS 调试日志数据移入 SQL Server，以便你可以：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;高效搜索大数据集&lt;/li&gt;
&lt;li&gt;构建可重复使用的检测查询&lt;/li&gt;
&lt;li&gt;关联多个 DNS 服务器的活动&lt;/li&gt;
&lt;li&gt;保留规范化数据以供后续调查&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;时，请使用此工作流。&lt;/p&gt;
&lt;h2 id="转换步骤的输出"&gt;转换步骤的输出&lt;/h2&gt;
&lt;p&gt;&lt;code&gt;Convert-DNSDebugLogFile&lt;/code&gt; 不直接写入 SQL Server。它首先创建一个 CSV 文件。该 CSV 文件即为导入数据库的数据集。&lt;/p&gt;
&lt;p&gt;在此示例中：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;输入日志：&lt;code&gt;C:\Administration\Logs\DNS\dns.log&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;生成的 CSV：&lt;code&gt;C:\Administration\Logs\DNS\dns.csv&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;目标表：&lt;code&gt;dbo.DNSQueries&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="创建目标表"&gt;创建目标表&lt;/h2&gt;
&lt;p&gt;在 SQL Server 中运行以下语句一次，创建目标表。&lt;/p&gt;
&lt;pre&gt;&lt;code class="language-sql"&gt;IF OBJECT_ID('dbo.DNSQueries', 'U') IS NULL
BEGIN
 CREATE TABLE dbo.DNSQueries (
 DateTime datetime2(0) NOT NULL,
 ThreadId int NULL,
 Context nvarchar(20) NULL,
 PacketId int NULL,
 Protocol nvarchar(10) NULL,
 Direction nvarchar(10) NULL,
 ClientIP nvarchar(64) NULL,
 Xid nvarchar(16) NULL,
 Type nvarchar(16) NULL,
 Opcode nvarchar(16) NULL,
 FlagsHex nvarchar(16) NULL,
 FlagsChar nvarchar(16) NULL,
 ResponseCode nvarchar(32) NULL,
 QuestionType nvarchar(32) NULL,
 QuestionName nvarchar(512) NULL,
 Information nvarchar(max) NULL,
 Details nvarchar(max) NULL,
 ComputerName nvarchar(256) NULL
 );
END;
&lt;/code&gt;&lt;/pre&gt;
&lt;h2 id="转换日志并导入-csv"&gt;转换日志并导入 CSV&lt;/h2&gt;
&lt;p&gt;以下 PowerShell 示例执行完整工作流：&lt;/p&gt;</description></item><item><title>关于作者</title><link>https://DNSServerDebugLogParser.andibellstedt.com/v1.2.0.0/cn/about/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://DNSServerDebugLogParser.andibellstedt.com/v1.2.0.0/cn/about/</guid><description>&lt;link rel="preload" as="image" href="https://DNSServerDebugLogParser.andibellstedt.com/v1.2.0.0/images/main-background_hu_fa24d3b9a9ebf86.jpg" media="(max-width: 1200px)"&gt;
&lt;link rel="preload" as="image" href="https://DNSServerDebugLogParser.andibellstedt.com/v1.2.0.0/images/main-background_hu_96620a9289dc443e.jpg" media="(min-width: 1200px)"&gt;
&lt;style&gt;
#td-cover-block-0 {
 background-image: url(/v1.2.0.0/images/main-background_hu_fa24d3b9a9ebf86.jpg);
}
@media only screen and (min-width: 1200px) {
 #td-cover-block-0 {
 background-image: url(/v1.2.0.0/images/main-background_hu_96620a9289dc443e.jpg);
 }
}
&lt;/style&gt;
&lt;section id="td-cover-block-0" class="row td-cover-block td-cover-block--height-auto td-below-navbar js-td-cover td-overlay td-overlay--dark -bg-dark" &gt;
 &lt;div class="col-12"&gt;
 &lt;div class="container td-overlay__inner"&gt;
 &lt;div class="text-center"&gt;
 &lt;h1 class="display-1 mt-0 mt-md-5 pb-4"&gt;关于作者&lt;/h1&gt;
 &lt;div class="pt-3 lead"&gt;
 &lt;!-- color="primary bg-gradient td-below-navbar" --&gt;
&lt;p&gt;&lt;img src="https://DNSServerDebugLogParser.andibellstedt.com/v1.2.0.0/images/about/author.png" alt="Me"&gt;&lt;/p&gt;
&lt;!-- prettier-ignore --&gt;
&lt;p class="display-6"&gt;- Andi Bellstedt -&lt;/p&gt;
&lt;/div&gt;
 &lt;/div&gt;
 &lt;/div&gt;
 &lt;/div&gt;
&lt;/section&gt;
&lt;div&gt;&lt;a id="td-block-1" class="td-anchor-no-extra-offset"&gt;&lt;/a&gt;&lt;/div&gt;
&lt;section class="row td-box td-box--white td-box--height-auto"&gt;
&lt;div class="col"&gt;
&lt;div class="container"&gt;
&lt;h2 id="向世界问好"&gt;向世界问好！&lt;/h2&gt;
&lt;br&gt;
&lt;p&gt;我是 &lt;strong&gt;Andreas Bellstedt&lt;/strong&gt; — 拥有超过 &lt;strong&gt;20 年经验&lt;/strong&gt; 的 IT 专业人士，主要活跃于企业环境中。通常大家叫我 &lt;strong&gt;Andi&lt;/strong&gt;。&lt;br&gt;
我热爱技术，更热衷于将技术应用于提升可靠性、安全性和运营效率。&lt;/p&gt;
&lt;p&gt;多年来，我积累了广泛的技能。如今，我专注于以 &lt;strong&gt;PowerShell 自动化&lt;/strong&gt; 作为个人 IT 世界的核心。&lt;/p&gt;
&lt;p&gt;我拥有多年专业 &lt;strong&gt;IT 咨询&lt;/strong&gt; 经验，涵盖技术交付、研讨会和架构支持。此外，我还承担过 &lt;strong&gt;领导、协调和管理&lt;/strong&gt; 职责——将技术深度与利益相关者沟通、优先级管理和执行能力相结合。
&lt;br&gt;&lt;/p&gt;</description></item><item><title>搜索结果</title><link>https://DNSServerDebugLogParser.andibellstedt.com/v1.2.0.0/cn/search/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://DNSServerDebugLogParser.andibellstedt.com/v1.2.0.0/cn/search/</guid><description>&lt;!--
 此页面由搜索布局生成，不应直接编辑。
 内容由搜索索引和搜索查询生成。
 搜索查询作为URL参数“q”传递，例如/cn/search?q=example
--&gt;</description></item><item><title>网站信息</title><link>https://DNSServerDebugLogParser.andibellstedt.com/v1.2.0.0/cn/site/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://DNSServerDebugLogParser.andibellstedt.com/v1.2.0.0/cn/site/</guid><description>&lt;!--
 这个注释应该保留用于pester测试的翻译目的，但这个注释的内容对最终用户来说并不重要，可以忽略。
 这个页面旨在提供关于网站的信息，例如使用的主题、构建过程和其他相关细节。
--&gt;
&lt;h2 id="构建信息"&gt;构建信息&lt;/h2&gt;
&lt;p&gt;网站使用 [&lt;span class="badge bg-primary text-bg-primary fs-6"&gt;Docsy]&lt;/span&gt; 主题为 Hugo 构建。&lt;/p&gt;</description></item><item><title>计划任务示例</title><link>https://DNSServerDebugLogParser.andibellstedt.com/v1.2.0.0/cn/docs/examples/scheduletask/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://DNSServerDebugLogParser.andibellstedt.com/v1.2.0.0/cn/docs/examples/scheduletask/</guid><description>&lt;p&gt;此脚本创建了一个每天凌晨 2:00 运行的 Windows 计划任务。它导入模块并处理脚本执行所在文件夹中的所有日志文件（本例中为 &amp;ldquo;C:\Administration\Logs\DNS&amp;rdquo;）。该过程会将输出压缩成 ZIP 文件，并删除原始文件以保持整洁。&lt;/p&gt;
&lt;pre&gt;&lt;code class="language-powershell"&gt;$actionParams = @{
 Execute = &amp;quot;powershell.exe&amp;quot;
 Argument = '-ExecutionPolicy RemoteSigned -Command &amp;quot;Import-Module DNSServer.DebugLogParser; Get-ChildItem .\*.log | Sort-Object lastwritetime, Name -Descending | Convert-DNSDebugLogFile -ComputerName $env:COMPUTERNAME -Delimiter \&amp;quot;;\&amp;quot; -OutputType Both -ContextFilter Packet -OutputCulture sv-SE -CompressOutput&amp;quot;'
 WorkingDirectory = &amp;quot;C:\Administration\Logs\DNS&amp;quot;
}
$Action = New-ScheduledTaskAction @actionParams

$Trigger = New-ScheduledTaskTrigger -Daily -At &amp;quot;2:00AM&amp;quot;

Register-ScheduledTask -TaskName &amp;quot;Process DNS Logs&amp;quot; -Action $Action -Trigger $Trigger -Description &amp;quot;Convert DNS debug logs to CSV daily&amp;quot;
&lt;/code&gt;&lt;/pre&gt;</description></item></channel></rss>