Partilhar via


Sintaxe, contextos e formatação do comando Netsh

Você pode usar este artigo para aprender a inserir contextos e subcontextos netsh, entender a sintaxe netsh e a formatação de comandos e como executar comandos netsh em computadores locais e remotos.

Netsh é um utilitário de script de linha de comando que permite exibir ou modificar a configuração de rede de um computador que está em execução no momento. Os comandos Netsh podem ser executados digitando comandos no shell netsh e ser usados em arquivos em lote ou scripts. Os computadores remotos e o computador local podem ser configurados usando comandos netsh.

O Netsh também fornece um recurso de script que permite executar um grupo de comandos em modo de lote em um computador especificado. Com o netsh, você pode salvar um script de configuração em um arquivo de texto para fins de arquivamento ou para ajudá-lo a configurar outros computadores.

Sintaxe

netsh
netsh [-a AliasFile] [-c Context] [-r RemoteMachine] [-u [DomainName\]UserName] [-p Password | *] [Command | -f ScriptFile]

Os seguintes parâmetros são considerados opcionais.

Parâmetro Descrição
-a Especifica que regressará ao shell netsh depois de executar AliasFile.
AliasFile Especifica o nome do arquivo de texto que contém um ou mais comandos netsh.
-c Especifica que netsh entra no contexto de netsh especificado.
Context Especifica o contexto do netsh que pretende inserir.
-r Especifica que você deseja que o comando seja executado em um computador remoto. O serviço Registro Remoto deve estar em execução no computador remoto. Se não estiver em execução, o Windows exibirá uma mensagem de erro "Caminho de rede não encontrado".
RemoteComputer Especifica o computador remoto que você deseja configurar.
-u Especifica que você deseja executar o comando netsh em uma conta de usuário.
DomainName\ Especifica o domínio onde a conta de usuário está localizada. O padrão é o domínio local se DomainName\ não for especificado.
UserName Especifica o nome da conta de usuário.
-p Especifica que você deseja fornecer uma senha para a conta de usuário.
Password Especifica a senha para a conta de usuário que você especificou com -uUserName.
Command Especifica o comando netsh que você deseja executar.
-f Sai netsh após a execução do script designado com ScriptFile.
ScriptFile Especifica o script que você deseja executar.

Observação

Se você especificar -r seguido por outro comando, netsh executará o comando no computador remoto e retornará ao prompt de comando. Se você especificar -r sem outro comando, netsh será aberto no modo remoto. O processo é semelhante ao uso de set machine no shell de comando netsh. Ao usar o -r, você define o computador de destino apenas para a instância atual do netsh. Depois de sair e entrar novamente no netsh, o computador de destino é redefinido como o computador local. Pode-se executar comandos netsh num computador remoto especificando um nome de computador armazenado no WINS, um nome UNC, um nome de Internet a resolver pelo servidor DNS, ou um endereço IP.

Executando comandos netsh

Para executar um comando netsh, você deve iniciar o netsh a partir do prompt de comando ou do PowerShell digitando netsh e pressionando ENTER. Em seguida, você pode alterar para o contexto que contém o comando que você deseja usar. Os contextos disponíveis dependem dos componentes de rede instalados.

Por exemplo, se você digitar dhcp no shell netsh e pressionar ENTER, o netsh será alterado para o contexto do servidor DHCP. Se você não tiver a função de servidor DHCP instalada, a seguinte mensagem será exibida:

The following command was not found: dhcp.

Contextos Netsh

Netsh interage com outros componentes do sistema operacional usando arquivos de biblioteca de vínculo dinâmico (DLL).

Cada DLL auxiliar do netsh fornece um conjunto extenso de recursos chamado contexto , que é um grupo de comandos específicos para um papel ou recurso específico de um servidor de rede. Esses contextos estendem a funcionalidade do netsh fornecendo suporte de configuração e monitoramento para um ou mais serviços, utilitários ou protocolos.

Por exemplo, Dhcpmon.dll fornece ao netsh o contexto e o conjunto de comandos necessários para configurar e gerenciar servidores DHCP.

Você pode obter uma lista de contextos netsh abrindo o prompt de comando ou o Windows PowerShell, digite netsh /? ou netsh help e pressione ENTER.

Um exemplo de saída é o seguinte:

The following commands are available:

