Question Modifier DNS sur une carte réseau

Plus d'informations
il y a 12 ans 11 mois #14465 par Tibreizh
Bonjour,

Voilà, je suis débutant et dans mon boulot j'ai eu besoin de changer les adresses DNS des postes utilisateurs distants.

J'ai repris ce code que j'ai légèrement transformé :
[code:1]$cred = Get-Credential
$ret = Read-Host \"Saisissez l'adresse IP cible\"

$colItems = get-wmiobject -class \"Win32_NetworkAdapterConfiguration\" -ComputerName $ret -Credential $cred | where{$_.IpEnabled -match \"True\"}

$strDNSservers = @(\"x.x.x.x\", \"y.y.y.y\"«»)

foreach ($objItem in $colItems) {

Write-Host \"Nom de la machine : \" $objItem.DNSHostName
write-host \"MAC Address : \" $objItem.MACAddress
write-host \"IPAddress : \" $objItem.IPAddress
write-host \"DNS Servers : \" $objItem.DNSServerSearchOrder
Write-host \"DNS suffixes: \" $objItem.DNSDomainSuffixSearchOrder
$objItem.SetDNSServerSearchOrder($strDNSservers)

}[/code:1]

Cela marche très bien, cependant lorsqu'il y a plusieurs interfaces réseaux, le code ci-dessus change les DNS pour toutes les interfaces.

Comment peut-on cibler une carte réseau en particulier pour changer le DNS afin de ne pas affecter le paramétrage des autres cartes ? (genre carte wifi, utilisée pour internet)

Merci pour votre aide.

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

Plus d'informations
il y a 12 ans 11 mois #14474 par buissonneau
un petit bout de script qui pourrait peut-être t'aider.

[code:1] # Get Network Information

$NetworkAdapter = $NetworkAdapterConfiguration |
where {$_.Index -match $Network.DeviceID -and $_.IPEnabled -eq $true } |
select -first 1
$IPAddress = ($NetworkAdapter.IpAddress | select -first 1).ToString()
$IPSubNet = ($NetworkAdapter.IPSubnet | select -first 1).ToString()
$MACAddress = $NetworkAdapter.MACAddress[/code:1]

Peut-être qu'avec le select -First tu aura ta solution

@+

Francis

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

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