Назад | Перейти на главную страницу

Powershell Get-Netadapter varible передает Set-DnsClientServerAddress

Всем добрый день,

Попытка написать простой скрипт, который найдет понятное имя адаптера Ethernet на данном компьютере и передаст эту строку в командлет Set-DnsClientServerAddress, чтобы я мог изменить настройки DNS-сервера только на интерфейсе Ethernet.

Я пробовал это:

$EthAdapter = Get-NetAdapter -Name Ether* | select Name | Set-DnsClientServerAddress -ServerAddresses 192.168.0.1, 192.168.0.2 -PassThru

И получаем ошибку:

Set-DnsClientServerAddress: набор параметров не может быть разрешен с использованием указанных именованных параметров. В C: \ users \ zsnow \ Desktop \ setup.ps1: 5 символов: 59 + ... lect Имя | Set-DnsClientServerAddress -ServerAddresses 192.168.0.1, ... + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~ + CategoryInfo: InvalidArgument: (@ {Name = Ethernet 2}: ​​PSObject) [Set-DnsClientServerAddress], ParameterBindingException + FullyQualifiedErrorId: AmbiguousParameterSet, Set- DnsClientServerAddress

Я пробовал это:

$EthAdapter = Get-NetAdapter -Name Ether* | select Name
Set-DnsClientServerAddress -InterfaceAlias $EthAdapter -ServerAddresses 192.168.0.1, 192.168.0.2 -PassThru

И получите эту ошибку:

Set-DnsClientServerAddress: не найдено объектов MSFT_DNSClientServerAddress со свойством InterfaceAlias, равным «@ {Name = Ethernet 2}». Проверьте значение свойства и повторите попытку. В C: \ users \ zsnow \ Desktop \ setup.ps1: 6 символов: 1 + Set-DnsClientServerAddress -InterfaceAlias ​​$ EthAdapter -ServerAddress ... + ~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~ + CategoryInfo: ObjectNotFound: (@ {Name = Ethernet 2}: ​​String) [Set-DnsClientServerAddress], CimJobException + FullyQualifiedErrorId: CmdletizationQuery_NotFound_InterfaceAlias, Set-DnsClientServerAddress

Любая помощь будет оценена.

Попробуйте.

$EthAdapters = Get-NetAdapter -Name Ether*
foreach ($EthAdapter in $EthAdapters)
{
    Set-DnsClientServerAddress -ServerAddresses 192.168.0.1, 192.168.0.2 -PassThru -InterfaceAlias $EthAdapter.name -Verbose
}