更新日:2021/09/01
このページではPowershell コマンドレットによりWindows DNS サーバに登録されたレコードを取得するサンプルコードを紹介します。
Aレコード、逆引きレコードの出力や件数の数え方などを紹介しています。
DNS サーバ上のエントリを取得するPowershell コマンドのサンプルです。DNSサーバ上で実行します。
次の例ではA コードを取得しています。
レコードタイプに関しては次のページを参考にしてください。
Get-DnsServerResourceRecord
https://docs.microsoft.com/en-us/powershell/module/dnsserver/get-dnsserverresourcerecord?view=windowsserver2019-ps
サンプルコード:
PS C:\> Get-DnsServerResourceRecord -zonename "testdomain.local" -RRType "A"
実行結果:
HostName RecordType Type Timestamp TimeToLive RecordData
-------- ---------- ---- --------- ---------- ----------
server01 A 1 0 01:00:00 10.0.0.1
server02 A 1 0 01:00:00 10.0.0.2
server03 A 1 0 01:00:00 10.0.0.3
次の例ではDNSホスト名の一覧を取得しています。
サンプルコード:
PS C:\> Get-DnsServerResourceRecord -zonename "testdomain.local" -rrtype "A" | select-object HostName
実行結果:
HostName
--------
server01
server02
server03
次の例ではエントリの件数を表示しています。すべての結果を出力した後で、count プロパティにより出力しています。
サンプルコード:
PS C:\> (Get-DnsServerResourceRecord -zonename "testdomain.local" -rrtype "A" | select-object HostName).count
実行結果:
3
逆引きポインタを出力する Powershell サンプルコマンドです。
逆引き参照ゾーンは次のとおりです。
0.0.10.in-addr
サンプルコード:
PS C:\> Get-DnsServerResourceRecord -zonename "0.0.10.in-addr.arpa" -rrtype "ptr"
実行結果:
HostName RecordType Type Timestamp TimeToLive RecordData
-------- ---------- ---- --------- ---------- ----------
1 PTR 12 0 01:00:00 server01.testdomain.local.
2 PTR 12 0 01:00:00 server02.testdomain.local.
3 PTR 12 0 01:00:00 server03.testdomain.local.
以下の例では逆引きレコードのFQDN名を取得しています。
サンプルコード:
PS C:\> Get-DnsServerResourceRecord -zonename "0.0.10.in-addr.arpa" -rrtype "ptr" | select-object RecordData | Foreach-object {($_.RecordData).PtrDomainName}
実行結果:
server01.testdomain.local.
server02.testdomain.local.
server03.testdomain.local.
[Powershell FAQ トップへ]
[FAQ CENTER トップ]
本サイト内掲載されている情報は、著作権法により保護されています。いかなる場合でも権利者の許可なくコピー、配布することはできません。 このページはリンクフリーです。(このページへの直接リンクも可能です。) Copyright(c) tooljp.com 2007-2018