ipconfig - встроенная утилита Windows, которая показывает сетевые настройки компьютера и умеет делать с ними несколько простых, но частых вещей: получить новый адрес от роутера, очистить кэш DNS, заново зарегистрировать имя компьютера в DNS. Если интернет пропал, сайт открывается по старому адресу или нужно быстро узнать свой IP, обычно начинают именно с неё.

Как запустить

Откройте командную строку: Win + R, cmd, Enter. Подойдёт и PowerShell, и Терминал Windows - команда работает везде одинаково.

batch
ipconfig

Без ключей команда выводит краткую сводку по каждому адаптеру: IPv4 и IPv6-адрес, маску подсети и основной шлюз. Регистр не важен, IPCONFIG /ALL и ipconfig /all - одно и то же.

Большинство ключей работают с правами обычного пользователя. Если команда отвечает, что операция требует повышения прав, запустите консоль от имени администратора: правый клик по «Командная строка» - «Запуск от имени администратора».

Ключи ipconfig

Ключ Что делает
/all Полная конфигурация всех адаптеров: MAC-адрес, DHCP, DNS-серверы, срок аренды и другое
/release [адаптер] Освободить IPv4-адрес, полученный от DHCP
/renew [адаптер] Запросить у DHCP новый IPv4-адрес
/release6, /renew6 То же для IPv6
/flushdns Очистить кэш DNS-клиента
/displaydns Показать содержимое кэша DNS
/registerdns Обновить аренду DHCP и заново зарегистрировать имя компьютера в DNS
/showclassid адаптер Показать идентификаторы классов DHCP
/setclassid адаптер [класс] Задать идентификатор класса DHCP
/allcompartments Показать сведения по всем сетевым отсекам (нужно редко, в основном на серверах с контейнерами)
/? Справка

Как узнать свой IP-адрес, шлюз и DNS

Для этого нужен ключ /all:

batch
ipconfig /all

Вывод длинный, но смотреть обычно нужно несколько строк в блоке активного адаптера (Ethernet или Беспроводная сеть):

  • IPv4-адрес - адрес компьютера в локальной сети. Пометка «(Основной)» означает, что адрес действует.
  • Маска подсети - определяет, какие адреса считаются «своей» сетью.
  • Основной шлюз - обычно это роутер. Через него идёт весь трафик в интернет.
  • DNS-серверы - кому компьютер задаёт вопрос «какой IP у этого сайта».
  • DHCP включен - «Да» значит, что адрес выдан автоматически, «Нет» - что он задан вручную.
  • Аренда получена / Срок аренды истекает - когда DHCP выдал адрес и до какого момента он закреплён.
  • Физический адрес - MAC-адрес сетевой карты. Он нужен, например, чтобы закрепить за компьютером постоянный адрес в настройках роутера.

Если нужен только адрес, отфильтруйте вывод:

batch
ipconfig | findstr IPv4

Учтите, что ipconfig показывает адрес внутри локальной сети. Внешний адрес, под которым вас видят сайты, принадлежит роутеру или провайдеру, и на компьютере его не видно. Его показывают сайты проверки IP или веб-интерфейс роутера.

Что значит адрес 169.254.x.x

Ноутбук с вопросительным знаком и предупреждение на линии до роутера

Если вместо обычного адреса вроде 192.168.1.15 вы видите 169.254.x.x, компьютер не получил адрес от DHCP и назначил его себе сам. С таким адресом в интернет не выйти.

Что проверить по порядку:

  1. Кабель или подключение к Wi-Fi - адаптер может быть подключён к сети без доступа к роутеру.
  2. Запросить адрес заново: ipconfig /release, затем ipconfig /renew.
  3. Перезагрузить роутер. Если и после этого адрес не выдаётся, проблема на стороне роутера или DHCP-сервера, а не компьютера.

Если в строке «Основной шлюз» пусто, а адрес нормальный, компьютер видит сеть, но не знает, куда отправлять трафик в интернет. Так бывает при неправильных ручных настройках.

Как обновить IP-адрес: /release и /renew

batch
ipconfig /release
ipconfig /renew

Первая команда отказывается от текущего адреса, вторая просит у DHCP-сервера новый. Чаще всего сервер выдаёт тот же адрес, и это нормально: смысл в том, чтобы заново получить все параметры - шлюз, DNS, маску. Помогает после смены настроек роутера или переподключения к другой сети.

Если адаптеров несколько, можно указать нужный по имени. Имя смотрите в выводе ipconfig, допускаются звёздочки:

batch
ipconfig /renew "Ethernet"
ipconfig /renew *Wi-Fi*

Подключаясь к компьютеру удалённо, не выполняйте /release отдельно: связь оборвётся сразу после первой команды, и /renew вы уже не отправите. Объедините их в одну строку:

batch
ipconfig /release && ipconfig /renew

С ручным (статическим) адресом /release и /renew ничего не сделают: адрес не выдан DHCP, обновлять нечего.

Как сбросить DNS-кэш: /flushdns

Карточки записей кэша улетают в корзину, стрелка обновления

Windows запоминает ответы DNS, чтобы не спрашивать каждый раз заново. Если сайт переехал на другой сервер, а у вас он открывается по-старому или не открывается вовсе, кэш мог сохранить старый адрес.

batch
ipconfig /flushdns

В ответ появится «Кэш сопоставителя DNS успешно очищен». После этого стоит перезапустить браузер: у браузеров свой кэш DNS, и ipconfig его не трогает.

Посмотреть, что лежит в кэше, можно так:

batch
ipconfig /displaydns

Если сайт открывается не туда даже после очистки кэша, проверьте файл C:\Windows\System32\drivers\etc\hosts: записи в нём имеют приоритет над DNS. Узнать, что отвечает сам DNS-сервер, поможет команда nslookup.

/registerdns: когда компьютер не находится по имени

В доменной сети компьютер сам регистрирует своё имя на DNS-сервере. Если после смены адреса другие машины находят его по старому IP или не находят вовсе, выполните от имени администратора:

batch
ipconfig /registerdns

Команда обновит аренду DHCP и заново отправит запись о себе на DNS-сервер. Результат появится не мгновенно: регистрация идёт в фоне, ошибки пишутся в журнал событий «Система».

Аналоги в PowerShell

В PowerShell у ipconfig есть аналоги, которые удобнее в скриптах, потому что возвращают объекты, а не текст:

powershell
Get-NetIPConfiguration

Краткая сводка по адаптерам: адрес, шлюз, DNS. С ключом -Detailed вывод подробнее.

powershell
Get-NetIPAddress -AddressFamily IPv4

Все IPv4-адреса компьютера с длиной префикса.

powershell
Clear-DnsClientCache
Get-DnsClientCache
Register-DnsClient

Очистка кэша DNS, его просмотр и регистрация в DNS - то же, что /flushdns, /displaydns и /registerdns.

Отдельного командлета, который обновлял бы аренду DHCP, нет, поэтому ipconfig /renew используют и в PowerShell.

А в Linux и macOS?

В Linux ту же информацию показывает ip addr (адреса) и ip route (шлюз), а настройки DNS - resolvectl status в системах с systemd-resolved. В macOS работает ifconfig, а адрес конкретного интерфейса выводит ipconfig getifaddr en0 - у macOS своя утилита с тем же именем, но другими ключами.