Привет, посетитель сайта ZametkiNaPolyah.ru! Публикация о команде ipconfig — это продолжение рубрике, в которой я рассказываю о том, как пользоваться стандартными сетевыми утилитами в операционных системах семейства Windows. Команда ipconfig — одна из самых часто используемых сетевых утилит в Windows, ведь она позволяет быстро и самое главное удобно просмотреть настройки сетевых адаптеров в Windows, а также выполнить несколько простых, но важных задач, связанных с администрированием компьютеров.
Если вам интересна тема компьютерных сетей, то в блоге уже практически закончена первая часть курса по основам компьютерных сетей, можете ознакомиться с ее содержимым. И вот здесь можно получить немного информации о самом курсе основанном на Cisco ICND1.
Назначение команды ipconfig в Windows или как узнать IP-адрес и другие сетевые настройки
IPCONFIG – это стандартная сетевая утилита операционных систем семейства Windows, являющаяся стандартным инструментом системного администратора или сетевого инженера, команда ipconfig чаще всего используется для отображения сетевых настроек компьютера под управлением Windows, а также для обновления и изменения некоторых параметров сетевых интерфейсов, которые компьютер получает автоматически по протоколу DHCP (Dynamic Host Configuration Protocol).
Утилита командной строки ipconfig позволяет посмотреть/изменить настройки сетевых интерфейсов вашего ПК, естественно, сетевой интерфейс для своей работы использует различные протоколы, нас в большей степени будет интересовать стек протоколов модели TCP/IP (Ethernet, IP, TCP, UDP, DNS, DHCP и другие), хотя стоит заметить, что ipconfig позволяет получить информацию о интерфейсах, использующих технологии, не входящими в стек TCP/IP, например, Bluetooth или IrDA. В Windows есть графические аналоги ipconfig: winipcfg и wntipcfg, вторая уже морально устарела.
Если говорить о Unix-подобных операционных системах (например, Linux Mint, который мы устанавливали в Virtual Box), то здесь стоит выделить утилиту ifconfig, вообще, эмулятор терминала Linux зачастую обладает более богатым набором команд, нежели cmd.exe в Windows, но вернемся к ipconfig.
Давайте запустим командую строку и посмотрим как работает команда ipconfig в ее самом базовом варианте, то есть без параметров, достаточно просто написать в командной строке: ipconfig.

Пример использования команды ipconfig в Windows
Как узнать настройки сетевого адаптера в Windows
Настройки, которые мы получили, написав одну команду, можно узнать долго кликая мышкой, для начала приведу алгоритм этих кликов:
- В правом нижнем углу, где часы, найдите иконку сетевого адаптера (если соединение беспроводное, то это иконка Wi-Fi, если проводное, то это иконка компьютера и провода) и нажмите на нее правой кнопкой мыши.
- Появится контекстное меню, в котором нужно выбрать пункт «Открыть Параметры сети и Интернет».
- Откроется окно с сетевыми параметрами, в котором есть заголовок «Изменение сетевых параметров», под этим заголовком будет меню, в этом меню нас интересует пункт «Настройки параметров адаптера».
- Это меню ведет нас в окно с сетевыми адаптерами, нас будет интересовать активный адаптер, в моем случае это адаптер беспроводной сети, обычно он называется «Беспроводная сеть», если вы используете для подключения провод, то вас скорее всего будет интересовать «Ethernet адаптер», в любом случае нужно нажать по адаптеру правой кнопкой мыши и из контекстного меню выбрать пункт «Состояние».
Как видите, пользоваться графическим интерфейсом очень долго, для тех, кто не совсем понял куда нажимать и что искать, ниже приведу скриншоты, которые помогут найти текущие настройки сетевого подключения в Windows 10. Я уже говорил, что использую Wi-Fi, поэтому у меня соответствующая иконка сетевого адаптера в правом нижнем углу.

Параметры сети и Интернет в Windows
Здесь выбираем пункт «Открыть Параметры сети и Интернет», у нас появится окно управления параметрами сетевых подключений в Windows, которое показано на следующем рисунке.

В этом окне нас интересует пункт меню «Настройка параметров адаптера», когда вы на него нажмете, то увидите следующее окно.

В этом окне собраны все сетевые интерфейсы вашего компьютера, которые вы можете использовать для подключения к компьютерным сетям (подключаться можно не только к сети Интернет, о стандартных физических компонентах компьютерной сети можно почитать здесь). Из-за того, что я использую Wi-Fi, меня интересует адаптер, выделенный синим и подписанный «Беспроводная сеть», если у вас проводное подключение, то вам нужен адаптер с подписью «Ethernet». В любом случае нажимаем по нужному адаптеру правой кнопкой мыши и из контекстного меню выбираем пункт «Состояние».


