«IP-адрес — это лишь пропуск в локальную сеть. Сам по себе он не открывает дорогу в интернет. Реальная связь зависит от маршрутизации, DNS и десятка других условий, которые легко проверить, если знать, куда смотреть.»
Три уровня, которые должны работать после получения IP
Получение адреса от DHCP — это признак, что устройство смогло «представиться» серверу на канальном уровне (L2). Но для полного подключения нужно, чтобы корректно работали ещё как минимум два слоя.
Существует и менее очевидный сценарий — отказ на том же канальном уровне уже после получения IP. Например, из-за нестабильного соединения пакеты начинают теряться, или на коммутаторе включена фильтрация по MAC-адресу, которая блокирует уже «разрешённое» устройство.
Диагностика по симптомам: от причины к решению
Вместо хаотичных перезагрузок роутера стоит начать с конкретного симптома. Следующая таблица поможет сузить круг проблем.
| Симптом | Вероятная причина | Ключевая команда для проверки |
|---|---|---|
| Пинг до 8.8.8.8 проходит, сайты не открываются | Неработоспособный или недоступный DNS | nslookup yandex.ru 77.88.8.8 |
| Пинг до шлюза проходит, до 8.8.8.8 — нет | Отсутствует маршрут по умолчанию или шлюз не форвардит трафик | route print (Windows)ip route show (Linux) |
| Нет ответа даже на пинг локального шлюза | Конфликт IP-адресов или фильтрация по MAC (Port Security) | arp -a (проверка дубликатов)arping -D -I eth0 192.168.1.35 |
| Соединение обрывается через несколько минут после получения IP | DHCP-сервер недоступен для продления аренды или ограничение сессии на оборудовании провайдера | tcpdump -i eth0 port 67 or port 68 |
Глубинные проверки маршрутизации и DNS
Простого пинга иногда недостаточно. Эти команды показывают, какой путь на самом деле выбирают ваши пакеты и как система разрешает имена.
Точная проверка маршрута
# Windows: найти шлюз для нулевого маршрута
route print 0.0.0.0
# Linux/macOS: узнать, через какой интерфейс и шлюз пойдёт пакет
ip route get 8.8.8.8
Если вывод в Windows не показывает шлюз для сети 0.0.0.0, а в Linux команда завершается ошибкой, значит, маршрута по умолчанию не существует. Трафик никуда, кроме локальной сети, отправиться не может.
Диагностика DNS ниже поверхности
# Проверить разрешение через конкретный, заведомо рабочий DNS
nslookup habr.ru 77.88.8.8
# Linux: посмотреть, какие DNS-серверы использует система в данный момент
cat /etc/resolv.conf
# Windows: посмотреть DNS, полученные от DHCP
ipconfig /all | findstr "DNS"
Если nslookup срабатывает только с явным указанием сервера, а со стандартным — нет, проблема в полученных от DHCP DNS-адресах. Их можно прописать вручную в настройках сетевого подключения как 77.88.8.8 и 8.8.8.8.
Экспресс-чек за минуту
Когда нужно действовать быстро, выполните три шага по порядку:
- Пинг шлюза:
ping 192.168.1.1(адрес уточните в результатахipconfigилиip a). - Пинг публичного IP:
ping 8.8.8.8. - Разрешение домена:
nslookup vk.com.
Интерпретация:
• Шаг 1 не проходит — проблема на канальном уровне (физическое соединение, локальный коммутатор).
• Шаг 1 проходит, шаг 2 — нет — отсутствует маршрутизация (проблема со шлюзом или настройками сети).
• Шаг 2 проходит, шаг 3 — нет — неработоспособность DNS.
Динамическая адресация лишь назначает устройству идентификатор в сети. Дальнейшая связь зависит от сложного взаимодействия маршрутизаторов, политик доступа и работы вспомогательных служб, вроде DNS. Поэтому наличие IP-адреса — необходимое, но далеко не достаточное условие для выхода в интернет. Диагностика должна идти от физического уровня к прикладному, последовательно исключая каждое возможное узкое место.