Большинство из нас (особенно те, кому есть с чем сравнить — например, с консолью в *nix) привыкло смотреть на консоль (широко известное cmd) как на рудимент, доставшийся по наследству от почившего ныне MS-DOS.
Ладно, я могу закрыть глаза, когда дело касается простой домохозяйки, или обывателя, которому нужно «чтобы работало». Но вот то, что для многих сотрудников телекоммуникационной сферы (пусть и «низших» сословий, в лице монтажников/технической поддержки) «cmd.exe» является лишь средством набора команды «ping ya.ru», или «ipconfig», в лучшем случае, — становится грустно.
Поэтому я решил систематизировать базовые, с моей точки зрения, вещи, которые можно реализовать через консоль. Рассчитываю, что материал придется по вкусу не только «начинающим», но и intermidiate-пользователи увидят достоинства там, где их казалось бы и нет.
Начну с одной из самой полезной и, как показывает практика, неизвестной широким массам утилиты — netsh (от английского network shell).
В *nix'е все в то, или иное время являлись свидетелями примерно следующего колдовства:
В тот момент, когда эти строчки набираются в консоли — даже дурнопропахнувший кофейно-табачным запахом в дырявых джинсах и с недельной щетиной приглашенный для решения тривиальной задачи «специалист» становится в глазах всех присутствующих земным воплощением божественного АДМИНА! Не хватает только приглушенного столба света, ниспадающего в этот момент на МАСТЕРА.
Как оказывается, всем доступный и попрекаемый Windows имеет не многим уступающий инструмент, упомянутый выше network shell.
Давайте посмотрим, как соответствующая комбинация будет выглядить в Windows (рассказываю, опираясь на синтаксис Windows 7. Утилита netsh на полных правах присутствует во всей линейки Windows, начиная с Windows XP, с небольшими различиями в синтаксисе):
Как видите, все очень просто и функционально.
Из доступного и часто используемого в праведной борьбе с вирусами и кривыми кривыми руками можно также отметить команду сброса настроек на сетевых интерфейсах:
А также полезная команда, которая покажет текущую конфигурацию сетевых интерфейсов:
Хотите из консоли настраивать и подключаться к беспроводным сетям? Нет ничего проще:
Можно создавать профили беспроводных сетей. Подключаться/отключаться. Все, то же, что позволяет графический интерфейс конфигуратора — только, как показывает практика, освоив консоль — все можно выполнять в разы шустрей и как по мне, так еще и гораздо удобней.
Часто можно наткнуть на вопрос следующего характера:
Я пользуюсь интернетом с ноутбука дома через вашего провайдера и на работе через корпоративную сеть. Можно ли мне что-то сделать, чтобы не приходилось постоянно перенастраивать сеть?
В контексте обычного офисного работника, далекого даже от банальной настройки сетевого интерфейса обычная настройка может занимать от 5 минут и выше.
Мне удивительно, что единицы используют т. н. «alliases» (по аналогии с *nix), что в переводе значит «псевдоним». Другими словами — на один сетевой интерфейс можно назначить несколько конфигураций. И в соответствии с текущей топологией сети будет работать нужная.
И, что самое главное, задача тривиальна. Разберем на следующем примере:
Дома имеем сеть со статичным ip-адресом 192.168.0.177/24 и DNS-сервер 192.168.0.1, а на работе подключаемся используя другой статичный ip, например, в нашем случае пусть это будет 172.17.17.5/30 и DNS-сервер будет 172.17.0.1. Для реализации рабочего решения через консоль нам необходимо сделать следующее:
Это мы сконфигурировали сетевой интерфейс для работы в домашней сети.
Рабочего решения для вариант в одном месте — DHCP-клиент, в другом — статичный IP, — я не нашел.
Можно ли используя netsh СОЗДАТЬ vpn-подключение?
Нет. Создать vpn-подключение нельзя.
Скажу больше, — создать vpn-подключение из cmd нельзя в принципе.
Надеюсь, данный материал станет хорошим подспорьем в решении тривиальных задач и заставит немного иначе смотреть на «пресловутую консольку» многих пользователей семейства Windows.
Ладно, я могу закрыть глаза, когда дело касается простой домохозяйки, или обывателя, которому нужно «чтобы работало». Но вот то, что для многих сотрудников телекоммуникационной сферы (пусть и «низших» сословий, в лице монтажников/технической поддержки) «cmd.exe» является лишь средством набора команды «ping ya.ru», или «ipconfig», в лучшем случае, — становится грустно.
Поэтому я решил систематизировать базовые, с моей точки зрения, вещи, которые можно реализовать через консоль. Рассчитываю, что материал придется по вкусу не только «начинающим», но и intermidiate-пользователи увидят достоинства там, где их казалось бы и нет.
Начну с одной из самой полезной и, как показывает практика, неизвестной широким массам утилиты — netsh (от английского network shell).
В *nix'е все в то, или иное время являлись свидетелями примерно следующего колдовства:
Ifconfig eth0 192.168.0.177/24
route add default gw 192.168.0.1
echo 192.168.0.1 >> /etc/resolv.conf
В тот момент, когда эти строчки набираются в консоли — даже дурнопропахнувший кофейно-табачным запахом в дырявых джинсах и с недельной щетиной приглашенный для решения тривиальной задачи «специалист» становится в глазах всех присутствующих земным воплощением божественного АДМИНА! Не хватает только приглушенного столба света, ниспадающего в этот момент на МАСТЕРА.
Как оказывается, всем доступный и попрекаемый Windows имеет не многим уступающий инструмент, упомянутый выше network shell.
Давайте посмотрим, как соответствующая комбинация будет выглядить в Windows (рассказываю, опираясь на синтаксис Windows 7. Утилита netsh на полных правах присутствует во всей линейки Windows, начиная с Windows XP, с небольшими различиями в синтаксисе):
netsh interface ipv4 add address «Подключение по локальной сети» 192.168.0.177 255.255.255.0
netsh interface ipv4 add address «Подключение по локальной сети» gateway 192.168.0.1
netsh interface ipv4 add dnsservers «Подключение по локальной сети» 192.168.0.1
Как видите, все очень просто и функционально.
Из доступного и часто используемого в праведной борьбе с вирусами и кривыми кривыми руками можно также отметить команду сброса настроек на сетевых интерфейсах:
netsh winsock reset
А также полезная команда, которая покажет текущую конфигурацию сетевых интерфейсов:
netsh dump
Хотите из консоли настраивать и подключаться к беспроводным сетям? Нет ничего проще:
netsh wlan
Можно создавать профили беспроводных сетей. Подключаться/отключаться. Все, то же, что позволяет графический интерфейс конфигуратора — только, как показывает практика, освоив консоль — все можно выполнять в разы шустрей и как по мне, так еще и гораздо удобней.
Часто можно наткнуть на вопрос следующего характера:
Я пользуюсь интернетом с ноутбука дома через вашего провайдера и на работе через корпоративную сеть. Можно ли мне что-то сделать, чтобы не приходилось постоянно перенастраивать сеть?
В контексте обычного офисного работника, далекого даже от банальной настройки сетевого интерфейса обычная настройка может занимать от 5 минут и выше.
Мне удивительно, что единицы используют т. н. «alliases» (по аналогии с *nix), что в переводе значит «псевдоним». Другими словами — на один сетевой интерфейс можно назначить несколько конфигураций. И в соответствии с текущей топологией сети будет работать нужная.
И, что самое главное, задача тривиальна. Разберем на следующем примере:
Дома имеем сеть со статичным ip-адресом 192.168.0.177/24 и DNS-сервер 192.168.0.1, а на работе подключаемся используя другой статичный ip, например, в нашем случае пусть это будет 172.17.17.5/30 и DNS-сервер будет 172.17.0.1. Для реализации рабочего решения через консоль нам необходимо сделать следующее:
netsh interface ipv4 add address «Подключение по локальной сети» 192.168.0.177 255.255.255.0
netsh interface ipv4 add address «Подключение по локальной сети» gateway 192.168.0.1
netsh interface ipv4 add dnsservers «Подключение по локальной сети» 192.168.0.1
Это мы сконфигурировали сетевой интерфейс для работы в домашней сети.
netsh interface ipv4 add address «Подключение по локальной сети» 172.17.17.5 255.255.255.252
netsh interface ipv4 add address «Подключение по локальной сети» gateway 172.17.17.6
netsh interface ipv4 add dnsservers «Подключение по локальной сети» 172.17.0.1.
Рабочего решения для вариант в одном месте — DHCP-клиент, в другом — статичный IP, — я не нашел.
Можно ли используя netsh СОЗДАТЬ vpn-подключение?
Нет. Создать vpn-подключение нельзя.
Скажу больше, — создать vpn-подключение из cmd нельзя в принципе.
Вместо эпилога
Надеюсь, данный материал станет хорошим подспорьем в решении тривиальных задач и заставит немного иначе смотреть на «пресловутую консольку» многих пользователей семейства Windows.