我试图制作一个简单的脚本,告诉我一个域是否有a、MX、SPF记录等等
该脚本主要执行以下操作。
If (Resolve-DnsName $TestDomain -Type A -Server '8.8.8.8') {
[bool]$ATest = $true
}
Else {
[bool]$ATest = $false
}
上面命令的问题是,即使返回的类型是SOA记录而不是a记录,它仍然是真的。
上面的命令返回如下。
Resolve-DnsName 'TEST.<Blank>.COM' -TYPE 'A'
Name Type TTL Section PrimaryServer NameAdministrator SerialNumber
---- ---- --- ------- ------------- ----------------- ------------
<blank>.COM SOA 3600 Authority <blank> <blank>
我如何制作一个简单的命令,告诉我是的,有一个a记录。我想其他的都是假的吗?
您可以过滤&检查计数
(Resolve-DnsName <blank>.COM -Type A -Server '8.8.8.8' -DnsOnly | ? { $_.Type -eq 'A' }).Count -gt 0