Очистка кэша маршрутизации и сброс сетевых адаптеров — это процедура, которая устраняет сбои в работе сети, восстанавливает стабильность подключения и решает проблемы с разрешением имён хостов. Выполните данные операции, если сервер не подключается к узлам сети, отправляет пакеты на неверные IP-адреса или демонстрирует нестабильное соединение.
Причины возникновения проблемы
- Устаревшие записи в кэше ARP (Address Resolution Protocol), указывающие на неверные MAC-адреса
- Повреждённые записи в таблице маршрутизации после изменения сетевой топологии
- Ошибки в кэше DNS из-за неправильного разрешения доменных имён
- Сбой драйвера сетевого адаптера после скачка напряжения или программного конфликта
- Переполнение кэша маршрутов при интенсивном сетевом трафике
- Неправильная конфигурация IP-адресов на интерфейсах после миграции серверов
Пошаговая инструкция для Windows Server
- Откройте
Командную строкуот имени администратора (нажмитеWin + R, введитеcmd, нажмитеCtrl + Shift + Enter). - Выполните команду для очистки кэша ARP:
arp -d * - Очистите таблицу маршрутизации командой:
route -f - Сбросьте кэш DNS сервера:
ipconfig /flushdns - Перезагрузите сетевой стек:
netsh int ip reset resetlog.txt - Отключите сетевой адаптер командой:
netsh interface set interface name="Ethernet" admin=disabled(заменитеEthernetна имя вашего адаптера). - Подождите 10 секунд.
- Включите адаптер обратно:
netsh interface set interface name="Ethernet" admin=enabled - Проверьте статус адаптера:
ipconfig /all - Перезагрузите сервер командой
shutdown /r /t 0для полного применения всех изменений.
Пошаговая инструкция для Linux/Ubuntu Server
- Откройте терминал и войдите в режим суперпользователя:
sudo su - Очистите кэш ARP:
ip -s -s neigh flush all - Сбросьте таблицу маршрутизации:
ip route flush cache - Очистите DNS кэш (если используется systemd-resolved):
systemd-resolve --flush-caches - Определите имя сетевого интерфейса:
ip link show - Отключите интерфейс:
ip link set eth0 down(заменитеeth0на имя вашего интерфейса). - Подождите 5 секунд.
- Включите интерфейс:
ip link set eth0 up - Проверьте IP-конфигурацию:
ip addr show - Перезагрузите сервер:
reboot
Пошаговая инструкция для macOS Server
- Откройте приложение
Терминал(найдите вПриложения → Утилиты). - Очистите кэш ARP:
sudo arp -a -d - Сбросьте DNS кэш:
sudo dscacheutil -flushcache - Очистите маршруты:
sudo netstat -nr | grep defaultдля просмотра, затемsudo route -n flush - Отключите Wi-Fi или Ethernet через меню
Системные параметры → Сетьили командой:networksetup -setairportpower en0 off - Подождите 10 секунд.
- Включите адаптер:
networksetup -setairportpower en0 on - Проверьте статус сети:
ifconfig - Перезагрузите сервер:
sudo reboot
Проверка результатов
- Выполните команду для проверки таблицы маршрутизации:
route print(Windows) илиroute -n(Linux). - Убедитесь, что все записи соответствуют вашей сетевой топологии.
- Проверьте связь с основными шлюзами:
ping <IP-адрес-шлюза> - Выполните тест разрешения доменных имён:
nslookup example.comилиdig example.com - Проверьте статус сетевого адаптера в диспетчере устройств (Windows) или командой
ethtool eth0(Linux).
Часто задаваемые вопросы
Могу ли я очистить кэш маршрутизации без перезагрузки сервера? Да, команды очистки работают немедленно, но рекомендуется перезагрузка для полного применения всех изменений и переинициализации сетевых драйверов.
Что произойдёт с текущими соединениями при отключении адаптера? Установленные TCP-соединения будут разорваны, поэтому выполняйте эту процедуру во время планового технического обслуживания или скоординируйте с пользователями.
Как автоматизировать эту процедуру на множестве серверов? Используйте PowerShell-скрипты для Windows Server (с удалённым выполнением через WinRM) или Ansible playbook для Linux-серверов с интеграцией в систему управления конфигурацией.