Отключение на уровне приложения ник (сетевой интерфейс) в Windows

Как я могу отключить на уровне приложения сетевой интерфейс?

Главный вопрос заключается в следующем:

Если я отключу никель wmic (win7) или devcon (XP), "подключи и играй" проводного никеля больше не будет работать. Например, если пользователь подключил кабель к отключенному нику, ОС не знает об этом.

Поэтому мне нужно сохранить условие включения, но отключить сеть, как отключить ник.

Есть какой-то API, конфигурация сети (маршрутизация, изменение ip, смена шлюза, любой), ресурс.NET Framework (только NetFramework 2.0), или вы можете придумать какой-нибудь обходной путь, чтобы сделать это?

Предлагать и идеи также будут рассматриваться как решение.

Спасибо и добрые пожелания.

Изменить: почему:

Я делаю заявление, требуемое сторонней компанией для решения проблемы с не отвечающими людьми.

Основная идея приложения заключается в автоматическом "отключении" (пока не думайте, что "отключить" - это отключить ник), поэтому автоматически "отключайте" выбранный проводной.

Но в некоторых условиях, например, отключение DNS или что-то в этом роде, если пользователь подключает utp-кабель к eth, приложению необходимо знать, подключен ли он, чтобы увеличить затраты.

Приложение имеет рабочий процесс, ориентированный на поведение "не будь дураком". Поэтому нам нужно позаботиться обо всех условиях, для опытных пользователей или новичков.

Предположим, этот случай:

nic A включен и выше. Nic B включен и выключен.

Пользователь подключает кабель B.

nic B включен и выше.

Приложение отключает соединение Б.

Ник Б отключен.

Пользователь отключает кабель B.

Nic A включен, но не подключен к интернету. (Для третьей компании это "падший" случай)

Приложение отключает ник А.

Приложение не может включить никель B, когда пользователь повторно подключает кабель B.

Пока что комбинаций очень много.

1 ответ

Решение

Вы можете настроить сетевой адаптер так, чтобы он не извлекал свой адрес из DHCP, а его IP-адрес был неверным.

Вы можете отключить протокол TCP/IP для этого адаптера, сняв флажок рядом с ним в свойствах сетевого адаптера в ncpa.cpl

Другие вопросы по тегам