- Как автоматизировать отключение от Wi-Fi при подключении к Ethernet
- В свойствах беспроводного адаптера
- С помощью скрипта WLANManager
- Опция WLAN Switching в BIOS
- Автоматическое отключение Wi-Fi при подключении к Ethernet сети
- Настройка WLAN Switching в BIOS/UEFI
- Отключить Wi-Fi после установки проводного подключения с помощью драйвера
- Отключить Wi-Fi при подключении Ethernet с помощью заданий планировщика
- PowerShell скрипт WLAN Manager для автопереключения между Wi-Fi и Ethernet сетями
- Отключение не-доменных беспроводных сетей с помощью GPO
Как автоматизировать отключение от Wi-Fi при подключении к Ethernet
В случае доступности нескольких беспроводных сетей Windows 10 сама выберет Wi-Fi -соединение с самым сильным сигналом независимо от того, используется ли эта точка другими устройствами и выдает ли она более или менее высокую скорость подключения по сравнению с другими точками. Но если вы подключите компьютер к проводной сети, обеспечивающей более стабильный сигнал и высокую скорость, Windows 10 всё так же продолжит использовать подключение Wi-Fi .
Чтобы система начала использовать сеть Ethernet , вам нужно вручную отключиться от Wi-Fi или сконфигурировать Windows таким образом, чтобы она сама отключалась от беспроводной сети.
Давайте посмотрим, как это можно сделать.
В свойствах беспроводного адаптера
В настройках некоторых адаптеров Wi-Fi есть опция, которая позволяет отключать адаптер при обнаружении более быстрого Ethernet подключения.
Она называется «Отключить после установления проводного соединения».
Чтобы проверить ее наличие, откройте ваши сетевые подключения, откройте свойства активного беспроводного адаптера.
И нажмите «Настроить».
В открывшемся окне свойств платы переключитесь на вкладку «Дополнительно» и поищите свойство «Отключить после установления проводного соединения».
Если таковое имеется, выделите его и у установите для него значение «Включить».
С помощью скрипта WLANManager
Если настройка автоотключения от Wi-Fi отсутствует, попробуйте воспользоваться сторонним решением — скриптом PowerShell , позволяющим автоматизировать переключение между Wi-Fi и Ethernet сетями.
Решение не совсем свежее, при выполнении скрипта возможны ошибки, но попробовать во всяком случае его стоит.
Зайдите на страницу проекта:
И сохраните файлы PSModule-WLANManager.psm1 и WLANManager.ps1 .
Запустите от имени администратора консоль PowerShell и первым делом разрешите выполнение скриптов командой:
Set-ExecutionPolicy RemoteSigned
Подтвердив действие вводом Y.
Затем перейдите в расположение скачанных скриптов и выполните команду установки скрипта:
.\WLANManager.ps1 -Install:System
Если всё пройдет хорошо, в Планировщике заданий у вас появится задание WLAN Manager.
Суть его в следующем: задание запускает установленный скрипт, которой проверяет сетевые подключения и в случае обнаружения подключения по кабелю, отключает все доступные беспроводные адаптеры. И наоборот, при отключении кабеля скрипт дает команду на подключение адаптеров Wi-Fi.
Опция WLAN Switching в BIOS
Если предложенные выше решения вас не устраивают или не работают, стоит заглянуть в BIOS вашего компьютера и поискать там опцию LAN/WLAN Switching, она может иметь и другие названия, например, Wireless Radio Controll.
Включите опцию, установив для нее значение «Enabled».
Автоматическое отключение Wi-Fi при подключении к Ethernet сети
30.11.2022
itpro
PowerShell, Windows 10, Windows 11, Групповые политики
комментариев 20
В Windows 10/11 при доступности нескольких Wi-Fi сетей система автоматически выбирает беспроводную сеть с самым сильным уровнем сигнала (не зависимо от того, какова скорость этого соединения и сколько устройств его используют). Но при подключении вашего компьютера/ноутбука к проводной Ethernet сети, Windows продолжает использовать Wi-Fi сеть, несмотря на то, что скорость подключения по Ethernet кабелю значительно выше, а само подключение стабильнее и не подвержено помехам. Чтобы переключиться на проводное Ethernet-подключение, пользователю Windows нужно каждый раз вручную отключать Wi-Fi на устройстве. Рассмотрим, как настроить автоматическое отключение Wi-Fi при подключении к Ethernet сети в Windows 10 и 11.
Настройка WLAN Switching в BIOS/UEFI
У многих производителей ноутбуков и компьютеров есть собственная реализация технологии LAN/WLAN Switching (может называться по-разному). Суть технологии заключается в том, что на компьютере одновременно должен передавать данные только один сетевой адаптер. Если во время использования устройством Wi-Fi сети на компьютере появилось более приоритетное проводное Ethernet-подключение, Wi-Fi адаптер должен автоматически переходить в режим ожидания. Тем самым экономятся ресурсы батареи и уменьшается нагрузка на беспроводную сеть.
LAN/WLAN Switching можно включить в настройках BIOS/UEFI или в свойствах драйвера беспроводного сетевого адаптера (все зависит от производителя оборудования).
Перезагрузите компьютер и войдите в настройки UEFI / BIOS найдите и включите опцию LAN/WLAN Switching (на устройствах HP), Wireless Radio Controll (на устройствах Dell).
Данный функционал может называться по-другому или совсем отсутствовать в BIOS/UEFI других производителей.
Отключить Wi-Fi после установки проводного подключения с помощью драйвера
В настройках драйвера некоторых Wi-Fi адаптеров есть опция, позволяющая автоматически отключать Wi-Fi адаптер при наличии скоростного Ethernet подключения.
Откройте диспетчер устройства Windows ( devmgmt.msc ), найдите ваш Wireless сетевой адаптер в секции Network adapters и откройте его свойства. Перейдите на вкладку Advanced.
В списке опций Wi-Fi адаптера найдите пункт «Отключить после установления проводного соединения / Disabled Upon Wired Connect». Измените значение опции на Включено и сохраните изменения.
Благодаря этой опции драйвер беспроводной сети будет отключать адаптер от Wi-fi сети при обнаружении активного Ethernet LAN подключения.
Данная опция поддерживается далеко не на всех моделях Wi-Fi адаптеров. Для других беспроводных сетевых адаптеров вы можете автоматизировать автоматические переключение на Ethernet с помощью задания планировщика или скрипта PowerShell.
Отключить Wi-Fi при подключении Ethernet с помощью заданий планировщика
Рассмотрим, как автоматически включить и отключить Wi-Fi адаптер в Windows с помощью специальных заданий планировщика (Task Scheduler), которые привязаны к событию подключения/отключения Ethernet кабеля (триггеры событий планировщика Windows).
В первую очередь нужно включить служу Wired AutoConfig (dot3svc) и настроить ее на автоматический запуск. Можно проверить состояние службы и настроить ее автозапуск с помощью PowerShell:
Set-Service dot3svc -startuptype automatic -passthru
Start-Service dot3svc
Get-Service dot3svc
Теперь откройте журнал событий Event Viewer (консоль eventvwr.msc ) и перейдите в раздел Applications and Services Logs -> Windows -> Wired-AutoConfig -> Operational. Здесь нас интересуют два событий:
- Event ID 15501 — The network adapter has been connected. Появляется при подключении Ethenet кабеля/линка.
- Event ID 15500 — The network adapter has been unplugged. Событие отключение LAN кабеля.
В предыдущих версиях Windows нужно использовать другие коды событий появления линка на LAN интерфейсе ( Event-ID: 32 — Network link is established ) и ( Event-ID: 27 – Network link is disconnected ).
Мы привяжем к данным событиям PowerShell команды для включения и отключения Wi-Fi адаптера. Для этого вам нужно получить имя вашего Wi-Fi адаптера. Вы можете вывести список сетевых адаптеров с помощью PowerShell:
В нашем примере название адаптера TPLinkWiFi.
Щелкните по событию 15501 в Event Viewer и выберите пункт Attach task to this event.
Укажите имя задания планировщика DisableWiFi_if_Ethernet_Connected-15501. В качестве действия выберите Start a program. Чтобы отключить Wi-Fi адаптер нужно выполнить такой код:
Add arguments: -NoProfile -WindowStyle hidden -ExecutionPolicy Bypass -Command &
Аналогичным образом создайте еще одно задание планировщика для события 15500.
- Укажите имя EnableWiFi_if_Ethernet_Disconnected-15500
- Задайте следующий код:
Command: C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe
Argument: -NoProfile -WindowStyle hidden -ExecutionPolicy Bypass -Command &
В свойствах обоих заданий перейдите на вкладку Conditions и отключите опцию Start the task only if the computer is on AC Power.
Теперь попробуйте подключить сетевой кабель LAN. Через пару секунд ваш Wi-Fi адаптер будет автоматически отключен (Status=Dormant).
При отключении Ethernet, задание планировщика включаете беспроводной адаптер и Windows автоматически подключается к вашей Wi-Fi сети.
PowerShell скрипт WLAN Manager для автопереключения между Wi-Fi и Ethernet сетями
Для решения задачи автоматического отключения Wi-Fi адаптера при подключении компьютера к проводной Ethernet сети можно воспользоваться готовым PowerShell скриптом WLAN Manager. Актуальная версию версия скрипта WLAN Manager с расширенной поддержкой Windows 10 и корректным определением виртуальных адаптеров есть на GitHub (https://github.com/jchristens/Install-WLANManager).
PowerShell скрипт создаст новое задание планировщика в системе, которое периодически выполняет проверку активных сетевых адаптеров. Если скрипт обнаруживает наличие подключение по LAN (Ethernet), то WLAN интерфейс автоматически отключается. Если сетевой кабель Ethernet отключен, скрипт сам включает беспроводной Wi-Fi адаптер.
Скрипт состоит из 2 файлов:
Рассмотрим, как установить скрипт WLAN Manager в Windows 10. Откройте командную строку PowerShell с правами администратора и разрешите выполнение скрипта:
Установите скрипт в Windows с помощью команды:
Скрипт можно установить для запуска из под прав пользователя (Install:User) или для запуска из-под системы (Install:System).
Verifying WLAN Manager version information… Missing
Writing WLAN Manager version information… Done
Verify WLAN Manager Files… Missing
Installing WLAN Manager Files… Done
Verify WLAN Manager Scheduled Task… Missing
Installing WLAN Manager Scheduled Task… Done
Можно заставить скрипт оповещать пользователя о переключении между Wi-Fi и LAN сетью с помощью всплывающего уведомления:
.\WLANManager.ps1 -Install:User -BalloonTip:$true
Убедитесь, что в планировщике появилось новое задание WLAN Manager.
Перезагрузите компьютер. После загрузки планировщик запустите скрипт «C:\Program Files\WLANManager\WLANManager.ps1», который каждую секунду проверяет сетевые подключения и, если будет обнаружено LAN подключение, все доступные Wi-Fi адаптеры будут отключены. При отключении LAN кабеля, скрипт автоматически включает беспроводные Wi-Fi адаптеры.
Скрипт WLAN Manager корректно работает как на Windows 10, так и в Windows 8.1 и 7.
Отключение не-доменных беспроводных сетей с помощью GPO
В групповых политиках есть отдельная настройка, которая позволяет запретить подключение к Wi-Fi сетям, когда компьютер подключен к корпоративной доменной сети через LAN. Эта политика находится в разделе Computer Configuration -> Policies ->Administrative Templates -> Network (Сеть) ->Windows Connection Manager (Диспетчер подключений Windows) и называется «Prohibit connection to non-domain networks when connected to domain authenticated network» (Запретить подключение к сетям без домена при наличии доменной сети).
Политика запрещает компьютерам одновременно подключаться к доменной сети и к сети без домена.
Однако при включении этой политики у вас могут возникнуть проблемы с подключением к Wi-Fi сети, если у вас на компьютере есть дополнительные интерфейсы. Например, loopback интерфейсу или сетевые карты, которые создаются при установке десктопных гипервизоров (VMware Workstation, Hyper-V, VirtualBox и т.д.)
Также в доменной сети вы можете дополнительно запрещать использование Wi-Fi при наличии активного подключении к доменной LAN. Для этого включите политику Minimize the number of simultaneous connections to the Internet or a Windows Domain в разделе Computer Configuration -> Administrative Templates -> Network -> Windows Connection Manager. Включите политику и выберите значение 3=Prevent Wi-Fi when on Ethernet.
Предыдущая статья Следующая статья