Джек Уоллен (Jack Wallen) объясняет, как очистить кэш протокола разрешения адресов (Address Resolution Protocol, ARP) и как им управлять из командной строки.
Протокол разрешения адресов — важный компонент, необходимый для работы с IP-адресами в любой операционной системе. Он связывает адресацию Ethernet (IP-адреса) с аппаратной адресацией (MAC-адресами). Без этого протокола компьютер не удалось бы подключить к внешней сети, поскольку одна система адресации не могла бы взаимодействовать с другой.
ARP-кэш — это сборник записей ARP (преимущественно динамических), которые создаются при сопоставлении имени хоста с IP-адресом и IP-адреса с MAC-адресом, что необходимо для эффективного взаимодействия компьютера с этим IP.
Карта адресов, полученная в процессе сопоставления, сохраняется на компьютере в ARP-кэше и остается там до истечения срока ее действия. Как правило, никаких проблем это не создает, но в некоторых случаях поврежденная запись ARP может препятствовать нормальному подключению к Интернету и загрузке веб-страниц. В такой ситуации можно попытаться очистить ARP-кэш, чтобы решить проблему. Правда, тогда компьютеру придется создавать кэш заново, но это происходит довольно быстро.
Очистка ARP-кэша выполняется исключительно из командной строки, так что разомните пальчики и приготовьтесь печатать. Показав, как очистить ARP-кэш, я объясню, как им можно управлять с помощью определенных командных переключателей.
Очистка кэша
Шаг первый: вызов командной строки
Откройте меню «Пуск» (Start) и введите в строке поиска «cmd» (без кавычек), но [Enter] не нажимайте. Вместо этого нажмите на ссылке «cmd.exe» правой кнопкой мыши и выберите опцию «Запуск от имени администратора» (Run as Administrator, рис. A). Подтвердите выполнение операции в окне контроля учетных записей (UAC) и увидите окно командной строки.
Рисунок A. Если значок командной строки уже закреплен в меню «Пуск», пользоваться поиском не придется.
Шаг второй: выполнение команды
Для начала выполните команду arp -a. Она выведет список всех хранящихся на компьютере записей ARP (рис. B). Естественно, -a — далеко не единственная доступная опция. Команда arp также поддерживает следующие переключатели:
• -d — удаление IP-адреса (например, arp -d 192.168.100.10); • -d -a — удаление всех записей в таблице ARP; • -s — добавление записи в таблицу ARP (команда arp -s АДРЕС MAC-АДРЕС, где АДРЕС — это адрес, который нужно добавить, а MAC-АДРЕС — MAC-адрес компьютера).
Рисунок B. На снимке показан ARP-кэш для двух разных интерфейсов на одном компьютере. Нажмите, чтобы увеличить.
Чтобы полностью очистить кэш, выполните команду netsh interface ip delete arpcache. Она удалит весь ARP-кэш, и при следующем подключении к сети он начнет заполняться заново.
Как проверить, удалась ли очистка
Очистив ARP-кэш, обязательно проверьте, удалась ли операция, выполнив команду arp -a. Если кэш не был очищен, вполне вероятно, что в этом виноват баг Windows, который проявляется при включении службы «Маршрутизация и удаленный доступ» (Routing and Remote Services). Решить проблему очень легко:
1. Откройте меню «Пуск | Панель управления» (Start | Control Panel). 2. Выберите пункт «Администрирование» (Administrative Tools) в разделе «Система и безопасность» (System And Security). 3. Запустите средство «Управление компьютером» (Computer Management). 4. Разверните раздел «Службы и приложения» (Services and Applications) двойным щелчком. 5. Выделите раздел «Службы» (Services). 6. Найдите в списке пункт «Маршрутизация и удаленный доступ» и дважды щелкните на нем. 7. Выберите опцию «Отключена» (Disable) в выпадающем меню «Тип запуска» (Startup Type). 8. Остановите службу.
Теперь снова попытайтесь очистить ARP-кэш. На этот раз должно получиться.
Диагностика
ARP-кэш также можно использовать для диагностики проблем, связанных с сетевым подключением. В частности, стоит проверить, нет ли в списке недействительных записей ARP с MAC-адресом 00-00-00-00-00-00. Если такие записи имеются, их нужно удалить с помощью переключателя -d. Допустим, в кэше имеется запись вида:
224.0.0.24 00-00-00-00-00-00 static
Чтобы ее удалить, выполните команду arp -d 224.0.0.24 — и проблема будет решена.
В заключение
Существует множество способов диагностики и устранения проблем, связанных с сетевыми подключениями. Очистка ARP-кэша — лишь один из таких способов, но прибегают к ней довольно редко. Тем не менее, в ситуации, когда все остальные методы не дают результата, очистка кэша может немало пригодиться.