Check Gateway.ps1 1.1 KB

123456789101112131415161718192021222324252627
  1. $ErrorActionPreference= 'silentlycontinue'
  2. $LocalIP = ((Get-WmiObject Win32_NetworkAdapterConfiguration | Where-Object {$_.IPEnabled}).DefaultIPGateway)
  3. $MacAddress = ((Get-NetNeighbor -IPAddress $LocalIP).LinkLayerAddress)
  4. $PublicIP = ((Resolve-DnsName -Name myip.opendns.com -Server resolver1.opendns.com).IPAddress)
  5. $MacFreebox = 'F4-CA-E5*'
  6. $MacLivebox = '00-37-B7*'
  7. $MacApple = 'BC-B8-63*'
  8. $MacXiaomi = 'E0-CC-F8*'
  9. # Checking if Mac Address is known
  10. if($MacAddress -like $MacFreebox) # Check for Freebox
  11. {$Router = "a Freebox"}
  12. elseif($MacAddress -like $MacLivebox) # Check for Livebox
  13. {$Router = "a Livebox"}
  14. elseif($MacAddress -like $MacApple) # Check for Apple Device
  15. {$Router = "an Apple device"}
  16. elseif($MacAddress -like $MacXiaomi) # Check for Xiaomi Device
  17. {$Router = "a Xiaomi device"}
  18. else # If router is unknown
  19. {$Router = "Unknown"}
  20. if ($Router -like 'Unknown') # In the case router is unknown
  21. {Write-Host "Router is unknown ($MacAddress)." ; exit 1}
  22. else
  23. {Write-Host "Gateway is $Router ($MacAddress). `nLocal IP is $LocalIP. `nPublic IP is $PublicIP." ; exit 0} # Router is known, it's ok, error code 0
  24. echo $?