今天带来的是一款用于在命令行管理DNS服务器的命令Dnscmd,它可以用于新建区域,编写处理脚本,查看目标DNS服务器的详细信息等等功能,个人觉得最大的功能就是能使用for循环去批量创建多个区域以及记录。
一.dnscmd命令
用法: DnsCmd <ServerName> <Command> [<Command Parameters>]
<ServerName>:
ip地址或主机名 --远程或本地DNS服务器
-- 本地计算机上的DNS服务
<Command>:
/Info -- 获取服务器信息
/Config -- 重置服务器或区域配置
/EnumZones -- 枚举区域
/Statistics -- 查询/清除服务器统计信息数据
/ClearCache -- 清除 DNS 服务器缓存
/WriteBackFiles -- 写入所有区域或根提示数据文件
/StartScavenging -- 开始服务器清理
/IpValidate -- 验证远程 DNS 服务器
/EnumKSPs -- 枚举可用的密钥存储提供程序
/ResetListenAddresses -- 将服务器 IP 地址设置为服务 DNS 请求
/ResetForwarders -- 将 DNS 服务器设置为转发递归查询
/ZoneInfo -- 查看区域信息
/ZoneAdd -- 在 DNS 服务器上创建新区域
/ZoneDelete -- 从 DNS 服务器或 DS 删除区域
/ZonePause -- 暂停区域
/ZoneResume -- 恢复区域
/ZoneReload -- 从其数据库(文件或 DS)重新加载区域
/ZoneWriteBack -- 将区域写回到文件
/ZoneRefresh -- 强制刷新主机的辅助区域
/ZoneUpdateFromDs -- 使用来自 DS 的数据更新 DS 集成区域
/ZonePrint -- 显示区域中的所有记录
/ZoneResetType -- 更改区域类型
/ZoneResetSecondaries -- 重置区域的辅助\通知信息
/ZoneResetScavengeServers -- 重置区域的清理服务器
/ZoneResetMasters -- 重置辅助区域的主服务器
/ZoneExport -- 将区域导出到文件
/ZoneChangeDirectoryPartition -- 将区域移动到另一目录分区
/ZoneSeizeKeymasterRole -- 占用区域的密钥主机角色
/ZoneTransferKeymasterRole -- 传送区域的密钥主机角色
/ZoneEnumSKDs -- 枚举区域的签名密钥描述符
/ZoneAddSKD -- 为区域创建新的签名密钥描述符
/ZoneDeleteSKD -- 删除区域的签名密钥描述符
/ZoneModifySKD -- 修改区域的签名密钥描述符
/ZoneValidateSigningParameters -- 验证区域的 DNSSEC 联机签名参数
/ZoneSetSKDState -- 为区域的签名密钥描述符设置活动和/或待机密钥
/ZoneGetSKDState -- 检索区域的签名密钥描述符的动态状态
/ZonePerformKeyRollover -- 在区域的签名密钥描述符中触发密钥滚动更新
/ZonePokeKeyRollover -- 在区域的签名密钥描述符中触发密钥滚动更新
/ZoneSign -- 使用 DNSSEC 联机签名参数为区域签名
/ZoneUnsign -- 从已签名的区域中删除 DNSSEC 签名
/ZoneResign -- 在已签名的区域中重新生成 DNSSEC 签名
/EnumRecords -- 枚举同一名称的记录
/RecordAdd -- 在区域或根提示中创建记录
/RecordDelete -- 从区域、根提示或缓存中删除记录
/NodeDelete -- 删除同一名称的所有记录
/AgeAllRecords -- 对区域中的节点进行强制老化
/TrustAnchorAdd -- 在 DNS 服务器上创建新的信任密钥区域
/TrustAnchorDelete -- 从 DNS 服务器或 DS 删除信任密钥区域
/EnumTrustAnchors -- 显示信任定位点的状态信息
/TrustAnchorsResetType -- 更改信任密钥区域的区域类型
/EnumDirectoryPartitions -- 枚举目录分区
/DirectoryPartitionInfo -- 获取有关目录分区的信息
/CreateDirectoryPartition -- 创建目录分区
/DeleteDirectoryPartition -- 删除目录分区
/EnlistDirectoryPartition -- 将 DNS 服务器添加到分区复制作用域
/UnenlistDirectoryPartition -- 从复制作用域中删除 DNS 服务器
/CreateBuiltinDirectoryPartitions -- 创建内置分区
/ExportSettings -- 将设置输出到 DNS 服务器数据库目录中的 DnsSettings.txt
/OfflineSign -- 脱机签名区域文件,包括密钥生成/删除
/EnumTrustPoints -- 显示所有信任点的有效刷新信息
/ActiveRefreshAllTrustPoints -- 立即对所有信任点执行有效刷新
/RetrieveRootTrustAnchors -- 通过 HTTPS 检索根信任定位点
二.常用命令以及案例
获取服务器信息


枚举区域

查看区域信息

创建新区域
用法:DnsCmd /ZoneAdd []
ZoneType:指定要创建的区域类型/dsprimary: 创建 Active Directory 集成区域/primary:正向区域/secondary:反向区域/stub:存根区域/dsstub:域存根区域/forewarder:转发区域/dsforewader:域转发区域

创建多个区域


创建记录
用法:dnscmd [] /recordadd

批量创建记录
