Question [Resolu]Probleme de variable

Plus d'informations
il y a 4 ans 1 mois #29727 par rhiwotar
Bonjour,

Voici un bout de mon script pour localiser les sources de verrouillage des comptes AD.
je check les event, je récupère les infos qui m’intéresse.
puis, j'ai voulu aller plus loin dans mon script en allant chercher les noms des pc avec la commande resolve-dnsname
C'est là que je coince et sans ça, je peux pas aller plus loin dans ma chasse au verrouillage.
[code:1]Resolve-DnsName : [string]192.168.1.1 : Le nom DNS contient un caractère non valide[/code:1]
Alors que si je tape l'ip à la main, la commande marche nickel

avez-vous des idées? Merci d'avance !!

[code:1]$EventLog = get-EventLog -LogName Security -ComputerName $DcServeur -InstanceId 4771 -Newest 1
$EventLog|foreach{
$_.message.Split(\"`n\"«»)|foreach{
if($_ -like \"*nom du compte*\"«»){
$User = $_.Replace(\" Nom du compte : \",\"\"«»)
}
if($_ -like \"*Adresse du client*\"«»){
$Ip = $_.Replace(\" Adresse du client : \",\"\"«»)
$Ip = $Ip -Replace \".*:\",\"\"
}
if($_ -like \"*Port client*\"«»){
$PortOut = $_.Replace(\" Port client : \",\"\"«»)
}
}
$namePC = (Resolve-DnsName $Ip).namehost
$temp=New-Object System.Object
$temp | Add-Member -MemberType NoteProperty -Name \"Date\" -Value $_.TimeGenerated
$temp | Add-Member -MemberType NoteProperty -Name \"Serveur\" -Value $DcServeur
$temp | Add-Member -MemberType NoteProperty -Name \"user\" -Value $User
$temp | Add-Member -MemberType NoteProperty -Name \"Nom PC utilisateur\" -Value $namePC
$temp | Add-Member -MemberType NoteProperty -Name \"ip\" -Value $Ip
$temp | Add-Member -MemberType NoteProperty -Name \"Port utilisateur\" -Value $PortOut
$ErreurVerrou.Add($temp) | Out-Null
}
[/code:1]<br><br>Message édité par: rhiwotar, à: 11/03/20 14:43

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 4 ans 1 mois #29728 par rhiwotar
Réponse de rhiwotar sur le sujet Re:Probleme de variable
Bon, finalement, en cherchant 5min de plus j'ai eu l'idée de jouer avec les regex (sauf que les regex sur internet ne marche pas dans mon contexte et j'ai du la bricoler)

j'ai mis ça dans ma condition d'adresse IP et pouf, plus de problèmes !!

[code:1]$Ip = $_ -match '(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9][0-9]|[0-9])'
$ip = $Matches[0][/code:1]

Connexion ou Créer un compte pour participer à la conversation.

Temps de génération de la page : 0.072 secondes
Propulsé par Kunena