Где находится кеш ARP в Linux?

6097
ssharma

Где в памяти существует кеш ARP? Я пытался найти его в Интернете, но ничего не нашел.

5
@Gilles Итак, если я изменю `/ proc / net / arp`, то я бы косвенно изменил кэш ARP? 6 лет назад 0

1 ответ на вопрос

9
RubberStamp

GNU / Linux, в отличие от MacOSx, использует /procструктуру каталогов, иначе говоря procfs, для хранения системных данных. arp cacheНаходится на /proc/net/arp Вы печатаете данные в stdoutнепосредственно из этого системного файла через:

cat /proc/net/arp 

Я понял, что вам также может понадобиться адрес памяти, который ядро ​​использует для поиска кэша arp. Точный адрес может отличаться. Однако вы можете найти таблицу адресов памяти для всех адресов памяти arp, в которых ядро ​​использует/proc/kallsyms

cat /proc/kallsyms |grep arp_ 

Может быть полезным.

Каталог `/ proc` не хранит ничего. Он * отображает * вещи, сохраненные или вычисленные ядром, и иногда позволяет изменять эти вещи, но он не соответствует какой-либо области хранения. В случае ARP-кэша вы можете просмотреть его текстовый рендеринг через `/ proc / net / arp`, но вы видите некоторые структуры данных ядра, которые были довольно напечатаны, вы не видите некоторые из них напрямую. файл, который составляет содержимое кэша. Gilles 6 лет назад 3
Это то место, где «GNU / Linux» не так. Вы имеете в виду ядро, ядро ​​называется только «Linux». Gilles 6 лет назад 3

Похожие вопросы