Очистка arp таблицы. Очистка кэшей сетевых адресов. Очищаем кэш DNS
ОС Windows очень бережно работает с сетью. Настолько бережно, что устаревшие данные об узлах могут храниться в кэше годами.
Симптомы устаревших данных могут быть самыми разнообразными:
- пинг по имени идёт на один адрес, а попытка подключения к терминалу или ресурсу по тому же имени - на другой;
- при физической смене шлюза (одно устройство сменяется на другое, но с таким же IP-адресом) - пропадает интернет;
- появляются конфликты IP-адресов в локальной сети, о чём сигнализирует баллон над часами;
- перестают работать удалённые принтеры
- и ещё масса других удовольствий
Почему такое происходит? Потому что сетевых кэшей несколько, а данные в них перестают соответствать не только реальному положению дел в сети, но и друг другу.
Излечить можно по вполне стандартной процедуре.
0. Разрываем подключение к локальной сети
Работающая сеть может помешать корректно очистить все существующие кэши.
1. Очищаем кэш ARP
В локальной сети компьютеры общаются между собой не по IP, а по MAC-адресам, то есть на более низком (канальном) уровне.
При обращении к удалённому компьютеру по IP, первым делом идёт широковещательный запрос на получение его физического адреса. Полученный адрес падает в кэш ARP, для ускорения последующих обращений. И только потом идёт подключение к удалённой машине, но уже не по IP, а по MAC-адресу.
В нормальном режиме запись кэша ARP хранится в течении двух минут с момента последнего обращения, но не более 10 минут.
2. Очищаем кэш NetBIOS
В этом кэше находятся сопоставления NetBIOS-имён компьютеров с их IP-адресами. Если вам посчастливилось и в сети присутствует ещё и сервер WINS (что-то типа DNS для NetBIOS имён), есть смысл почистить и его.
Сразу после очистки этого кэша туда подгружаются записи из файла LMHOSTS (%SystemRoot%\System32\drivers\etc\lmhosts).
Многие считают протокол NetBIOS устаревшим, однако микрософт носится с ним как с писаной торбой. Без него Windows ведёт себя в сети неадекватно. В то же время, с ним - создаёт дикий широковещательный флуд по портам .
Вирус kido одобряет использование NetBIOS.
3. Очищаем кэш DNS
ipconfig /flushdns
Здесь всё понятно. Кэш DNS - это сопоставление сетевых имён узлов с их IP-адресами.
В него же подгружаются записи из файла HOSTS (%SystemRoot%\System32\drivers\etc\hosts)
Кстати, вирусы очень любят менять местоположение файла HOSTS.
А путь к нему задаётся в реестре, ветка HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters , ключ DataBasePath , тип REG_EXPAND_SZ .
Если команда возвращает ошибку - надо запустить (или перезапустить) службу DNS-клиента.
4. Восстанавливаем подключение к локальной сети
5. Обновляем сетевые настройки по DHCP
Команда посылает запрос последнему использовавшемуся серверу DHCP (адрес этого сервера ) на получение сетевых настроек.
Все описанные процедуры можно сделать толпой и из графики.
В ХР: Пуск
→ Панель управления
→ Сетевые подключения
.
На нужном подключении нажимаем правую кнопку мыши и выбираем из меню «Восстановить
». После этого будут выполнены следующие операции:
- Широковещательный DHCP-запрос. Ответы приходят со всех DHCP-серверов.
- Очистка кэша ARP
- Очистка кэша NetBIOS. С последующей загрузкой файла LMHOSTS.
- Очистка кэша DNS. С последующей загрузкой файла HOSTS.
- Попытка регистрации в WINS (актуально только если он есть)
- Попытка регистрации в DNS (актуально только для AD)
К сожалению, этот лёгкий метод работает криво и не всегда.
Когда компьютеры обращаются к информации DNS, найденные сопоставления имен и адресов временно сохраняются в кэше ARP (Address Resolution Protocol), чтобы в следующий раз при обращении к той же информации не выполнять поиск заново. Эта информация устаревает в соответствии со значением TTL (Time-To-Live), устанавливаемом при ее получении, и по окончании срока жизни такая информация должна быть обновлена.
После получения новой информации устанавливается новое значение TTL. В общем случае эта автоматическая система получения, очистки и обновления информации о сопоставлениях имен и адресов работает хорошо. Но иногда устаревшая информация успевает вызвать проблемы до того, как она будет сброшена. Так, если на каком-то компьютере изменяется DNS-имя, а значение TTL еще не обнулялось, вы временно лишаетесь возможности найти этот компьютер.
Удаление старой информации о сопоставлениях имен
У администраторов DNS есть в запасе несколько трюков, с помощью которых можно уменьшить негативное влияние смены имен, например задание меньшего значения TTL перед сменой имени, чтобы старая информация удалялась быстрее и не вызывала проблем. Однако вы можете обнаружить, что легче просто избавиться от старых данных и заставить компьютер вновь просматривать информацию в DNS.
Для этого введите в командной строке или delete arpcache (если контекст Interface IP в Netsh уже установлен). В результате будет удалена информация о сопоставлениях имен и адресов для всех интерфейсов, настроенных на данном компьютере.
Пример использования очистки кеша arp
Если у вас несколько интерфейсов и вы хотите сбросить информацию лишь для одного интерфейса, укажите нужный интерфейс через ИмяИнтерфейса, например:
- netsh interface ip delete arpcache
- delete arpcache
Всем привет! Сегодня я расскажу, как посмотреть arp таблицу в Windows. Что такое arp - это протокол распознавания адреса, предназначен для преобразования IP-адресов в MAC-адреса, часто называемые также физическими адресами. Ранее я уже рассказывал, как выглядит arp таблица cisco . Думаю, что многим коллегам, кто только начинает знакомиться с сетевой инфраструктурой данной операционной системы, данная информация окажет хорошее подспорье, для формирования фундамента. Тут главное понимать принцип работы и назначения, все остальное уже нюансы различных вендоров.
Важной особенностью интерфейса Ethernet является то, что каждая интерфейсная карта имеет свой уникальный адрес. Каждому производителю карт выделен свой пул адресов в рамках которого он может выпускать карты. Согласно протоколу Ethernet, каждый интерфейс имеет 6-ти байтовый адрес. Адрес записывается в виде шести групп шестнадцатеричных цифр по две в каждой (шестнадцатеричная записи байта). Первые три байта называются префиксом, и именно они закреплены за производителем. Каждый префикс определяет 224 различных комбинаций, что равно почти 17-ти млн. адресам.
В сетях нет однозначного соответствия между физическим адресом сетевого интерфейса (MAC адресом сетевой карты) и его IP-адресом. Поиск по IP-адресу соответствующего Ethernet-адреса производится протоколом ARP, функционирующим на уровне доступа к среде передачи. Протокол поддерживает в оперативной памяти динамическую arp-таблицу в целях кэширования полученной информации. Открываем в Windows командную строку .
Как посмотреть arp таблицу
Вводим команду
Где вы слева видите ip адрес, а правее видите Физический адрес (mac адрес). Это и есть arp таблица windows.
По умолчанию данный кэш живет 300 секунд
очистка arp таблицы
Делается с помощью команды
И видим,произошла очистка arp таблицы
Как добавить свою запись в arp таблицу
Делается это с помощью команды
arp -s 157.55.85.212 00-aa-00-62-c6-09
Увеличиваем время жизни arp записи Windows 7 по 10
Давайте рассмотрим на примере Windows 8.1 как можно увеличить время жизни arp записей, для чего это может быть нужно, ну, чтобы разгрузить сеть лишним трафиком, если у вас в сети мало, что меняется. Делается это все через реестр Windows
Нажимаем Win+R и вводим regedit и переходим в ветку
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
Тут вам для изменения периода хранения данных в кэше ARP, нужно создать Параметр DWORD, если у вас разрядность системы 32, то создаем 32, если 64, то такой же.
Задаем имя ArpCacheLife и ставим значение в секундах, после чего нужно перезагрузиться и у вас поменяется время жизни arp записи.
Вот полная справка команды arp
Отображение и изменение таблиц преобразования IP-адресов в физические,
используемые протоколом разрешения адресов (ARP).
ARP -s inet_addr eth_addr
ARP -d inet_addr
ARP -a [-N if_addr] [-v]
- -a Отображает текущие ARP-записи, опрашивая текущие данные протокола. Если задан inet_addr, то будут отображены IP и физический адреса только для заданного компьютера. Если ARP используют более одного сетевого интерфейса, то будут отображаться записи для каждой таблицы.
- -g То же, что и параметр -a.
- -v Отображает текущие ARP-записи в режиме подробного протоколирования. Все недопустимые записи и записи в интерфейсе обратной связи будут отображаться.
inet_addr Определяет IP-адрес. - -N if_addr Отображает ARP-записи для заданного в if_addr сетевого интерфейса.
- -d Удаляет узел, задаваемый inet_addr. Параметр inet_addr может содержать знак шаблона * для удаления всех узлов.
- -s Добавляет узел и связывает адрес в Интернете inet_addr с физическим адресом eth_addr. Физический адрес задается 6 байтами (в шестнадцатеричном виде), разделенных дефисом. Эта связь является постоянной eth_addr Определяет физический адрес.
- if_addr - Если параметр задан, он определяет адрес интерфейса в Интернете, чья таблица преобразования адресов должна измениться. Если параметр не задан, будет использован первый доступный интерфейс.
RARP
Reverse ARP, обратный ARP протокол служит для того, чтобы по имеющемуся MAC адресу узнать IP адрес. Этот протокол используется в бездисковых машинах (https://ru.wikipedia.org/wiki/Бездисковая_рабочая_станция), загружающихся по сети. Первым делом такая машина должна узнать свой IP адрес, и параметры сети, чтобы она могла обратиться по сети, допустим к TFTP серверу, с которого она будет скачивать загрузочную запись. Единственное, что знает о себе эта машина - её MAC адрес.
При работе в локальной сети случается так, что какой-либо узел или сервер в сети стал вдруг недоступен, в то время как с других компьютеров он виден и проблем с доступом нет. Иногда причиной этому может послужит то, что у этого компьютера изменился MAC-адрес сетевого адаптера . При этом на компьютере, с которого узел недоступен, arp-кэш не обновился .
Что такое arp-кеш?
Кэш ARP это фактически таблица соответствия IP-адресов и физических адресов сетевых адаптеров. Эта таблица обновляется при первой необходимости, но иногда она может не обновиться. Причиной может послужить сбой работы системы или атака ARP-спуфингом на компьютер, после чего могут быть недоступны некоторые узлы в сети и не открываться некоторые веб-сайты.
Как вручную обновить arp-кеш на Windows7 и Windows 8?!
Посмотреть таблицу ARP
на компьютере под управлением операционной системы Windows можно из командной строки. Чтобы открыть командную строку, надо нажать кнопку Пуск
и в строке поиска программ написать Командная строка
. В результате поиска Вы увидите ярлык запуска командной строки Windows. Чтобы запустить её с правами Администратора, нужно кликнуть по ярлыку правой кнопкой мыши:
В открывшемся контекстном меню выбираем пункт Запуск от имени Администратора . Для просмотра таблицы ARP вводим команду arp -a :
После этого, для очистки ARP-кэша
нужно ввести команду: netsh interface ip delete arpcache
После выполнения команды, ARP-кэш будет очищен
.