If you’re a command line type administrator like myself you’ll want to check out Mark’s Mark’s DNS Server command line cheat sheet. He’s summarized the Windows Server 2008 CLI commands relating to DNS administration.

Function

Table of Contents

    DNSCMD option

    Example

    Comments

    Do any dnscmd command on a remote system

    dnscmd servername command

    dnscmd main.bigfirm.com /zoneprint bigfirm.com

    Create a primary zone

    dnscmd /zoneadd zonename /primary

    dnscmd /zoneadd bigfirm.com /primary

    Create a secondary zone

    dnscmd /zoneadd zonename /secondary master IP address

    dnscmd /zoneadd bigfirm.com /secondary 192.168.1.1

    Host a zone on a server based on an existing (perhaps restored) zone file

    dnscmd /zoneadd zonename /primary /file filename /load

    dnscmd /zoneadd bigfirm.com /primary /file bigfirm.com.dns /load

    Delete a zone from a server

    dnscmd /zonedelete zonename [/f]

    dnscmd /zonedelete bigfirm.com /f

    (without the /f, dnscmd asks you if you really want to delete the zone)

    Show all of the zones on a DNS server

    dnscmd /enumzones

    dnscmd /enumzones

    Dump (almost) all of the records in a zone

    dnscmd /zoneprint zonename

    dnscmd /zoneprint bigfirm.com

    Doesn’t show glue records.

    Add an A record to a zone

    dnscmd /recordadd zonename hostname A ipaddress

    dnscmd /recordadd bigfirm.com mypc A 192.168.1.33

    Add an NS record to a zone

    dnscmd /recordadd zonename @ NS servername

    dnscmd /recordadd bigfirm.com @ A dns3.bigfirm.com

    Delegate a new child domain, naming its first DNS server

    dnscmd /recordadd zonename childname NS dnsservername

    dnscmd /recordadd bigfirm.com test NS main.bigfirm.com

    This would create the “test.bigfirm.com” DNS child domain unter the bigfirm.com DNS domain

    Add an MX record to a zone

    dnscmd /recordadd zonename @ MX priority servername

    dnscmd /recordadd bigfirm.com @ MX 10 mail.bigfirm.com

    Add a PTR record to a reverse lookup zone

    dnscmd /recordadd zonename lowIP PTR FQDN

    dnscmd /recordadd 1.168.192.in-addr.arpa 3 A pc1.bigfirm.com

    This is the PTR record for a system with IP address 192.168.1.3

    Modify a zone’s SOA record

    dnscmd /recordadd zonename @ SOA primaryDNSservername responsibleemailipaddress serialnumber refreshinterval retryinterval expireinterval defaultTTL

    dnscmd /recordadd bigfirm.com @ SOA winserver.bigfirm.com mark.bigfirm.com 41 1800 60 2592000 7200

    Ignores the serial number if it’s not greater than the current serial number

    Delete a resource record

    dnscmd /recorddelete zonename recordinfo [/f]

    dnscmd /recorddelete bigfirm.com @ NS main.bigfirm.com /f

    Again, “/f” means “don’t annoy me with a confirmation request, just do it.”

    Create a resource record and incorporate a nonstandard TTL

    dnscmd /recordadd zonename leftmostpartofrecord TTL restofrecord

    dnscmd /recordadd bigfirm.com pc34 3200 A 192.168.1.4

    Reload a zone from its zone file in \windows\system32\dns

    dnscmd /zonereload zonename

    dnscmd /zonereload bigfirm.com

    Really only useful on primary DNS servers

    Force DNS server to flush DNS data to zone file

    dnscmd /zonewriteback zonename

    dnscmd /zonewriteback bigfirm.com

    Tell a primary whom to allow zone transfers to

    dnscmd /zoneresetsecondaries zonename /nonsecure|securens

    dnscmd /zoneresetsecondaries bigfirm.com /nonsecure

    That example says to allow anyone who asks to get a zone transfer

    Enable/disable DNS NOTIFY

    dnscmd /zoneresetsecondaries zonename /notify|/nonotify

    dnscmd /zoneresetsecondaries bigfirm.com /nonotify

    Example disables DNS notification, which is contrary to the default settings.

    Tell a secondary DNS server to request any updates from the primary

    dnscmd /zonerefresh zonename

    dnscmd /zonerefresh bigfirm.com

    Enable or disable dynamic DNS on a zone

    dnscmd /config zonename /allowupdate 1|0

    1 enables, 0 disables, 0 is default

    Stop the DNS service

    Either net stop dns or sc stop dns

    (No dnscmd command for this)

    Start the DNS service

    Either net start dns or sc start dns

    (No dnscmd command for this)

    Install the DNS service on a 2008 full install system

    servermanagercmd -install dns

    Install the DNS service on a 2008 Server Core system

    ocsetup DNS-Server-Core-Role

    Case matters — ocsetup dns-server-core-role would fail

    Uninstall the DNS service on a 2008 Server full install system

    servermanagercmd -remove dns

    Uninstall the DNS service on a 2008 Server Core system

    ocsetup /uninstall DNS-Server-Core-Role

    You’ll need to become intimately familiar with administering DNS via the command line if you’re running the Server Core version of Windows 2008.

    Leave a Reply

    Your email address will not be published. Required fields are marked *