Resolve DnsName并不总是返回正确的类型



我试图制作一个简单的脚本,告诉我一个域是否有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

最新更新