#Что происходит и когда это важно
Сайты с IPv6 доступны, адреса IPv4 на интерфейсе нет или он вида 169.254.x.x. В IPv4-маршрутах нет ожидаемого шлюза.
#Возможные причины и как их отличить
| Возможная причина | Как узнать | Что делать |
|---|---|---|
| DHCPv4 не отвечаетСервер не выдаёт адрес из пула, проблема VLAN/порта/маршрутизатора. | В журнале истечение DHCP timeout. | Проверить сеть и сервер DHCP. |
| Профиль настроен только на IPv6IPv4 method=disabled или manual без адреса. | В настройках нет автоматического IPv4. | Вернуть DHCPv4 по заданию сети. |
| Несколько управляющих службNetworkManager и другой сетевой менеджер конфликтуют. | Профиль самопроизвольно меняется после перезапуска. | Выяснить единственного владельца интерфейса. |
#Пошаговая диагностика и исправление
- Проверьте интерфейс и адресОткройте терминал. Выполните
ip -br addr,ip -4 addr showиip -4 route. Найдите нужный интерфейс и убедитесь, что отсутствует ожидаемый IPv4-адрес. Если адрес есть, но не открываются сайты, сначала проверьте маршрут/DNS, это другая проблема. - Посмотрите параметры активного подключенияВ NetworkManager выполните
nmcli -f NAME,UUID,TYPE,DEVICE connection show; найдите свой профиль, затемnmcli connection show "ИМЯ_ПРОФИЛЯ"с настоящим именем. Полеipv4.methodдолжно бытьautoдля DHCP, если сеть именно так устроена. Значение manual может быть намеренным на сервере. - Сверьте физическую сетьВыполните
ip -br link; если NO-CARRIER, проверьте кабель/порт либо подключение Wi-Fi. DHCP не выдаст адрес при отсутствии линка. Если линк есть, попробуйте другое устройство в том же сегменте сети для отделения неисправности маршрутизатора. - Посмотрите сообщения DHCPВведите
journalctl -b -u NetworkManager -n 120 --no-pager. Найдите DHCPv4, timeout, lease или unavailable. Если журналы показывают успешное получение адреса, но он не отображается, проверьте, тот ли профиль и интерфейс вы смотрите. - Проверьте настройку IPv4 через графический интерфейсВ GNOME откройте «Настройки» → «Сеть» или «Wi-Fi» → шестерёнка активного подключения → «IPv4». Для обычной домашней DHCP-сети выберите «Автоматически (DHCP)» и запишите прежнее состояние. На управляемой сети предварительно уточните, допустим ли DHCP; после сохранения настройка может кратко разорвать соединение.
- Испытайте DHCPv4 без принудительных массовых сбросовПосле согласованного переподключения посмотрите
ip -4 addr showиip -4 route. Если адрес по-прежнему отсутствует, проверьте DHCP на маршрутизаторе или у администратора сети; не назначайте случайный IPv4 из чужой подсети. - Сохраняйте IPv6 и проверяйте два протокола отдельноУбедитесь, что прежний IPv6 доступ не исчез, и затем откройте ресурс, у которого действительно есть IPv4. Не отключайте IPv6 для «исправления» DHCPv4: это самостоятельные протоколы.
#Команды из инструкции с пояснениями
Linux · Терминал (Bash)Команда
Адреса интерфейсов обоих протоколов.
ip -br addrLinux · Терминал (Bash)Команда
Только IPv4-маршруты.
ip -4 routeLinux · Терминал (Bash)Команда
Профили NetworkManager.
nmcli -f NAME,UUID,TYPE,DEVICE connection showLinux · Терминал (Bash)Команда
Журнал сетевого менеджера.
journalctl -b -u NetworkManager -n 120 --no-pager#Как проверить результат
Интерфейс получает правильный IPv4-адрес, имеет нужный маршрут, сохраняет IPv6 и работает после переподключения.
#Если проблема не устранена
Если на всех устройствах сегмента отсутствует IPv4, вероятнее проблема DHCP-сервера. Если только на одном — сохраняйте журнал NetworkManager и настройки конкретного профиля.