Desativando no nível do aplicativo uma nic (interface de rede) no Windows

Desativando no nível do aplicativo uma nic (interface de rede) no Windows

Como posso desabilitar uma interface de rede no nível do aplicativo?

A questão principal é esta:

Se eu desabilitar o nic atravéswmic(win7) oudevcon(XP), o "plug and play" de uma placa de rede com fio não funciona mais. Por exemplo, se o usuário colocar o cabo em uma placa de rede desabilitada, o sistema operacional não saberá disso.

Portanto, preciso persistir na condição de ativação, mas desativando a rede como uma placa de rede desativada.

Há alguma API, configuração de rede (roteamento, alteração de ip, alteração de gateway, qualquer), recurso .NET Framework (somente NetFramework 2.0) ou você consegue pensar em alguma solução alternativa para fazer isso?

Sugestões e ideias também serão tratadas como solução.

Obrigado e melhores cumprimentos.

Editar:O porquê:

Estou fazendo uma solicitação exigida por uma empresa terceirizada para resolver um problema de pessoas não responsáveis.

A ideia principal do aplicativo é "desabilitar" automaticamente (até agora não pense que 'desabilitar' é desabilitar a nic), então "desabilitar" automaticamente um fio selecionado.

Mas em algumas condições, por exemplo um desligamento de DNS ou algo parecido, se o usuário conectar o cabo utp na eth, o aplicativo precisa saber se está conectado, para ativar o nic.

A aplicação possui um fluxo de trabalho orientado para o comportamento "não seja bobo". Portanto, precisamos tomar cuidado com todas as condições, tanto para usuários experientes quanto para novatos.

Suponha este caso:

nic A está habilitado e ativo. nic B está habilitado e desativado.

O usuário conecta o cabo B.

nic B está habilitado e ativo.

Aplicativo desativa conexão B.

nic B está desabilitado.

O usuário desconecta o cabo B.

nic A está ativado, mas não tem conexão com a internet. (Para terceira empresa é um caso "inativo")

App desativa nic A.

O aplicativo NÃO pode ativar o nic B quando os usuários reconectam o cabo B.

Até agora, há muitas combinações.

Responder1

Você pode configurar a NIC para não extrair seu endereço do DHCP e seu IP para um endereço inválido.

Você pode desativar o protocolo TCP/IP desse adaptador desmarcando a caixa ao lado dele nas propriedades do adaptador de rede emncpa.cpl

informação relacionada