Arp кэш ошибка

When I enter the command line arp -d * at an instance of cmd.exe, I get

The ARP entry deletion failed: The parameter is incorrect

I can delete individual entries fine, e.g. arp -d 192.168.1.1

I also have Cygwin and Git Bash installed, so I thought maybe the * was getting expanded like in a Unix shell, but it doesn’t appear so, as echo * from cmd.exe results in a simple * output. I have also tried escaping the asterisk and enclosing it in quotes with arp -d "*" and arp -d ^*. Both result in the same error.

I do have two NICs on this machine, an internal and a USB, but I get the same error when I unplug the USB NIC.

The account I am running from is an administrator, and I have also tried right-clicking cmd.exe and selecting «Run as Administrator.»

Как очистить кэш ARP в WindowsКэш или таблица (Address Resolution Protocol, протокол определения адреса) хранит соответствия IP-адресов и аппаратных MAC-адресов устройств в локальной сети для быстрой установки соединения без повторного опроса компьютеров в сети.

Обычно, данные, хранящиеся в кэше, проблем не вызывают, но при возникновении ошибок при подключениях в локальной сети можно попробовать выполнить очистку кэша ARP на случай, если в нём хранятся неактуальные данные. Об очистке кэша ARP и пойдет речь далее в инструкции.

Очистка кэша ARP в командной строке

Просмотр кэша ARP в Windows

Базовый способ очистки таблицы ARP — использование командной строки. Используйте следующие шаги:

  1. Запустите командную строку от имени Администратора. В Windows 10 и Windows 11 для этого можно начать набирать «Командная строка» в поиске на панели задач, затем нажать правой кнопкой мыши по найденному результату и выбрать соответствующий пункт контекстного меню.
  2. Используйте одну из следующих команд для очистки кэша ARP:
    netsh interface IP delete arpcache

    или

    arp -d

    Очистить кэш ARP в командной строке

  3. Перезагрузите компьютер.

Кэш ARP очищен.

Просмотреть содержимое кэша ARP можно с помощью команды

arp -a

Кэш ARP очищен

Учитывайте, что сразу после очистки в нем начнут появляться новые записи — пустой кэш вы, вероятнее всего, не увидите.

Существует возможность настроить время жизни кэша ARP, изменив значения параметров DWORD (по умолчанию могут отсутствовать):

  • ArpCacheLife (120 секунд по умолчанию)
  • ArpCacheMinReferencedLife (600 секунд по умолчанию)

в разделе реестра

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters

Время задается в секундах в десятичной системе счисления.

Неправильно настроенные или просроченные записи ARP-кэша в системе могут быть одной из причин проблем с подключением к сети.

Знаете ли вы, что очистка кэша ARP в вашей системе может устранить проблемы загрузки и ошибки подключения?

В этой статье мы рассмотрим, как проверить и очистить кэш ARP в различных операционных системах.

Содержание

  1. Что такое кэш ARP?
  2. Когда надо очищать кэш ARP?
  3. Как очистить кэш ARP?
  4. Windows
  5. Linux
  6. Mac
  7. Заключение

Что такое кэш ARP?

ARP расшифровывается как Address Resolution Protocol, который отвечает за обнаружение MAC-адресов и сопоставление их с IP-адресами для успешного взаимодействия с другими системами в локальной сети.

Этот протокол работает между канальным и сетевым уровнями.

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

Когда наши системы находят MAC-адреса для конкретного IP-адреса с помощью протокола ARP, они сохраняются в таблице для дальнейшего использования.

Эта таблица называется ARP-кэш.

Она содержит список известных IP-адресов и их MAC-адресов.

ARP-запрос является широковещательным, а ARP-ответ – одноадресным.

Когда надо очищать кэш ARP?

Если IP-адреса связанных с сетью устройств меняются, записи ARP могут быть повреждены или просрочены, а новые записи не всегда отменяют просроченные записи в базе данных.

В результате это может повлиять на производительность сети и вызвать проблемы с загрузкой или подключением.

В этом случае вы можете просто очистить кэш ARP, чтобы решить проблему, поскольку очистка кэша ARP приведет к тому, что все ваши запросы снова пройдут через весь процесс ARP.

Во время этого процесса новые записи будут сохранены в таблице ARP.

Во время восстановления таблицы ARP-кэша могут возникнуть некоторые ошибки, поэтому не рекомендуется постоянно удалять ARP-кэш.

Вместо этого вы можете перезагрузить маршрутизатор или систему, чтобы решить проблемы с подключением.

Как очистить кэш ARP?

Мы можем легко очистить кэш ARP в любой операционной системе с помощью командной строки.

Давайте начнем.

Windows

Шаг 1: Откройте командную строку и запустите ее от имени администратора.

Шаг 2: Чтобы просмотреть таблицу ARP-кэша, просто введите следующую команду.

Пример вывода:

C:\WINDOWS\system32>arp -a

Interface: 192.168.29.64 --- 0xd
  Internet Address      Physical Address      Type
  192.168.29.1          a8-da-0c-e8-0e-e6     dynamic
  224.0.0.22            01-00-5e-00-00-16     static
  224.0.0.251           01-00-5e-00-00-fb     static
  224.0.0.252           01-00-5e-00-00-fc     static