Статистика и параметры сетевого интерфейса-сетевого адаптера

Сведения о сетевом подключение компьютера
Итак, мы затратили немного больше времени, повозившись с окнами, но получили больше информации, чем дала нам утилита ipconfig в своем простейшем варианте, но не забывайте, что у многих команд интерпретатора командной стройки Windows есть дополнительные параметры, команда ipconfig не исключение, давайте воспользуемся параметром /all: ipconfig /all. Параметр all позволяет получить более детальную информацию о каждом сетевом интерфейсе. Вывод этой вариации очень большой, поэтому я приведу его в виде листинга.
Параметры команды ipconfig в Windows
Как видим, у утилиты ipconfig достаточно много параметров, также в подсказке приводятся примеры использования команды ipconfig, из которых видно, что команду можно применять не сразу ко всем сетевым интерфейсам, как делали это мы, а к конкретному интерфейсу или группе интерфейсов, используя их имена, для указания имен можно использовать специальные символы, как например «*», которая означает любые символы в любом количестве или «?», которая означает один любой символ.
Чтобы было понятнее посмотрим простые примеры:
- «?ова», этот шаблон означает, что слово должно заканчиваться на ова, а перед «ова» могут быть любые символы в любом количестве: корова, Иванова, Колотова, голова, все эти слова подходят под такой шаблон;
- «?ро?», этот шаблон означает, что вначале и в конце может быть один любой символ, под этот шаблон подходят такие слова: крот, срок, 1роZ (а почему нет? никто не знает, как вы назовете интерфейс), прок и так далее.
Самые полезные примеры использования утилиты ipconfig мы рассмотрим ниже.
Примеры использования утилиты ipconfig в Windows
Давайте теперь рассмотрим несколько примеров использования команды ipconfig, которые могут пригодиться вам на практике. Примеров с использованием протокола IPv6 не будет, так как нет технической возможности, но суть работы команды ipconfig и ее параметров не меняется от выбранного протокола (IPv6 или IPv4).
Обновление сетевых настроек адаптера в Windows, параметры /renew и /release
Первый и, пожалуй, самый часто используемый пример использования команды ipconfig – это пример с использованием параметров /release и /renew. Первый параметр используется для освобождения IP-настроек всех сетевых адаптеров компьютера: ipconfig /release, а второй параметр заставляет компьютер повторно запросить настройки у DHCP сервера (если не указывать адаптер, то команда будет применена ко всем сетевым интерфейсам Windows, будьте внимательны): ipconfig /renew.
Вообще, домашний роутер это не одно устройство, а целых три: Wi-Fi антенна, сетевой коммутатор и маршрутизатор или роутер, если вы не знаете в чем разница между этими устройствами, то рекомендую ознакомиться с публикацией разница между хабами, сетевыми коммутаторами и роутерами, хотя на данный момент хабы или сетевые концентраторы вы скорее всего не встретите, дело в том, что любой участок компьютерной сети имеет физическую топологию общая шина, как только на нем появляется хаб.
Вернемся к команде ipconfig. Для начала посмотрим на текущие сетевые настройки моего ПК, который получает их от домашнего роутера по динамике.
1234567891011121314151617181920Адаптер беспроводной локальной сети Беспроводная сеть:DNS-суффикс подключения . . . . . :Описание. . . . . . . . . . . . . : Intel(R) Dual Band Wireless-AC 3165Физический адрес. . . . . . . . . : BC-A8-A6-B3-71-B7DHCP включен. . . . . . . . . . . : ДаАвтонастройка включена. . . . . . : ДаЛокальный IPv6-адрес канала . . . : fe80::d86b:69ce:ccc4:d47f%9(Основной)IPv4-адрес. . . . . . . . . . . . : 192.168.0.101(Основной)Маска подсети . . . . . . . . . . : 255.255.255.0Аренда получена. . . . . . . . . . : 30 февраля 2018 г. 13:30:45Срок аренды истекает. . . . . . . . . . : 30 февраля 2018 г. 15:30:45Основной шлюз. . . . . . . . . : fe80::ccfc:a4ff:fee9:44d%9192.168.0.1DHCP-сервер. . . . . . . . . . . : 192.168.0.1IAID DHCPv6 . . . . . . . . . . . : 79472806DUID клиента DHCPv6 . . . . . . . : 00-01-00-01-21-52-74-3F-50-9A-4C-CB-57-A0DNS-серверы. . . . . . . . . . . : 192.168.0.10.0.0.0NetBios через TCP/IP. . . . . . . . : Включен
Нас интересуют строки: «IPv4-адрес. . . . . . . . . . . . : 192.168.0.101 (Основной)», «Маска подсети . . . . . . . . . . : 255.255.255.0», « DHCP-сервер. . . . . . . . . . . : 192.168.0.1», «DNS-серверы. . . . . . . . . . . : 192.168.0.1», «Аренда получена. . . . . . . . . . : 30 февраля 2018 г. 13:30:45» и «Срок аренды истекает. . . . . . . . . . : 30 февраля 2018 г. 15:30:45». Теперь давайте выполним команду: ipconfig /release, в моем случае можно не бояться применять эту команду сразу ко всем сетевым интерфейсам, так как по факту используется только один, если у вас их больше, то указывайте интерфейс, к которому хотите применить команду.

