542179528 发表于 2018-7-30 06:34:30

利用ansible批量管理windows2008 R2 以上dns服务器

dns.ps1 说明  
# ************************************************************
  
# *                                                          *
  
# *               Powershell部署DNS脚本                  *
  
# *                                                          *
  
# ************************************************************
  
#set-executionpolicy remotesigned
  
# 修改dns所用参数
  
#################################################################################################
  
#参数申明
  
param($a,$b,$c,$d,$e)
  
$parameter=$a
  
$Domain=$b
  
$name=$c
  
$ipaddress=$d
  
$ipaddress2=$e
  
#################################################################################################
  
import-module dnsshell # 导入dnsshell 模块
  
##创建主域
  
if ($parameter -eq "dnszone")
  
{
  
new-dnszone -zonename $Domain -zonetype primary
  
}
  
## 添加A记录
  
elseif ($parameter -eq "A")
  
{
  
new-dnsrecord -zonename $Domain -name $name -recordtype A -ipaddress $ipaddress
  
}
  
##添加CNAME记录
  
elseif ($parameter -eq "CNAME")
  
{
  
new-dnsrecord -zonename$Domain -name $name -recordtype CNAME -hostname $ipaddress
  
}
  
## 删除dns记录
  
elseif ($parameter -eq "delete")
  
{
  
$ARecord = Get-WmiObject -Namespace root\MicrosoftDNS -class MicrosoftDNS_ResourceRecord -filter "containername='$Domain' AND OwnerName='$name.$Domain' AND RecordData='$ipaddress'"
  
$ARecord.delete()
  
}
  
## 更新dns记录
  
elseif ($parameter -eq "update")
  
{
  
$ARecord = Get-WmiObject -Namespace root\MicrosoftDNS -class MicrosoftDNS_ResourceRecord -filter "containername='$Domain' AND OwnerName='$name.$Domain' AND RecordData='$ipaddress'"
  
$ARecord.Modify($ARecord.TTL,"$ipaddress2")
  
}
  
else
  
{
  
exit
  
}
页: [1]
查看完整版本: 利用ansible批量管理windows2008 R2 以上dns服务器