# Déterminer l'adresse IP de la machine locale $adresseIPLocale = (Get-NetIPAddress | Where-Object {$_.AddressFamily -eq "IPv4" -and $_.InterfaceAlias -ne "Loopback"}).IPAddress # Vérifier si l'adresse IP locale est correctement définie if ($adresseIPLocale) { # Convertir l'adresse IP locale en chaîne de caractères $adresseIPLocaleString = $adresseIPLocale.ToString() # Définir le préfixe du sous-réseau en fonction de l'adresse IP locale $prefixeSousReseau = $adresseIPLocaleString.Substring(0, $adresseIPLocaleString.LastIndexOf(".")) # Liste des adresses IP à tester dans le même sous-réseau $adressesIP = @() for ($i = 1; $i -le 254; $i++) { $adressesIP += "$prefixeSousReseau.$i" } # Découvrir les machines actives sur le réseau $machinesActives = @() foreach ($adresseIP in $adressesIP) { $resultatPing = Test-Connection -ComputerName $adresseIP -Count 1 -Quiet -ErrorAction SilentlyContinue if ($resultatPing) { $machinesActives += $adresseIP } } # Afficher les adresses IP des machines actives sur le réseau Write-Host "Machines actives sur le réseau :" $machinesActives } else { Write-Host "Erreur : Impossible de récupérer l'adresse IP locale." }