Сплит вопрос: этот другой здесь для Linux.
Я думаю, что самый простой способ деактивировать Интернет (не LAN) в командной строке Windows - это удалить шлюз по умолчанию, поэтому при условии, что LAN - это 10.0.2.0/24, а шлюз - 10.0.2.1:
`route delete 0.0.0.0 mask 0.0.0.0 10.0.2.1`
Чтобы активировать интернет:
`route add 0.0.0.0 mask 0.0.0.0 10.0.2.1`
Но, даже если это простая строка, требуется сначала определить IP-адрес шлюза по умолчанию:
В Windows:
route print
Я собираюсь создать некоторые сценарии оболочки общего назначения, которые должны включать / отключать Интернет (но поддерживать работу локальной сети), поэтому мне понадобятся некоторые операции, эквивалентные grep
для фильтрации и определения точного IP-номера шлюза (это может быть 10.0 .2.1, 127.0.0.1, 127.0.50.1, 192.168.0.1 ... и т.д.), Если мне не удастся найти более простую командную строку.
Есть идеи, пожалуйста?
- РЕДАКТИРОВАТЬ: Некоторые люди сообщают, что удаление шлюза в Windows также может быть сделано следующим образом:
route delete 0.0.0.0
Таким образом, по-видимому, не будет проблем с изменением сценария удаления, созданного @ and31415.