Subscribe
Accepted Solution

Get Filer dns info

Guys,

Unless i'm totally missing it or brainfreeze, is there not an API for DNS info for the powershell toolkit.

Any help would be greatly appreciated.

Re: Get Filer dns info

I don't see any.  As an alternative, you could read the resolv.conf file with Read-NaFile.

Re: Get Filer dns info

Ah..rdfile.. no way.. I needed to do the following.. Check this out

<#
.SYNOPSIS
  Queries physical filers for dns info
.DESCRIPTION
 
  .EXAMPLE
  .\dns_check.ps1
.DATE
  05-20-2014
.Version
     v1
.Notes
  .Author
   Josh Goldfarb
.Change Log
      v1.0 - Initial
  

#>

cls

## Define Global PWD
$password = read-host "Enter Root password" -assecurestring
#$password = ConvertTo-SecureString "*" -AsPlainText -Force
$cred = New-Object -TypeName System.Management.Automation.PSCredential -ArgumentList "root",$password

#Import filers
$dfmimport = import-csv \\filershare\dfmcontrollers.csv | Select controller

#Clear Screen
cls
$global = @()

$dfmimport |  % {


$filer = $_.controller.tolower()
Write-host "`n`tConnectiong to controller " $filer
$c = connect-nacontroller $filer -cred $cred -https -ea "silentlycontinue"
if ($c -ne $Null) {
## Gather DNS info
$i = invoke-nassh "dns info"
$new = $i.split("`n")
$ip = $new | ? {$_ -like "*10.*"}
$ip  = $ip -replace '\s+', ' '

$ip | % {
$s = $_.split(" ")

if ($s[1] -like "*no*") {
$info = "no info"
} else {
$info = $s[1]
}

$customobject = new-object psobject
  add-member -inputobject $customobject -membertype noteproperty -name Filer -value $filer
  add-member -inputobject $customobject -membertype noteproperty -name "Connection issue" -value ""
  add-member -inputobject $customobject -membertype noteproperty -name "IP Address" -value $s[0]
  add-member -inputobject $customobject -membertype noteproperty -name "Status" -value $info.tolower()
    $global += $customobject

}

} else {
$customobject = new-object psobject
  add-member -inputobject $customobject -membertype noteproperty -name Filer -value $filer
  add-member -inputobject $customobject -membertype noteproperty -name "Connection issue" -value yes
  add-member -inputobject $customobject -membertype noteproperty -name "IP Address" -value ""
  add-member -inputobject $customobject -membertype noteproperty -name "Status" -value ""
    $global += $customobject
}
clear-variable -name ip
}


$global | ft -autosize
$global | export-csv c:\temp\dnsinfo.csv -notypeinformation