Commands in this context:
..            - Goes up one context level.
?             - Displays a list of commands.
abort         - Discards changes made while in offline mode.
add           - Adds a configuration entry to a list of entries.
advfirewall   - Changes to the `netsh advfirewall' context.
alias         - Adds an alias.
branchcache   - Changes to the `netsh branchcache' context.
bridge        - Changes to the `netsh bridge' context.
bye           - Exits the program.
commit        - Commits changes made while in offline mode.
delete        - Deletes a configuration entry from a list of entries.
dhcpclient    - Changes to the `netsh dhcpclient' context.
dnsclient     - Changes to the `netsh dnsclient' context.
dump          - Displays a configuration script.
exec          - Runs a script file.
exit          - Exits the program.
firewall      - Changes to the `netsh firewall' context.
help          - Displays a list of commands.
http          - Changes to the `netsh http' context.
interface     - Changes to the `netsh interface' context.
ipsec         - Changes to the `netsh ipsec' context.
ipsecdosprotection - Changes to the `netsh ipsecdosprotection' context.
lan           - Changes to the `netsh lan' context.
namespace     - Changes to the `netsh namespace' context.
netio         - Changes to the `netsh netio' context.
offline       - Sets the current mode to offline.
online        - Sets the current mode to online.
popd          - Pops a context from the stack.
pushd         - Pushes current context on stack.
quit          - Exits the program.
ras           - Changes to the `netsh ras' context.
rpc           - Changes to the `netsh rpc' context.
set           - Updates configuration settings.
show          - Displays information.
trace         - Changes to the `netsh trace' context.
unalias       - Deletes an alias.
wfp           - Changes to the `netsh wfp' context.
winhttp       - Changes to the `netsh winhttp' context.
winsock       - Changes to the `netsh winsock' context.

The following sub-contexts are available:
advfirewall branchcache bridge dhcpclient dnsclient firewall http interface ipsec ipsecdosprotection lan namespace netio ras rpc trace wfp winhttp winsock

To view help for a command, type the command, followed by a space, and then type ?.

Subcontextos Netsh

Os contextos Netsh podem conter comandos e contextos adicionais, chamados de subcontextos . Por exemplo, dentro do contexto da interface , pode mudar para os subcontextos IPv4 e IPv6.

Para exibir uma lista de comandos e subcontextos que você pode usar dentro de um contexto, no shell netsh, digite o nome do subcontexto e, em seguida, digite ? ou ajuda. Por exemplo:

netsh> interface help

The following commands are available:

Commands in this context:
6to4           - Changes to the `netsh interface 6to4' context.
?              - Displays a list of commands.
dump           - Displays a configuration script.
help           - Displays a list of commands.
httpstunnel    - Changes to the `netsh interface httpstunnel' context.
ipv4           - Changes to the `netsh interface ipv4' context.
ipv6           - Changes to the `netsh interface ipv6' context.
isatap         - Changes to the `netsh interface isatap' context.
portproxy      - Changes to the `netsh interface portproxy' context.
set            - Sets configuration information.
show           - Displays information.
tcp            - Changes to the `netsh interface tcp' context.
teredo         - Changes to the `netsh interface teredo' context.
udp            - Changes to the `netsh interface udp' context.

The following sub-contexts are available:
6to4 httpstunnel ipv4 ipv6 isatap portproxy tcp teredo udp

To view help for a command, type the command, followed by a space, and then type ?.

Para executar tarefas em outro contexto sem alterar do contexto atual, digite o caminho de contexto do comando que você deseja usar no shell netsh. Por exemplo, para adicionar um endereço IPv4 estático para "NetLAN1" e especificar a máscara de sub-rede e o gateway, digite:

netsh interface ipv4 set address "NetLAN1" static <IP_Address> <Subnet_Mask> <Gateway>

Formatação da legenda

Você pode usar a legenda de formatação a seguir para interpretar e usar a sintaxe correta do comando netsh ao executar o comando no shell netsh, em um arquivo em lotes ou script.

  • O texto em itálico é uma informação que você deve fornecer enquanto digita o comando. Por exemplo, se um comando tiver um parâmetro chamado -UserName, você deverá digitar o nome de usuário real.
  • O texto em negrito é informação que deve ser digitada exatamente como mostrado enquanto se digita o comando.
  • Texto seguido de reticências (...) é um parâmetro que pode ser repetido várias vezes em uma linha de comando.
  • O texto entre parênteses [ ] é um item opcional.
  • O texto que está entre chaves { } com opções separadas por uma barra vertical apresenta um conjunto de opções das quais você deve selecionar apenas uma, como {enable|disable}.
  • O texto formatado com a fonte Courier é código ou saída do programa.

Valores de cadeia de caracteres para comandos netsh

Há comandos que contêm parâmetros para os quais um valor de cadeia de caracteres é necessário. No caso em que um valor de cadeia de caracteres contém espaços entre caracteres, é necessário colocar o valor da cadeia de caracteres entre aspas duplas.

Ao definir o parâmetro da interface para redes IPv4 com um valor de cadeia de caracteres "Conexão de Rede Sem Fio " para DHCP, use aspas duplas ao redor do valor da cadeia de caracteres. Por exemplo:

netsh interface ipv4>set address name="Wireless Network Connection" dhcp

Alternativamente, para interfaces de rede, o número de índice pode ser usado no lugar do nome associado a ele. Por exemplo:

netsh interface ipv4>set address name=15 dhcp

Para localizar o nome ou o índice das interfaces conectadas, você deve estar no subcontexto da interface IPv4 ou IPv6 e digitar show interfaces. Por exemplo:

netsh interface ipv4>show interfaces
netsh interface ipv6>show interfaces

Ver também