Wydawać by się mogło, że konflikt adresów MAC nie powinien się zdarzać… a jednak, życie w IT bywa interesujące. Żeby sprawdzić jakie adresy MAC są wykorzystywane przez 'podejrzane komputery’ można posłużyć się następującym skryptem:
$compList1 = 'Server01','Server02','Server03'
Invoke-Command -ComputerName $compList1 {Get-NetAdapter} | Select MacAddress,PSComputerName,Name
Zaczynamy od zainicjowania listy komputerów. Tutaj została ona podana jawnie:
$compList1 = 'Server01','Server02','Server03'
Teraz na każdym z komputerów, korzystając z remotingu uruchomimy skrypt. Invoke-Command uruchamia zdalne komendy na komputerach wskazanych przez parametr ComputerName. Tą komendą do uruchomienia na każdym komputerze, jest Get-NetAdapter.
Oczywiście zwróconych zostanie wiele wyników, z mnóstwem nieinteresujących nas w danej chwili informacji. Dlatego wynik ten przesyłamy potokiem do select, w którym wybierzemy tylko to co nas interesuje:
- MacAddress
- Nazwę komputera, z którego ten Mac Address pochodzi. Nazwa jest zawarta w zmiennej PSComputerName, która automatycznie jest dodawana do outputu polecenia Invoke-Command, właśnie po to, aby móc zidentyfkować z ktorego komputera pochodzi wynik.
I gotowe! Raz zbudowany skrypt pomoże na bieżąco weryfikować unikalność adresów MAC.