Dnscmd

Dnscmd是一个用于在命令行界面管理DNS服务器的工具,支持多种操作如查看服务器信息、枚举区域、创建和删除区域及记录。它特别适合批量操作,例如可以使用for循环批量创建多个区域。此外,还可以进行DNS服务器配置、缓存清除和区域签名等高级功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

今天带来的是一款用于在命令行管理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

批量创建记录

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值