PowerShell - Adresse IP

Comment valider que nous sommes bien en présence d'adresse IP dans ces scripts PowerShell ?

L'adresse IP est une composante essentielle du fonctionnement d'Internet, mais il peut parfois être difficile de s'assurer qu'une adresse IP est valide. C'est là qu'intervient PowerShell, l'outil en ligne de commande de Microsoft pour la gestion et l'automatisation de Windows.

Utilisation d'une expression régulière (REGEX)

Il existe des expressions régulières (REGEX) qui peuvent être utilisées pour valider la valeur qui doit être l'adresse IP dans notre script PowerShell avec l’opérateur -match qui le validera comme dans l’exemple suivant :


$ipAddress = "192.168.6.1"

if ($ipAddress -match "^(?:(?:0?0?\d|0?[1-9]\d|1\d\d|2[0-5][0-5]|2[0-4]\d)\.){3}(?:0?0?\d|0?[1-9]\d|1\d\d|2[0-5][0-5]|2[0-4]\d)$") {
    Write-Host -ForegroundColor Green "L'adresse IP $ipAddress est valide."
}
else {
    Write-Host -ForegroundColor Red "L'adresse IP $ipAddress est invalide."
}

Le regex utilise des classes de caractères pour correspondre aux nombres valides pour chaque section de l'adresse IP (entre 0 et 255) et des groupes de capture pour vérifier qu'il y a bien quatre sections séparées par des points.

Si la chaîne de caractères correspond à l'expression régulière, l'adresse IP est considérée comme valide et un message est affiché en conséquence. Sinon, un autre message est affiché indiquant que l'adresse IP est invalide.

Utilisation du type System.Net.IPAddress

Ce script commence par définir une adresse IP fictive, "102.155.300.1", dans la variable $IpAddress. Ensuite, il essaie de convertir cette adresse IP en un objet System.Net.IPAddress en utilisant le type [System.Net.IPAddress] et la méthode de conversion [System.Net.IPAddress]$ip = $IpAddress.

Si l'adresse IP est valide, le script se termine sans problème. Si l'adresse IP n'est pas valide, PowerShell lance une exception avec le message "This IP address isn't available".

Ce script peut être utile pour valider des adresses IP dans divers scénarios, tels que la configuration de pare-feux, la gestion de réseaux et la résolution de problèmes de connexion Internet. En utilisant PowerShell, il est facile de valider rapidement une adresse IP et de s'assurer qu'elle est bien formatée.

$IpAddress = "102.155.300.1"
try {[System.Net.IPAddress]$ip = $IpAddress} catch {throw "This IP address isn't available"}

Conclusion

PowerShell est un outil puissant pour la gestion et l'automatisation de Windows, et le script que nous avons vu ici montre comment il peut être utilisé pour valider une adresse IP. En utilisant ce script, il est facile de s'assurer que des adresses IP sont bien formatées et valides, ce qui peut aider à résoudre rapidement les problèmes de réseau et de connexion Internet.

Commentaires

Posts les plus consultés de ce blog

Powershell - Supprimer Teams sur l'ensemble des profils utilisateurs

Powershell - Comment tester les ports TCP ?

MRemoteNG - Voir les mots de passe dans l'application