Monday, June 1, 2015

Get-DnsAndIp.ps1 v1 released

After troubleshooting my share of deployments, only to fins out there was a DNS record or two missing, made me think of a way to check a DNS server for "all" the required records for a specific deployment.

I have tried different ways to discover and check for name to IP resolution techniques in Powershell, but none of the first attempts were any good. Then I had the task of doing yet another health check, and I decided there had to be a better way to do my research of the DNS deployment.

Finally I discovered the Resolve-DnsName cmdlet, which created an output I could easily work with within powershell. The the rest was the matter of finding out what to look for.

My script doesn't gather everything, but most of the FQDN's I'm used to work with (suggestions for other fqdn's are welcome),

As of the first release, the script will look for the following in a deployment (script must be run with a right to read the CsConfiguration, and must be able to reach the designated DNS servers):

  • Configured Pools 
  • Configured Servers    
  • SIMPLE URLS deployed Internally    
  • SIMPLE URLS deployed Externally    
  • Internal web URL    
  • External web URL    
  • Edge Service FQDNs    
  • WacServer URL deployed Internally    
  • WacServer URL deployed Externally    
  • LyncdiscoverInternal    
  • Internal Lyncdiscover for Mobility       
  • External Lyncdiscover    
  • Internal _sip._Tls resource records        
  • External _sip._Tls resource records     
  • Sip Federation resource records    
  • Sip record internally    
  • Sip record Externally    
  • XMPP resource records

Please read the post on Technet for a more comprehensive description.

As always, the script can be downloaded from the Technet Gallery