Команда ipconfig /release была применена ко всем сетевым адаптерам Windows
После выполнение всех операций, утилита ipconfig предоставила нам небольшой отчет по каждому сетевому адаптеру, нас больше всего интересует второй снизу, именно на нем я хотел освободить настройки, именно этот адаптер у меня использовался для подключения к роутеру, после выполнения команды ipconfig /release, соединение с роутером пропало, так как пропала IP связность, роутер и мой ПК оказались в разных подсетях. В этом легко убедиться, достаточно взглянуть в правый нижний угол.

После освобождение настроек на сетевом интерфейсе пропала IP связность между роутером и ПК
Обратите внимание на иконку сетевого интерфейса, по ней видно, что связь между ПК и роутером на физическом уровне осталась, они обмениваются радио сигналами, вероятно, на канальном уровне кадры случайным образом могут доходить от роутера до ПК и обратно, им просто некуда больше деваться в моей домашней сети, как это проверить мы поговорим в другой публикации, но нет связи на сетевом уровне, потому что после сброса настроек компьютер и роутер оказались в разных подсетях и в этом легко убедиться.
1234567891011121314151617Адаптер беспроводной локальной сети Беспроводная сеть:DNS-суффикс подключения . . . . . :Описание. . . . . . . . . . . . . : Intel(R) Dual Band Wireless-AC 3165Физический адрес. . . . . . . . . : BC-A8-A6-B3-71-B7DHCP включен. . . . . . . . . . . : ДаАвтонастройка включена. . . . . . : ДаЛокальный IPv6-адрес канала . . . : fe80::d86b:69ce:ccc4:d47f%9(Основной)Автонастройка IPv4-адреса . . . . : 169.254.212.127(Основной)Маска подсети . . . . . . . . . . : 255.255.0.0Основной шлюз. . . . . . . . . : fe80::ccfc:a4ff:fee9:44d%9IAID DHCPv6 . . . . . . . . . . . : 79472806DUID клиента DHCPv6 . . . . . . . : 00-01-00-01-21-52-74-3F-50-9A-4C-CB-57-A0DNS-серверы. . . . . . . . . . . : fec0:0:0:ffff::1%1fec0:0:0:ffff::2%1fec0:0:0:ffff::3%1NetBios через TCP/IP. . . . . . . . : Включен

Обновляем сетевые настройки адаптера в Windows при помощи команды ipconfig /renew
Думаю, теперь понятно назначение параметров /release и /renew: первый используется, чтобы сбросить настройки сетевого адаптера, а второй чтобы их обновить. Но бывают ситуации, когда у вас есть несколько активных сетевых адаптеров и вам нельзя применять команды: ipconfig /release и ipconfig /renew ко всем интерфейсам сразу, в таких случаях нужно использовать имена интерфейсов. В моем случае чтобы сбросить настройки с интерфейса, который используется для связи с роутером, можно использовать такую вариацию команды: ipconfig /release «*Беспроводная*». А чтобы затем обновить настройки только для этого адаптера, можно использовать такую вариацию: ipconfig /renew «Беспроводная сеть». Указать имя адаптера при использовании ipconfig и ipconfig /all у вас не получится.
Как посмотреть и как почистить кэш DNS-сервера в Windows, параметры /displaydns и /flushdns
Утилита ipconfig в Windows используется не только для того, чтобы обновить сетевые настройки, но еще и для управления кэшем DNS, при помощи утилиты ipconfig можно посмотреть текущий кэш DNS: ipconfig /displaydns, а также очистить кэш DNS: ipconfig /flushdns. Необходимость в чистке кэша возникает тогда, когда вы меняете DNS сервера и вам нужны новые ответы.
Чтобы увидеть текущей кэш DNS в Windows, достаточно использовать параметр /displaydns. Вывод команды ipconfig /displaydns длинный, как портянка, но если хотите вот его кусочек для сервиса dropbox.
Про DNS-сервера мы будем говорить отдельно в рамках курса по основам компьютерных сетей, поэтому сейчас никаких пояснений давать не буду, можете воспользоваться Гуглом или Яндексом, чтобы получить больше информации. Лучше посмотрим как очистить кэш DNS в Windows, для этой цели есть параметр /flushdns: ipconfig /flushdns.