Interface: 192.168.56.1 --- 0x14
  Internet Address      Physical Address      Type
  224.0.0.22            01-00-5e-00-00-16     static
  224.0.0.251           01-00-5e-00-00-fb     static
  239.255.255.250       01-00-5e-7f-ff-fa     static

C:\WINDOWS\system32>netsh interface IP delete arpcache
Ok.

Вы получите ответ ‘OK’, если воспользуетесь утилитой netsh для очистки таблицы кэша.

Linux

Шаг 1: Откройте терминал и используйте следующую команду утилиты IP для очистки всей таблицы ARP.

ip -s -s neigh flush all

Шаг 2: Если вы хотите удалить запись ARP для определенного адреса, используйте утилиту arp.

arp -d <ip-address>

Шаг 3: После удаления записей вы можете просто использовать следующую команду для просмотра таблицы ARP в Linux.

arp -n

Эта команда выводит всю таблицу arp.

Пример вывода:

arp -d 10.0.2.1
# arp -n
Address          HWtype         HWaddress           Flags Mask        Interface

10.0.2.1                       (incomplete)

10.0.2.2         ether       01:00:5e:00:00:fc         C                 eth0
10.0.2.3         ether       a8:da:0c:e8:0e:e6         C                 eth0

Здесь можно увидеть, что запись в кэше для конкретного адреса очищена.

Mac

Шаг 1: Откройте терминал на вашем mac и используйте следующие команды.

Шаг 2: Чтобы просмотреть существующие записи ARP.

  • Шаг 4: Очистить всю таблицу кэша
    $ sudo arp -a
    
    ? (192.168.29.1) at 01:00:5e:00:00:fc on en0 ifscope [ethernet]
    ? (192.168.2.13) at a8:da:0c:e8:0e:e6 on en0 ifscope [ethernet]
    ? (192.168.1.21) at 01:00:5e:00:0e:16 on en0 ifscope permanent [ethernet]
    
    $ sudo arp -a -d
    
    192.168.29.1 (192.168.29.1) deleted
    192.168.2.13 (192.168.2.13) deleted
    192.168.1.21 (192.168.1.21) deleted

    Заключение

    Если вы не можете пинговать определенный IP-адрес в той же сети, даже если они работают правильно, это признак того, что что-то не так.

    Возможно, ваша таблица ARP-кэша нуждается в повторном восстановлении.

    Надеюсь, эта статья была полезна для вас, чтобы узнать, как очистить ARP-кэш в различных операционных системах.

    Возможно, вам также будет интересно узнать

  • 🐧 Как использовать команду arping на Linux
  • Используйте arp-scan для поиска скрытых устройств в вашей сети
  • Как реализовать ARP спуффинг атаку
  • Атака ICMP, ARP или DNS-кэша, обнаруженная ESET | Корреляция False Positive
Джек Уоллен (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) и увидите окно командной строки.

Очистка ARP-кэша в Windows 7

Рисунок 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-адрес компьютера).

Очистка ARP-кэша в Windows 7

Рисунок 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-кэша — лишь один из таких способов, но прибегают к ней довольно редко. Тем не менее, в ситуации, когда все остальные методы не дают результата, очистка кэша может немало пригодиться.

Автор: Jack Wallen
Перевод

SVET

Оцените статью: Голосов

Два компа с win xp не видят друг друга в локалке на рабочей группе. Адреса 192.168.0.1 и 192.168.0.2. Чувтсвуется проблема в первом компе, при попытке Испавить в соединении на нем выдается ошибка — «Невозможно завершить исправление. Выполнятся очистка ARP-кэша». Компы не пингуются, однако со второго компа в Сетевом окружении виден первый, но доступа нет — не найден сетевой путь.

Попытка работы с arp из командной строки ничего не дает. Записывал статически соответсвие ip и mac как на первом, так и на втором — ничего. Распечатка таблицы arp, до составления руками — пуста. Лишь изредка на втором виден mac первого как положено динамический. arp -d * не нужна, таблица и так пуста. А исправление все равно не работает, зависая на этой очистке arp. В чем порблема, из-за чего ошибка?

p.s. Да, вот еще странность — на первом компе в состоянии подключения с самого начала значится Отправлено пакетов 34 123 456 789 (такого порядка).

Не обращай особого внимания на этот «Исправить». У меня он тоже не прохдит, хотя всё работает нормально.

Сам себя пингуешь? (ping localhost)

Отключал ли ты виндовые фаерволлы?

Что выдаёт ipconfig /all

Нет ли лишнего в C:\WINDOWS\system32\drivers\etc\hosts

Не мутил ли ты что-то с route? Выведи листинг route print

Сначала надо разобраться с «пингами», а потом уже и с остальным. Как только всё запингуется, так и появятся в арп-таблице соответствующие записи.

А вот на счёт пакетов — действительно странно, очень уж их много. Может вирь сидит?


Изменено пользователем Kobi

Понравилась статья? Поделить с друзьями:
  • Array initializer expected java ошибка
  • Array already dimensioned vba ошибка
  • Array access out of bounds ошибка football manager
  • Armxxl 105 коды ошибок
  • Arnavi 4 статус дд ошибка