Я думал, что сопоставлю этот первый пробел:
sed 's/\s/_i1\t/' test.txt
Почему он появился, а другие - нет?
Потому что это были единственные две машины, которые обменивались сетевым трафиком с вашим сервером в течение последних 60 секунд или какой-либо другой кэш arp значение указано в вашей системе в / proc / sys / net / ipv4 / neigh / default / gc_stale_time
, если оно отличается от значения по умолчанию 60.
arp -a
сообщает, что находится в arp cache; он не пытается заполнить кеш как можно большим количеством записей.
Вам нужно немного узнать об ARP-кэшах, прежде чем вы сможете эффективно интерпретировать вывод ARP-кэша
Кэш arp содержит сопоставления IP :MAC-адреса для:
Размещает обмен трафиком между вашим сервером В СВОЕЙ СОБСТВЕННОЙ ПОДСЕТИ
Интерфейсы маршрутизатора, используемые для маршрутизации трафика между вашим хостом и другими в РАЗНЫХ подсетях
ARP-кэш этих сопоставлений IP:MAC-адресов НЕ сохраняется:
Сеть перезапуск.
Сервер перезагружается.
Хотя Garbage Collection("gc")должнаочищать в вашем arp-кэше эти сопоставления, которые превышают указанный GC порог, реальность они сохраняются,хотя записано как « просроченный »
Таким образом, вы не увидите сопоставлениеIP-адресов :MAC-адресовхоста, с которым ваш сервер обменивался трафиком, адресованного вДРУГОЙподсети или даже в одной из подсетей вашего хоста. подсети, если сеть или сам сервер были перезапущены.
Кстати, если вы хотите проверить устойчивость сопоставлений за пределами интервалаGC , ping
другой хост в той же подсети и после остановки ping
периодически выполняйте:
ip -statistics neighbour
Вы увидите IP-адрес :MAC-адрес хоста, который вы ping
указали, после интервала GC .