Команда ipconfig /flushdns или как очистить кэш DNS в Windows
После применения команды ipconfig /flushdns мы видим, что кэш DNS был успешно удален, проверили мы это при помощи параметра /displaydns. Всё очень просто.
Работаем с DHCP идентификаторами классов пользователей в Windows, параметры /setclassid и /showclassid
Теперь давайте разберемся с тем, как посмотреть идентификатор DHCP класса в Windows и как его изменить при помощи команды ipconfig, а затем немного разберемся с тем, что это вообще такое – классы пользователей в DHCP.
Следует заметить, что ipconfig /setclassid и ipconfig /showclassid требует обязательного указания интерфейса, для которого эти команды применяются, сразу для всех интерфейс вы не примените эти команды, у вас будет ошибка, поэтому не удивляйтесь, если ipconfig /setclassid и ipconfig /showclassid не работают. Для начала давайте посмотрим к какому классу DHCP относится мой интерфейс (ipconfig /showclassid).

Утилита ipconfig показала, что у данного интерфейса еще нет класса DHCP клиента
По результатам работы утилиты видно, что у данного сетевого интерфейса еще нет класса DHCP пользователя, но это легко исправить, мы можем его задать при помощи ipconfig /setclassid, не забудьте только указать имя интерфейса, которому хотите задать класс.

Команда ipconfig позволяет изменить класс DHCP пользователя в Windows
При использовании параметра /setclassid мы сперва задаем имя сетевого адаптера, а затем указываем код класса для DHCP сервера, второй командной мы попытались проверить, что код класса был действительно задан, но тут нас ждал облом, поэтому давайте посмотрим сетевые настройки адаптера при помощи ipconfig /all.

Смотрим код класса DHCPv4 командой ipconfig /all
Нужную строку я подсветил и тут видно, что мой беспроводной сетевой адаптер теперь действительно имеет класс testClassDHCP. Чтобы удалить текущий идентификатор класса у адаптера в Windows, просто используйте команду ipconfig /setclassid без указания имени класса, примерно так: ipconfig /setclassid “Беспровод*”. Тогда он будет удален.
Полезные приемы при использовании утилиты ipconfig
Мы уже убедились, что вывод команды ipconfig довольно объемный и с ним не очень удобно работать из командной строки, поэтому давайте рассмотрим несколько полезных приемов использования команды ipconfig с другими командами и операторами. Начнем мы с команды clip, которая сообщает интерпретатору командной строки, что вывод нужно делать не на экран, а загонять все данные в буфер обмена.
Когда вы выполните такую команду, приложение cmd.exe создаст файл ipconfig-displaydns.txt в папке, из которой была запущена команда ipconfig, обычно эта папка указана в приглашении ко вводу, в моем случае это: C:WindowsSystem32. После чего вывод команды ipconfig будет записан в этот файл, а на экране вы ничего не увидите.
Следующий пример позволяет не просто записать данные в файл, но и сразу же открыть этот файл в стандартном редакторе Windows «Блокнот».
В Windows, как и в Unix-подобных ОС есть команда more, которая позволяет осуществить постраничный просмотр данных, которые выводятся в эмулятор терминала, правда стоит сказать, что версия more в Windows сильно уступает more в дистрибутивах Linux.
Теперь вывод команды ipconfig разбит на страницы, чтобы двигаться вниз используйте клавишу «Пробел». Это простые приемы, но они сделают вашу жизнь немного комфортнее.
Выводы
Какие выводы можно сделать о стандартной сетевой утилите ipconfig и ее использовании в операционной системе Windows? Всё очень просто — команда ipconfig позволяет быстро посмотреть настройки сетевых интерфейсов и протоколов стека TCP/IP, а также быстро выполнить некоторые служебные операции, такие как: просмотр кэша DNS и его очистка, сброс настроек с сетевого интерфейса и их повторное получение, а еще эта утилита дает нам возможность настроить взаимодействие между клиентом и DHCP сервером. В общем и целом, ipconfig полезная и простая команда, которую стоит запомнить и применять, так как она позволит сэкономить массу времени и сил.




