Как проверить arp таблицу в linux windows

Запись в разделе: Компьютер - Linux - Сеть в Linux. Тема: Просмотр ARP таблиц в Windows и Linux

ARP-таблица — это соответствие IP-адресов и MAC-адресов устройств, находящихся в сети.

В Windows посмотреть ARP таблицу можно так:

arp -a

Интерфейс: 10.153.0.220 — 0xb

адрес в Интернете Физический адрес Тип

10.153.0.1 10-38-d2-2a-ad-06 динамический

10.153.0.4 b0-82-dc-25-fb-ea динамический

10.153.0.5 00-90-4c-8b-86-86 динамический

10.153.0.13 ac-a6-2d-7e-b5-ec динамический

10.153.0.14 ac-c6-2d-78-a1-ac динамический

10.153.0.15 44-9e-a1-d9-d5-58 динамический

В Linux в некоторых дистрибутивах есть утилита arp, а в некоторых (например Debian) почему-то такой утилиты нет, и вместо нее можно использовать arp-scan. Возможно, arp лежит в net-tools… Утилита arp-scan запускается в Debian только в окружении root.

Пример запуска arp-scan (ибо у меня Debian):

# arp-scan —interface=eth0 10.153.0.0/16

Interface: eth1, datalink type: EN10MB (Ethernet)

Starting arp-scan 1.8.1 with 65536 hosts (http://www.nta-monitor.com/tools/arp-scan/)

10.153.0.1 10:38:d2:2a:ad:06 ELITEGROUP COMPUTER SYSTEM CO., LTD.

10.153.0.3 68:05:ca:2c:e4:98 (Unknown)

10.153.0.4 b0:82:dc:25:fb:ea (Unknown)

10.153.0.5 00:90:4c:8b:86:86 REALTEK SEMICONDUCTOR CORP.

10.153.0.6 74:ea:3a:85:e2:a7 TP-LINK Technologies Co.,Ltd.

10.153.0.11 00:25:22:34:74:0c ASRock Incorporation

10.153.0.12 ac:16:2d:75:79:b0 (Unknown)

10.153.0.13 ac:a6:2d:7e:b5:bc (Unknown)

10.153.0.14 ac:c6:2d:78:a1:ec (Unknown)

10.153.0.15 44:9e:a1:d9:d5:58 (Unknown)

Не забывайте посмотреть на интерфейс и его IP через утилиту ifconfig, чтобы выбрать правильный диапазон IP адресов.

ARP (англ. Address Resolution Protocol — протокол определения адреса) — протокол в компьютерных сетях, предназначенный для определения MAC-адреса по IP-адресу другого компьютера. Существуют следующие типы сообщений ARP: запрос ARP (ARP request) и ответ ARP (ARP reply). Система-отправитель при помощи запроса ARP запрашивает физический адрес системы-получателя. Ответ (физический адрес узла-получателя) приходит в виде ответа ARP.

Компьютер А (IP-адрес 192.168.1.1) и компьютер Б (IP-адрес 192.168.1.2) соединены сетью Ethernet. Компьютер А желает переслать пакет данных на компьютер Б, IP-адрес компьютера Б ему известен. Компьютеру А для осуществления передачи через Ethernet требуется узнать MAC-адрес компьютера Б в сети Ethernet. Для этой задачи и используется протокол ARP.

Компьютер А отправляет широковещательный запрос, адресованный всем компьютерам в одном с ним широковещательном домене. Суть запроса: «компьютер с IP-адресом 192.168.1.2, сообщите свой MAC-адрес компьютеру с МАС-адресом …». Этот запрос доставляется всем устройствам в том же сегменте Ethernet. Компьютер Б отвечает компьютеру А на запрос и сообщает свой MAC-адрес.

Протокол имеет буферную память (ARP-таблицу), в которой хранятся пары адресов (IP-адрес, MAC-адрес) с целью уменьшения количества посылаемых запросов, следовательно, экономии трафика и ресурсов. Записи ARP-таблицы бывают двух вид видов: статические и динамические. Статические добавляются самим пользователем, динамические же — создаются и удаляются автоматически. При этом в ARP-таблице всегда хранится широковещательный физический адрес FF:FF:FF:FF:FF:FF.

Команда arp в Windows

Позволяет просмотреть ARP-таблицу, добавить в нее новую запись или удалить существующую:

> arp
Отображение и изменение таблиц преобразования IP-адресов в физические,
используемые протоколом разрешения адресов (ARP).

ARP -s inet_addr eth_addr [if_addr]
ARP -d inet_addr [if_addr]
ARP -a [inet_addr] [-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       Если параметр задан, он определяет адрес интерфейса в
                Интернете, чья таблица преобразования адресов должна
                измениться. Если параметр не задан, будет использован
                первый доступный интерфейс.
Пример:
  > arp -s 157.55.85.212   00-aa-00-62-c6-09  .. Добавляет статическую запись.
  > arp -a

Создать запись в ARP-таблице:

> arp -s IP-адрес MAC-адрес

Вывести записи ARP-таблицы:

> arp -a
Интерфейс: 192.168.53.1 --- 0x5
  адрес в Интернете      Физический адрес      Тип
  192.168.53.255        ff-ff-ff-ff-ff-ff     статический
  224.0.0.22            01-00-5e-00-00-16     статический
  224.0.0.251           01-00-5e-00-00-fb     статический
  224.0.0.252           01-00-5e-00-00-fc     статический
  239.255.255.250       01-00-5e-7f-ff-fa     статический

Интерфейс: 192.168.110.2 --- 0x14
  адрес в Интернете      Физический адрес      Тип
  192.168.110.1         04-bf-6d-9a-c7-a8     динамический
  192.168.110.3         08-00-27-92-ce-01     динамический
  192.168.110.255       ff-ff-ff-ff-ff-ff     статический
  224.0.0.22            01-00-5e-00-00-16     статический
  224.0.0.251           01-00-5e-00-00-fb     статический
  224.0.0.252           01-00-5e-00-00-fc     статический
  239.255.255.250       01-00-5e-7f-ff-fa     статический
  255.255.255.255       ff-ff-ff-ff-ff-ff     статический

Интерфейс: 172.28.128.1 --- 0x15
  адрес в Интернете      Физический адрес      Тип
  172.28.128.255        ff-ff-ff-ff-ff-ff     статический
  224.0.0.22            01-00-5e-00-00-16     статический
  224.0.0.251           01-00-5e-00-00-fb     статический
  224.0.0.252           01-00-5e-00-00-fc     статический
  239.255.255.250       01-00-5e-7f-ff-fa     статический

Команда arp в Linux

Позволяет просмотреть ARP-таблицу, добавить в нее новую запись или удалить существующую:

$ arp --help
Использование:
  arp [-vn] [<HW>] [-i <интерфейс>] [-a] [<имя_компьютера>]       <- Отобразить кэш arp
  arp [-v]          [-i <if>] -d  <host> [pub]                    <- Удалить элемент ARP
  arp [-vnD] [<HW>] [-i <интерфейс>] -f [<имя_файла>]             <- Добавить запись в arp из файла
  arp [-v]   [<HW>] [-i <if>] -s  <host> <hwaddr> [temp]          <- Добавить элемент
  arp [-v]   [<HW>] [-i <if>] -Ds <host> <if> [netmask <nm>] pub

        -a показать (все) хосты в альтернативном (BSD) стиле
        -e                       display (all) hosts in default (Linux) style
        -s, --set установить новую запись ARP
        -d, --delete удалить определенную запись
        -v, --verbose более детальный вывод
        -n, --numeric не преобразовывать адреса в имена
        -i, --device указание сетевого интерфейса (например, eth0)
        -D, --use-device прочитать <hwaddr> из заданного устройства
        -A, -p, --protocol указание семейства протоколов
        -f, --file считать новые записи из файла или из /etc/ethers

  <HW>=Используйте '-H <hw>' для указания типа аппаратного адреса. По умолчанию: ether
  Список всех возможных типов HW (которые поддерживают ARP)
    ash (Ash) ether (Ethernet) ax25 (AMPR AX.25) 
    netrom (AMPR NET/ROM) rose (AMPR ROSE) arcnet (ARCnet) 
    dlci (Frame Relay DLCI) fddi (Fiber Distributed Data Interface) hippi (HIPPI) 
    irda (IrLAP) x25 (универсальный X.25) eui64 (Универсальный EUI-64) 

Создать запись в ARP-таблице:

> sudo arp -s IP-адрес MAC-адрес

Вывести записи ARP-таблицы:

$ arp
Адрес                    HW-тип  HW-адрес            Флаги  Маска          Интерфейс
192.168.110.13           ether   08:00:27:78:7a:c2   C                     enp0s3
192.168.110.2            ether   1c:1b:0d:e6:14:bd   C                     enp0s3
_gateway                 ether   04:bf:6d:9a:c7:a8   C                     enp0s3

Альтернативный способ просмотра записей таблицы — команда

$ ip neigh
192.168.110.3 dev enp0s3 lladdr 08:00:27:78:7a:c2 REACHABLE
192.168.110.2 dev enp0s3 lladdr 1c:1b:0d:e6:14:bd STALE
192.168.110.1 dev enp0s3 lladdr 04:bf:6d:9a:c7:a8 STALE

Поиск:
Linux • Windows • Команда • Локальная сеть • ARP • IP адрес • MAC адрес • Протокол • Protocol • Ethernet

Каталог оборудования

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.

Производители

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.

Функциональные группы

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.

Домашнее задание к занятию «3.7. Компьютерные сети, лекция 2»

1. Проверьте список доступных сетевых интерфейсов на вашем компьютере. Какие команды есть для этого в Linux и в Windows?

Linux

  • ip link show
$ ip link show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000
    link/ether xx:xx:27:73:xx:xx brd ff:ff:ff:ff:ff:ff
  • ifconfig -a
$ ip link show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000
    link/ether xx:xx:27:73:xx:xx brd ff:ff:ff:ff:ff:ff
vagrant@vagrant:~$ ifconfig -a
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 10.0.2.15  netmask 255.255.255.0  broadcast 10.0.2.255
        inet6 xxxx::a00:27ff:fe73:xxxx  prefixlen 64  scopeid 0x20<link>
        ether xx:xx:27:73:xx:xx  txqueuelen 1000  (Ethernet)
        RX packets 16095  bytes 15813251 (15.8 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 7794  bytes 984770 (984.7 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 284  bytes 26504 (26.5 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 284  bytes 26504 (26.5 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

Windows

  • ifconfig -a

2. Какой протокол используется для распознавания соседа по сетевому интерфейсу? Какой пакет и команды есть в Linux для этого?

Протокол LLDP.
Пакет lldpd.
Команда lldpctl.

3. Какая технология используется для разделения L2 коммутатора на несколько виртуальных сетей? Какой пакет и команды есть в Linux для этого? Приведите пример конфига.

Технология называется VLAN (Virtual LAN).
Пакет в Ubuntu Linux — vlan
Пример конфига:

network:
  version: 2
  renderer: networkd
  ethernets:
    ens4:
      optional: yes
      addresses: 
        - 192.168.0.2/24
  vlans:
    vlan88:
      id: 88
      link: ens4 
      addresses:
        - 192.168.1.2/24

4. Какие типы агрегации интерфейсов есть в Linux? Какие опции есть для балансировки нагрузки? Приведите пример конфига.

В Linux есть две технологии агрегации (LAG): bonding и teaming.

Типы агрегации bonding:

$ modinfo bonding | grep mode:
parm:           mode:Mode of operation; 0 for balance-rr, 1 for active-backup, 2 for balance-xor, 3 for broadcast, 4 for 802.3ad, 5 for balance-tlb, 6 for balance-alb (charp)

active-backup и broadcast обеспечивают только отказоустойчивость
balance-tlb, balance-alb, balance-rr, balance-xor и 802.3ad обеспечат отказоустойчивость и балансировку

balance-rr — Политика round-robin. Пакеты отправляются последовательно, начиная с первого доступного интерфейса и заканчивая последним. Эта политика применяется для балансировки нагрузки и отказоустойчивости.
active-backup — Политика активный-резервный. Только один сетевой интерфейс из объединённых будет активным. Другой интерфейс может стать активным, только в том случае, когда упадёт текущий активный интерфейс. Эта политика применяется для отказоустойчивости.
balance-xor — Политика XOR. Передача распределяется между сетевыми картами используя формулу: [( «MAC адрес источника» XOR «MAC адрес назначения») по модулю «число интерфейсов»]. Получается одна и та же сетевая карта передаёт пакеты одним и тем же получателям. Политика XOR применяется для балансировки нагрузки и отказоустойчивости.
broadcast — Широковещательная политика. Передает всё на все сетевые интерфейсы. Эта политика применяется для отказоустойчивости.
802.3ad — Политика агрегирования каналов по стандарту IEEE 802.3ad. Создаются агрегированные группы сетевых карт с одинаковой скоростью и дуплексом. При таком объединении передача задействует все каналы в активной агрегации, согласно стандарту IEEE 802.3ad. Выбор через какой интерфейс отправлять пакет определяется политикой по умолчанию XOR политика.
balance-tlb — Политика адаптивной балансировки нагрузки передачи. Исходящий трафик распределяется в зависимости от загруженности каждой сетевой карты (определяется скоростью загрузки). Не требует дополнительной настройки на коммутаторе. Входящий трафик приходит на текущую сетевую карту. Если она выходит из строя, то другая сетевая карта берёт себе MAC адрес вышедшей из строя карты.
balance-alb — Политика адаптивной балансировки нагрузки. Включает в себя политику balance-tlb плюс осуществляет балансировку входящего трафика. Не требует дополнительной настройки на коммутаторе. Балансировка входящего трафика достигается путём ARP переговоров.

active-backup на отказоустойчивость:

 network:
   version: 2
   renderer: networkd
   ethernets:
     ens3:
       dhcp4: no 
       optional: true
     ens5: 
       dhcp4: no 
       optional: true
   bonds:
     bond0: 
       dhcp4: yes 
       interfaces:
         - ens3
         - ens5
       parameters:
         mode: active-backup
         primary: ens3
         mii-monitor-interval: 2

balance-alb — балансировка:

   bonds:
     bond0: 
       dhcp4: yes 
       interfaces:
         - ens3
         - ens5
       parameters:
         mode: balance-alb
         mii-monitor-interval: 2

5. Сколько IP адресов в сети с маской /29 ? Сколько /29 подсетей можно получить из сети с маской /24. Приведите несколько примеров /29 подсетей внутри сети 10.10.10.0/24.

$ ipcalc -b 10.10.10.0/29
Address:   10.10.10.0
Netmask:   255.255.255.248 = 29
Wildcard:  0.0.0.7
=>
Network:   10.10.10.0/29
HostMin:   10.10.10.1
HostMax:   10.10.10.6
Broadcast: 10.10.10.7
Hosts/Net: 6                     Class A, Private Internet

8 адресов = 6 для хостов, 1 адрес сети и 1 широковещательный адрес.

Сеть с маской /24 можно разбить на 32 подсети с маской /29

6. Задача: вас попросили организовать стык между 2-мя организациями. Диапазоны 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16 уже заняты. Из какой подсети допустимо взять частные IP адреса? Маску выберите из расчета максимум 40-50 хостов внутри подсети.

  • Можно взять адреса из сети для CGNAT — 100.64.0.0/10.
$ ipcalc -b 100.64.0.0/10 -s 50
Address:   100.64.0.0
Netmask:   255.192.0.0 = 10
Wildcard:  0.63.255.255
=>
Network:   100.64.0.0/10
HostMin:   100.64.0.1
HostMax:   100.127.255.254
Broadcast: 100.127.255.255
Hosts/Net: 4194302               Class A

1. Requested size: 50 hosts
Netmask:   255.255.255.192 = 26
Network:   100.64.0.0/26
HostMin:   100.64.0.1
HostMax:   100.64.0.62
Broadcast: 100.64.0.63
Hosts/Net: 62                    Class A
  • Маска для диапазонов будет /26, она позволит подключить 62 хоста.

7. Как проверить ARP таблицу в Linux, Windows? Как очистить ARP кеш полностью? Как из ARP таблицы удалить только один нужный IP?

Проверить таблицу можно так:

  • Linux: ip neigh, arp -n
  • Windows: arp -a

Очистить кеш так:

  • Linux: ip neigh flush
  • Windows: arp -d *

Удалить один IP так:

  • Linux: ip neigh delete <IP> dev <INTERFACE>, arp -d <IP>
  • Windows: arp -d <IP>
Что такое ARP-таблица, ARP-запрос?

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

Отображение IP-адресов, в аппаратные адреса, выполняется с помощью следующих действий:

— в сеть отправляется широковещательный запрос (ARP-request), принимаемый всеми сетевыми устройствами. Он содержит IP и Ethernet адреса отправителя, а также, целевой IP-адрес, для которого выполняется определение MAC-адреса.

— каждое устройство, принявшее запрос проверяет соответствие целевого IP-адреса, указанного в запросе, своему собственному IP-адресу. При совпадении, отправителю передается ARP-ответ (ARP-Reply), в котором содержатся IP и MAC адреса ответившего узла. Кадр с ARP-ответом содержит IP и MAC адреса как отправителя, так и получателя-составителя запроса.

— информация, полученная в ARP-ответе, заносится в ARP-кэш и может использоваться для обмена данными по IP-протоколу для данного узла. ARP-кэш представляет собой таблицу в оперативной памяти, каждая запись в которой содержит IP, MAC и возраст их действительности (от нескольких секунд, до нескольких часов). Возраст записи учитывается для того, чтобы обеспечить возможность повторного выполнения процедуры ARP при каком либо изменении соответствия адресов.

В IP-сетях существует три способа отправки пакетов от источника к приемнику:

— одноадресная передача (Unicast);
При одноадресной передаче поток данных передается от узла-отправителя на индивидуальный IP-адрес узла-получателя.

— широковещательная передача (Broadcast);
Широковещательная передача предусматривает доставку потока данных от узла-отправителя множеству узлов-получателей, подключенных к данному сегменту локальной сети, с использованием широковещательного IP-адреса.

— многоадресная рассылка (Multicast).
Многоадресная рассылка обеспечивает доставку потока данных группе узлов на IP-адрес группы многоадресной рассылки. Узлы группы могут находиться в данной локальной сети или в любой другой. Узлы для многоадресной рассылки объединяются в группы при помощи протокола IGMP (Internet Group Management Protocol, межсетевой протокол управления группами). Пакеты, содержащие в поле назначения заголовка групповой адрес, будут поступать на узлы групп и обрабатываться. Источник многоадресного трафика направляет пакеты многоадресной рассылки не на индивидуальные IP-адреса каждого из узлов-получателей, а на групповой IP-адрес.

Замечания по практическому использованию команды ARP:

— разрешение адресов по протоколу ARP выполняется только при операциях передачи данных по протоколу IP .
— время жизни записей в таблице ARP ограничено, поэтому, перед просмотром ее содержимого для конкретного адреса нужно выполнить ping на этот адрес.
— если ответ на ping не приходит, а запись для данного IP-адреса присутствует в таблице ARP, то этот факт можно интерпретировать как блокировку ICMP-пакетов брандмауэром пингуемого узла.
— невозможность подключения к удаленному узлу по протоколам TCP или UDP при наличии записей в таблице ARP для целевого IP, может служить признаком отсутствия служб обрабатывающих входящие подключения, или их блокировки брандмауэром (закрытые порты).
— ARP протокол работает в пределах локального сегмента сети. Поэтому, если выполнить ping на внешний узел ( например ping yandex.ru ), то в таблице ARP будет присутствовать запись для IP — адреса маршрутизатора, через который выполняется отправка пакета во внешнюю сеть.

Параметры командной строки ARP:

-a -отображает текущие ARP-записи, опрашивая текущие данные протокола. Если задан параметр inet_addr, то будут отображены IP и физические адреса только для заданного компьютера. Если ARP используют более одного сетевого интерфейса, то будут отображаться записи для каждой таблицы.

arp -a — отобразить все записи таблицы ARP.

arp -a | more — то же, что и в предыдущем случае, но с отображением информации в постраничном режиме.

arp -a > macaddr.txt — отобразить таблицу соответствия IP и MAC адресов для данного компьютера с выводом результатов в текстовый файл macaddr.txt .

arp -a 192.168.0.9 - отобразить запись, соответствующую IP-адресу 192.168.0.9

arp -a 192.168.1.158 -N 192.168.1.1 - отобразить таблицу ARP для адреса 192.168.1.158 на сетевом интерфейсе 192.168.1.1

arp -a -N 10.164.250.148 - отобразить все записи таблицы ARP на сетевом интерфейсе 10.164.250.148 .

-g — то же, что и параметр -a.

-v — отображает текущие ARP-записи в режиме подробного протоколирования. Все недопустимые записи и записи в интерфейсе обратной связи будут отображаться.

inet_addr — определяет IP-адрес.

-d — удаляет узел, задаваемый inet_addr. Параметр inet_addr может содержать знак шаблона * для удаления всех узлов.

arp -d 192.168.1.1 - удалить из таблицы ARP запись для IP-адреса 192.168.1.1

arp -d 192.168.1.* - удалить из таблицы ARP записи для диапазона IP-адресов 192.168.1.1 - 192.168.1.254

arp -d 192.168.1.1 192.168.1.56 удаление записи из таблицы ARP для IP-адреса 192.168.1.1 на сетевом интерфейсе 192.168.1.56

arp -d * - полная очистка таблицы ARP. Аналогично - arp -d без параметров. Если имеется несколько сетевых интерфейсов, то очистка может быть выполнена только для одного из них - arp -d * 192.168.0.56.

-s — добавляет узел и связывает адрес в Интернете inet_addr c физическим адресом eth_addr. Физический адрес задается 6 байтами (в шестнадцатеричном виде), разделенными дефисом. Эта связь является постоянной

arp -s 192.168.1.1 00-08-00-62-F6-19 - добавить в таблицу ARP запись, задающую соответствие IP адреса 192.168.1.1 и физического адреса 00-08-00-62-F6-19

arp -s 192.168.0.1 00-22-15-15-88-15 - добавить в таблицу ARP статическую запись, задающую соответствие IP - адреса 192.168.0.1 и MAC-адреса 00-22-15-15-88-15

arp -s 192.168.0.1 00-22-15-15-88-15 192.168.0.56 - то же самое, что и в предыдущем случае, но с указанием сетевого интерфейса, для которого выполняется добавление статической записи.

eth_addr — определяет физический адрес.

if_addr — если параметр задан, он определяет адрес интерфейса в Интернете, чья таблица преобразования адресов должна измениться. Если параметр не задан, будет использован первый доступный интерфейс.

Формат командной строки ARP:
ARP -s inet_addr eth_addr [if_addr]
ARP -d inet_addr [if_addr]
ARP -a [inet_addr] [-N if_addr] [-v]
Пример содержимого таблицы ARP:
Интерфейс: 127.0.0.1 --- 0x1

адрес в Интернете Физический адрес Тип

224.0.0.22 статический
224.0.0.251 статический
239.255.255.250 статический

Интерфейс: 192.168.1.133 --- 0x1c

адрес в Интернете Физический адрес Тип

192.168.1.1 c8-2b-35-9a-a6-1e динамический
192.168.1.132 00-11-92-b3-a8-0d динамический
192.168.1.255 ff-ff-ff-ff-ff-ff статический
224.0.0.22 01-00-5e-00-00-16 статический
224.0.0.251 01-00-5e-00-00-fb статический
224.0.0.252 01-00-5e-00-00-fc статический
239.255.255.250 01-00-5e-7f-ff-fa статический

В данном примере присутствуют записи ARP для петлевого интерфейса 127.0.0.1 и реального 192.168.1.133.
Петлевой интерфейс не используется для реальной передачи данных и не имеет привязки к аппаратному адресу.
Таблица ARP реального интерфейса содержит записи для узлов с адресами 192.168.1.1 и 192.168.1.132, а также записи для широковещательной (MAC-адрес равен ff-ff-ff-ff-ff-ff) и групповых рассылок (MAC-адрес начинается с 01-00-5e ).
МАС-адрес групповой рассылки всегда начинается с префикса, состоящего из 24 битов — 01-00-5Е. Следующий, 25-й бит равен 0. Последние 23 бита МАС-адреса формируются из 23 младших битов группового IP-адреса.

Иногда возникает необходимость узнать какие устройства подключены к локальной сети Linux. Это может понадобиться если вы хотите подключиться к одному из компьютеров и не помните его адрес или хотите убедиться в безопасности вашей сети и найти все скрытые устройства.

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

Как вы знаете, у всех компьютеров в сети есть IP адреса. Никогда не задавались вопросом, как сеть определяет, какому компьютеру принадлежит тот или иной адрес? Ведь сети бывают разные, проводные, беспроводные, ppp и т д. И в каждой из этих сетей аппаратный адрес компьютера имеет свой формат, зависящий от конструктивных особенностей сети, а IP адреса одни и те же.

Все очень просто. Для преобразования физических адресов, в ip адреса используется протокол ARP (Address Resolution Protocol), так и расшифровывается — протокол разрешения адресов. Когда компьютеру нужно обратиться к другому компьютеру в локальной сети, он отправляет специальный запрос в котором буквально спрашивает «У кого IP адрес 192.168.1.4», компьютер с таким ip адресом отправляет ответ «У меня, я 11:22:33:44:55», в ответе он передает свой физический адрес в этой сети. Дальше этот адрес заносится в специальную таблицу… но это уже тонкости реализации и они выходят за рамки нашей статьи. Сегодня мы поговорим как самому выполнить ARP сканирование локальной сети linux и найти все подключенные устройства.

Формат сообщений ARP — простой. Сообщение содержит либо запрос с IP адресом, либо ответ. Размер сообщения зависит от используемого сетевого протокола IPv4 или IPv6, типа оборудования сети и т д. Типы и размеры адресов определяются в заголовке сообщения. Заголовок завершается кодом сообщения. Код 1 для запроса и 2 для ответа.

Тело сообщения состоит из четырех адресов, аппаратные и сетевые адреса отправителя и получателя.

Если в вашей сети есть устройства, которые не отвечают на любые запросы, такие как Ping, HTTP, HTTPS и т д, то их можно найти послав ARP запрос. Это могут быть различные фаерволы и маршрутизаторы, в том числе маршрутизаторы компании Cisco, такое поведение заложено их протоколом. В таком случае ARP сканирование сети Linux будет единственным способом найти такое устройство.

Утилита ARP Scan

ARP Scan или еще называемый MAC Scanner — это очень быстрый инструмент для сканирования локальной сети Linux с помощью ARP. Утилита показывает все IPv4 адреса устройств в вашей сети. Поскольку ARP не использует маршрутизацию, то такой вид сканирования работает только в локальной сети.

ARP Scan находит все активные устройства, даже если у них включен брандмауэр. Компьютеры не могут скрыться от ARP также как они скрываются от ping. Но ARP сканирование не подходит для поиска компьютеров за пределами локальной сети, в таких ситуациях используйте ping сканирование.

Установка ARP Scan

Этот arp сканер сети доступен для следующих операционных систем:

  • Debian, поставляется по умолчанию;
  • Ubuntu, можно установить с репозитория Universe;
  • Fedora, официальные репозитории начиная с версии 6;
  • RedHat — доступна начиная с версии 5;
  • Gentoo, официальные репозитории;
  • ArchLinux — официальные репозитории Pacman.

Для установки в Ubuntu выполните:

sudo apt install arp-scan

Сканирование сети

ARP Scan позволяет находить активные компьютеры как в проводных сетях ethernet, так и в беспроводных Wifi сетях. Также есть возможность работать с Token Ring и FDDI. Не поддерживаются последовательные соединения PPP и SLIP, поскольку в них не используется ARP. Программу нужно запускать с правами суперпользователя.

Но сначала надо узнать сетевой интерфейс, который используется для подключения к сети. Для этого можно воспользоваться программой ip:

ip addr list

В данном случае, это enp24s0. Самый простой способ выполнить ARP сканирование и обнаружить все подключенные к локальной сети компьютеры — запустить программу со следующими параметрами:

sudo arp-scan --interface=enp24s0 --localnet

Здесь параметр —interface, задает интерфейс для сканирования, а —localnet, говорит, что нужно использовать все возможные IP адреса для текущей сети.

Первый параметр можно опустить, тогда программа будет искать все узлы для интерфейса с меньшим номером в системе. В нашем примере имя интерфейса — enp24s0.

Вместо параметра —localnet, можно указать маску сети:

sudo arp-scan --interface=enp24s0 10.0.1.0/24

ARP сканирование можно использовать, даже если у вашего интерфейса нет IP адреса. Тогда в качестве исходящего адреса будет использован 0.0.0.0. Правда, на такие запросы могут ответить не все системы. Тогда ARP сканер сети не так эффективен.

ARP спуфинг и ARP прокси

Поскольку в ARP нет поддержки аутентификации, ARP ответ на запрос может отправить любая машина, даже не та которой он был адресован. Иногда такое поведение используется в архитектуре сети — ARP прокси или маршрутизатор предает свой IP адрес вместо адреса запрашиваемой машины. Но также может использоваться для перехвата данных, отправляемых компьютером. Хакер может использовать ARP чтобы выполнить атаку «Человек посередине» или «Отказ в обслуживании» на других пользователей сети. Для защиты от таких атак существует специальное программное обеспечение.

Выводы

ARP Scan это простой, но очень мощный инструмент, с помощью которого можно выполнять сканирование ip адресов в локальной сети linux. Те, кто знаком с Cisco маршрутизаторами и коммутаторами, знают что найти такие устройства можно только с помощью ARP. Это полезный инструмент, возможно, когда-то вам он пригодится.

Creative Commons License

Статья распространяется под лицензией Creative Commons ShareAlike 4.0 при копировании материала ссылка на источник обязательна .

Неправильно настроенные или просроченные записи 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:WINDOWSsystem32>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:WINDOWSsystem32>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

Содержание

  1. ARP сканирование локальной сети Linux
  2. Как выполнить ARP сканирование локальной сети?
  3. Утилита ARP Scan
  4. Установка ARP Scan
  5. Сканирование сети
  6. ARP спуфинг и ARP прокси
  7. Выводы
  8. Как посмотреть ARP-таблицу, ARP-запросы.
  9. [в закладки] Шпаргалка системного администратора по сетевым инструментам Linux
  10. ▍Примеры
  11. Traceroute
  12. ▍Пример
  13. Telnet
  14. ▍Пример
  15. Netstat
  16. ▍Примеры
  17. Nmcli
  18. ▍Примеры
  19. Маршрутизация
  20. ▍Примеры
  21. Tcpdump и Wireshark
  22. ▍Примеры
  23. Iptables
  24. ▍Примеры
  25. Nslookup
  26. ▍Примеры
  27. Поиск неполадок
  28. ▍Примеры
  29. Итоги
  30. Команда arp в Linux с примерами
  31. 🐧 Как использовать команду arping на Linux
  32. Что делает инструмент arping?
  33. Arping на Linux
  34. Использование arping
  35. Обнаружение хостов
  36. Пинг хостов
  37. ARP Timeout
  38. Как указать исходный IP-адрес
  39. Справка по команде arping
  40. Заключение

ARP сканирование локальной сети Linux

Иногда возникает необходимость узнать какие устройства подключены к локальной сети Linux. Это может понадобиться если вы хотите подключиться к одному из компьютеров и не помните его адрес или хотите убедиться в безопасности вашей сети и найти все скрытые устройства.

Как выполнить ARP сканирование локальной сети?

Как вы знаете, у всех компьютеров в сети есть IP адреса. Никогда не задавались вопросом, как сеть определяет, какому компьютеру принадлежит тот или иной адрес? Ведь сети бывают разные, проводные, беспроводные, ppp и т д. И в каждой из этих сетей аппаратный адрес компьютера имеет свой формат, зависящий от конструктивных особенностей сети, а IP адреса одни и те же.

Тело сообщения состоит из четырех адресов, аппаратные и сетевые адреса отправителя и получателя.

Если в вашей сети есть устройства, которые не отвечают на любые запросы, такие как Ping, HTTP, HTTPS и т д, то их можно найти послав ARP запрос. Это могут быть различные фаерволы и маршрутизаторы, в том числе маршрутизаторы компании Cisco, такое поведение заложено их протоколом. В таком случае ARP сканирование сети Linux будет единственным способом найти такое устройство.

Утилита ARP Scan

ARP Scan находит все активные устройства, даже если у них включен брандмауэр. Компьютеры не могут скрыться от ARP также как они скрываются от ping. Но ARP сканирование не подходит для поиска компьютеров за пределами локальной сети, в таких ситуациях используйте ping сканирование.

Установка ARP Scan

Этот arp сканер сети доступен для следующих операционных систем:

Для установки в Ubuntu выполните:

sudo apt install arp-scan

Сканирование сети

ARP Scan позволяет находить активные компьютеры как в проводных сетях ethernet, так и в беспроводных Wifi сетях. Также есть возможность работать с Token Ring и FDDI. Не поддерживаются последовательные соединения PPP и SLIP, поскольку в них не используется ARP. Программу нужно запускать с правами суперпользователя.

Но сначала надо узнать сетевой интерфейс, который используется для подключения к сети. Для этого можно воспользоваться программой ip:

Snimok ekrana ot 2020 09 21 17 00 48

Snimok ekrana ot 2020 09 21 17 01 59

Здесь параметр —interface, задает интерфейс для сканирования, а —localnet, говорит, что нужно использовать все возможные IP адреса для текущей сети.

ARP сканирование можно использовать, даже если у вашего интерфейса нет IP адреса. Тогда в качестве исходящего адреса будет использован 0.0.0.0. Правда, на такие запросы могут ответить не все системы. Тогда ARP сканер сети не так эффективен.

ARP спуфинг и ARP прокси

Выводы

ARP Scan это простой, но очень мощный инструмент, с помощью которого можно выполнять сканирование ip адресов в локальной сети linux. Те, кто знаком с Cisco маршрутизаторами и коммутаторами, знают что найти такие устройства можно только с помощью ARP. Это полезный инструмент, возможно, когда-то вам он пригодится.

Источник

Как посмотреть ARP-таблицу, ARP-запросы.

Что такое ARP-таблица, ARP-запрос?

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

Отображение IP-адресов, в аппаратные адреса, выполняется с помощью следующих действий:

– в сеть отправляется широковещательный запрос (ARP-request), принимаемый всеми сетевыми устройствами. Он содержит IP и Ethernet адреса отправителя, а также, целевой IP-адрес, для которого выполняется определение MAC-адреса.

– каждое устройство, принявшее запрос проверяет соответствие целевого IP-адреса, указанного в запросе, своему собственному IP-адресу. При совпадении, отправителю передается ARP-ответ (ARP-Reply), в котором содержатся IP и MAC адреса ответившего узла. Кадр с ARP-ответом содержит IP и MAC адреса как отправителя, так и получателя-составителя запроса.

– информация, полученная в ARP-ответе, заносится в ARP-кэш и может использоваться для обмена данными по IP-протоколу для данного узла. ARP-кэш представляет собой таблицу в оперативной памяти, каждая запись в которой содержит IP, MAC и возраст их действительности (от нескольких секунд, до нескольких часов). Возраст записи учитывается для того, чтобы обеспечить возможность повторного выполнения процедуры ARP при каком либо изменении соответствия адресов.

В IP-сетях существует три способа отправки пакетов от источника к приемнику:

– одноадресная передача (Unicast);
При одноадресной передаче поток данных передается от узла-отправителя на индивидуальный IP-адрес узла-получателя.

– широковещательная передача (Broadcast);
Широковещательная передача предусматривает доставку потока данных от узла-отправителя множеству узлов-получателей, подключенных к данному сегменту локальной сети, с использованием широковещательного IP-адреса.

– многоадресная рассылка (Multicast).
Многоадресная рассылка обеспечивает доставку потока данных группе узлов на IP-адрес группы многоадресной рассылки. Узлы группы могут находиться в данной локальной сети или в любой другой. Узлы для многоадресной рассылки объединяются в группы при помощи протокола IGMP (Internet Group Management Protocol, межсетевой протокол управления группами). Пакеты, содержащие в поле назначения заголовка групповой адрес, будут поступать на узлы групп и обрабатываться. Источник многоадресного трафика направляет пакеты многоадресной рассылки не на индивидуальные IP-адреса каждого из узлов-получателей, а на групповой IP-адрес.

Замечания по практическому использованию команды ARP:
Параметры командной строки ARP:

-v – отображает текущие ARP-записи в режиме подробного протоколирования. Все недопустимые записи и записи в интерфейсе обратной связи будут отображаться.

inet_addr – определяет IP-адрес.

-d – удаляет узел, задаваемый inet_addr. Параметр inet_addr может содержать знак шаблона * для удаления всех узлов.

-s – добавляет узел и связывает адрес в Интернете inet_addr c физическим адресом eth_addr. Физический адрес задается 6 байтами (в шестнадцатеричном виде), разделенными дефисом. Эта связь является постоянной

eth_addr – определяет физический адрес.

if_addr – если параметр задан, он определяет адрес интерфейса в Интернете, чья таблица преобразования адресов должна измениться. Если параметр не задан, будет использован первый доступный интерфейс.

Формат командной строки ARP:
Пример содержимого таблицы ARP:

В данном примере присутствуют записи ARP для петлевого интерфейса 127.0.0.1 и реального 192.168.1.133.
Петлевой интерфейс не используется для реальной передачи данных и не имеет привязки к аппаратному адресу.
Таблица ARP реального интерфейса содержит записи для узлов с адресами 192.168.1.1 и 192.168.1.132, а также записи для широковещательной (MAC-адрес равен ff-ff-ff-ff-ff-ff) и групповых рассылок (MAC-адрес начинается с 01-00-5e ).
МАС-адрес групповой рассылки всегда начинается с префикса, состоящего из 24 битов — 01-00-5Е. Следующий, 25-й бит равен 0. Последние 23 бита МАС-адреса формируются из 23 младших битов группового IP-адреса.

Источник

[в закладки] Шпаргалка системного администратора по сетевым инструментам Linux

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

buefv2vz0npbynfhwvqrh13p4ug

▍Примеры

Ping, кроме того, можно использовать для выяснения IP-адресов сайтов на основе их имён. Вот как это выглядит.

image loader
Использование ping для выяснения IP-адреса сайта по его имени

Traceroute

▍Пример

Telnet

Утилита telnet позволяет связаться с удалённым компьютером по протоколу Telnet и взаимодействовать с ним, используя соответствующие команды.

▍Пример

Для организации сеанса Telnet-связи с другим компьютером используется следующая команда:

Netstat

Эта команда позволяет собирать сведения о сети и используется в ходе поиска и исправления сетевых неполадок, применяется для проверки данных о работе интерфейсов и портов, для исследования таблиц маршрутизации, для изучения информации о работе протоколов. Эта команда непременно должна присутствовать в арсенале системного администратора.

▍Примеры

Для того чтобы получить список всех портов, находящихся в режиме прослушивания, воспользуйтесь такой командой:

Для просмотра таблиц маршрутизации воспользуйтесь такой командой:

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

image loader
Сведения о таблице маршрутизации

Вот вариант этой команды, выводящий статистику по протоколам:

image loader
Статистика по протоколам

Следующий вариант вызова netstat позволяет узнать сведения об отправленных и полученных пакетах (transmission/receive, TX/RX) по каждому интерфейсу:

image loader
Данные об отправленных и полученных пакетах

Nmcli

Утилита nmcli отлично подходит для управления сетевыми соединениями, для выполнения настроек и для решения других подобных задач. С её помощью можно управлять программой NetworkManager и модифицировать сетевые параметры различных устройств.

▍Примеры

Вот как с помощью nmcli вывести список сетевых интерфейсов:

Так можно вывести информацию по конкретному интерфейсу:

Следующий вариант вызова команды позволяет проверить подключение устройства к сети:

image loader
Примеры использования nmcli

Эта команда позволяет отключить заданный интерфейс:

А эта позволяет включить интерфейс:

Вот пример команды, которая добавляет VLAN-интерфейс с заданным VLAN-номером, IP-адресом и шлюзом к указанному интерфейсу:

Маршрутизация

Существует множество команд, которые можно использовать для проверки правил маршрутизации и их настройки. Рассмотрим самые полезные из них.

▍Примеры

Следующая команда показывает все текущие маршруты, настроенные для соответствующих интерфейсов:

image loader
Маршруты, настроенные для интерфейсов

Эта команда позволяет добавить в таблицу маршрутизации шлюз, используемый по умолчанию:

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

С помощью такой команды можно удалить запись о заданном маршруте из таблицы маршрутизации:

image loader
Использование команды route

Вот команда, которая применяется для вывода текущей таблицы соседей. Кроме того, её можно использовать для добавления, изменения или удаления сведений о соседях:

Взглянем на примеры её использования.

image loader
Данные, полученные с помощью команды ip neighbor

Вот сведения о команде ip neigh

image loader
Сведения о команде ip neigh

Вот пример её вызова.

image loader
Вызов команды arp

Tcpdump и Wireshark

▍Примеры

Такая команда показывает, в режиме реального времени, пакеты с заданного интерфейса:

image loader
Использование tcpdump

Следующий вариант команды используется для захвата пакетов, приходящих с заданного IP системы-источника:

Так можно захватить пакеты, идущие на заданный адрес системы-приёмника:

Вот пример использования tcpdump для захвата пакетов для заданного номера порта, например, это может быть порт 53, 80, 8080, и так далее:

Здесь показано, как с помощью tcpdump захватывать пакеты заданного протокола, вроде TCP, UDP или других:

Iptables

Утилита iptables похожа на файрвол, она поддерживает фильтрацию пакетов, что позволяет управлять трафиком, пропуская или блокируя его. Диапазон возможностей этой утилиты огромен. Рассмотрим несколько наиболее распространённых вариантов её использования.

▍Примеры

Следующая команда позволяет вывести все существующие правила iptables :

Эта команда удаляет все существующие правила:

Следующие команды разрешают прохождение трафика с заданного номера порта к заданному интерфейсу:

Следующие команды разрешают loopback-доступ к системе:

Nslookup

Инструмент nslookup используется для получения сведений о назначении IP-адресов сетевым ресурсам. Его можно использовать и для получения сведений с DNS-серверов, например таких, как все DNS-записи для некоего веб-сайта (ниже мы рассмотрим соответствующий пример). На nslookup похожа утилита dig (Domain Information Groper).

▍Примеры

Следующая команда выводит IP-адреса вашего DNS-сервера в поле Server, и, ниже, выдаёт IP-адрес искомого сайта:

Такая команда показывает все доступные записи для заданного веб-сайта или домена:

Поиск неполадок

Вот набор команд и список важных файлов, используемых для идентификации сетевых неполадок.

▍Примеры

Итоги

В этой небольшой шпаргалке мы рассказали о сетевых инструментах Linux, предназначенных для системных администраторов. Надеемся, вам эти инструменты пригодятся.

Уважаемые читатели! Чем вы пользуетесь для администрирования сетей и для выяснения причин сетевых неполадок?

Источник

Команда arp в Linux с примерами

Команда arp управляет системным ARP-кэшем. Это также позволяет полный дамп кэша ARP. ARP обозначает протокол разрешения адресов. Основной функцией этого протокола является преобразование IP-адреса системы в ее mac-адрес, и, следовательно, он работает между уровнем 2 (уровень канала передачи данных) и уровнем 3 (уровень сети).

Синтаксис:

Пример: Здесь мы создали две машины с именем machine1 и machine2 с IP — адресом 10.0.2.4 и 10.0.2.5

itnteseraditpa741797

tusigdememilty457005

tecamorifico476507

tranlitesdocelca302721

Параметры:

lendicophostipa95544

bandomodideso20628

turkputdeocidigfi656937

Примечание. Это должно отличаться от интерфейса, на который будут перенаправляться дейтаграммы IP.

heyzamegimecall962781

unpherritidemo468461

Некоторые полезные флаги:

Некоторые полезные файлы, связанные с этими данными:

Источник

🐧 Как использовать команду arping на Linux

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

ARP – это протокол, который устройства уровня 2 реализуют для обнаружения и связи друг с другом.

Инструмент arping работает по этому протоколу.

Что делает инструмент arping?

Представьте, что вы работаете с небольшой офисной сетью.

Очень заманчиво использовать классическую команду ping для проверки связи с хостами, не так ли?

Что ж, если вы используете протокол ICMP, то вы фактически выполняете запросы ARP для проверки устройств в сети.

Здесь на помощь приходит инструмент arping.

Как и ping, arping проверяет сетевые хосты с помощью пакетов ARP сетевого уровня.

Этот метод полезен для хостов, которые не отвечают на запросы проверки связи уровня 3 и уровня 4.

В этой статье показано, как использовать команду arping на Linux.

Arping на Linux

Среди сетевых администраторов популярным инструментом является арпинг.

Однако он не входит в стандартный набор инструментов, предлагаемый Linux.

Итак, вам придется устанавливать arping вручную.

Независимо от того, какой дистрибутив вы используете, он должен быть доступен непосредственно с официальных серверов распространения пакетов.

Выполните следующую команду в соответствии с вашим дистрибутивом.

Для Debian/Ubuntu и производных для инструмента arp необходим пакет net-tools:

Использование arping

Обнаружение хостов

Если через Ethernet подключено несколько устройств, то в системах уже есть внутренняя таблица ARP для связи по сети.

Вы можете использовать arping для вывода списка записей в вашей сети.

Для этого выполните следующую команду:

Как видите, команда выводит список имен хостов вместе с их IP и MAC-адресами.

Пинг хостов

Если вам известен IP-адрес целевого устройства, вы можете просто передать его в arping для выполнения ARP ping.

Если появляется сообщение:

Явно укажите сетевой интерфейс как показано на скриншоте:

arping

Arping также позволяет вам определить, сколько раз нужно проверять связь с целевым устройством.

Для этого используйте флаг «-c», за которым следует количество выполненных эхо-запросов.

Один быстрый совет: если обнаружено новое устройство, вы должны выполнить следующую команду, чтобы обновить таблицу ARP:

ARP Timeout

Если arping не может определить IP-адрес цели, это вызовет тайм-аут ARP.

Чтобы продемонстрировать, выполните следующую команду.:

IP-адрес должен быть недоступным.

Как указать исходный IP-адрес

Еще одна интересная особенность arping – это возможность вручную определять IP-адрес источника.

Однако у этого метода есть свои проблемы.

Как только arping пингует устройство, устройство ответит на IP-адрес, который вы указали вручную.

Без владения этим IP-адресом arping не получит ответов.

Чтобы определить исходный IP-адрес вручную, используйте флаг «-S».

Справка по команде arping

Например, arping предлагает страницу быстрой справки для документации на лету:

arping 1

Заключение

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

Источник

The arping command is a command-line tool used in the Linux operating system to discover and detect hosts on the network. The arping uses the ARP protocol in order to ping hosts with the Layer 2 ARP requests. The ARP protocol is used to resolve IP addresses to the MAC addresses in order to communicate inside a LAN. The arping will try to resolve all network addresses into the MAC addresses and the hosts will provide the ARP reply for the ARP request with their MAC addresses. The arping name consists of arp+ing where the arp refers to the ARP protocol and ing or ping refers to the ping command.

Install arping on Ubuntu, Debian, Kali, Mint

The arping command can be installed on deb-based distributions like Ubuntu, Debian, Kali, and Mint. The package name is the same as the command arping.

$ sudo apt install arping
Install arping on Ubuntu, Debian, Kali, Mint

Install arping on CentOS, Fedora, RHEL

The arping command also provided by the rpm based distributions like CentOS, Fedora, RHEL etc. The following command will install the arping for CentOS, Fedora, RHEL.

$ sudo yum install arping

Display arping Command Version

After installing the arping command we can check the installation and its version without providing any option. This will list the version of the arping command and supported options in short form.

$ arping
Display arping Options and Version

We can see from the output that the current arping command version is 2.20. As a basic and Mac-related tool, the arping command does not update regularly.

Display arping Help Information

Detailed help information and support options can be listed with the –help option. This will list all provided options and their descriptions like below.

$ arping --help
Display arping Help Information

List Current ARP Table

Linux stores the IP address and MAC address records in a table named ARP table. ARP table is created with the ARP request responses and these table records are stored temporarily to get recent updates and prevent errors. The current ARP table and its records can be listed with the arp command like below. We will also provide the -a option to list all records.

$ arp -a

The output will be like below.

? (192.168.142.130) at 00:0c:29:dc:62:6a [ether] on ens33
? (192.168.142.254) at 00:50:56:eb:7a:b6 [ether] on ens33
_gateway (192.168.142.2) at 00:50:56:ec:77:85 [ether] on ens33

Discover/Scan Hosts with ARP Protocol

The arping command can ping an IP address via the ARP protocol with the MAC address. But the IP address scan is provided like below. This will ping the target IP address continuously. As the arping command uses the low-level network protocol stack like creating ARP packets etc. it requires root or administrative privileges. These root privileges can be provided with the sudo command or running the arping command in the root user session.

$ sudo arping 192.168.142.2

The output will be like below. From the output, we can see that the ARP packet number is provided with the index=0. Also, the RTT or round trip time for the current ping is provided with the time= information. Every arp ping provides the remote IP address MAC address.

ARPING 192.168.142.2
60 bytes from 00:50:56:ec:77:85 (192.168.142.2): index=0 time=151.514 usec
60 bytes from 00:50:56:ec:77:85 (192.168.142.2): index=1 time=154.069 usec
60 bytes from 00:50:56:ec:77:85 (192.168.142.2): index=2 time=162.203 usec
60 bytes from 00:50:56:ec:77:85 (192.168.142.2): index=3 time=243.078 usec
60 bytes from 00:50:56:ec:77:85 (192.168.142.2): index=4 time=193.959 usec
60 bytes from 00:50:56:ec:77:85 (192.168.142.2): index=5 time=130.805 usec
^C
--- 192.168.142.2 statistics ---
6 packets transmitted, 6 packets received, 0% unanswered (0 extra)
rtt min/avg/max/std-dev = 0.131/0.173/0.243/0.037 ms

The ping will run continuously and can be stopped with the CTRL+c keys. After the ping stopped some basic statistics about the arping will be displayed.

  • 6 packets transmitted describes total transmitted ARP packets to the target.
  • 6 packets received describes total received packets against transmitted packets.
  • 0% unanswered describes unanswered packets.
  • min is the minimum transmission time.
  • avg is the average transmission time.
  • max is the maximum transmission time.

Set Ping Packet Count

By default the arping command ping the remote target continuously which will run forever unless we stop it or specify a ping packet count. The packet count can be specified with the -c option by providing the number. In the following example, we will set the ARP ping packet count as 5.

$ sudo arping -c 5 192.168.143.2

The command will stop after 5 ping and provide the following output.

ARPING 192.168.142.2
60 bytes from 00:50:56:ec:77:85 (192.168.142.2): index=0 time=1.366 msec
60 bytes from 00:50:56:ec:77:85 (192.168.142.2): index=1 time=178.268 usec
60 bytes from 00:50:56:ec:77:85 (192.168.142.2): index=2 time=128.945 usec
60 bytes from 00:50:56:ec:77:85 (192.168.142.2): index=3 time=210.814 usec
60 bytes from 00:50:56:ec:77:85 (192.168.142.2): index=4 time=10.452 usec
--- 192.168.142.2 statistics ---
5 packets transmitted, 5 packets received, 0% unanswered (0 extra)
rtt min/avg/max/std-dev = 0.010/0.379/1.366/0.498 ms

Specify Target with MAC Address

The arping command can be also used with the MAC address as a target. By default, the IP address is used to specify the target but as standard operation, the IP address is resolved into a MAC address, and all ping packets are sent to the MAC address. So the target can be a MAC address.

$ sudo arping -c 00:50:56:ec:77:85

The output will be as below. Different from the IP address as target the source interface should be devices according to the MAC address and ARP table.

arping: lookup dev: No matching interface found using getifaddrs().
arping: Unable to automatically find interface to use. Is it on the local LAN?
arping: Use -i to manually specify interface. Guessing interface ens33.
ARPING 00:50:56:ec:77:85
60 bytes from 192.168.142.2 (00:50:56:ec:77:85): icmp_seq=0 time=173.855 usec
60 bytes from 192.168.142.2 (00:50:56:ec:77:85): icmp_seq=1 time=76.216 usec
60 bytes from 192.168.142.2 (00:50:56:ec:77:85): icmp_seq=2 time=375.998 usec
60 bytes from 192.168.142.2 (00:50:56:ec:77:85): icmp_seq=3 time=176.120 usec
60 bytes from 192.168.142.2 (00:50:56:ec:77:85): icmp_seq=4 time=324.211 usec
--- 00:50:56:ec:77:85 statistics ---
5 packets transmitted, 5 packets received, 0% unanswered (0 extra)
rtt min/avg/max/std-dev = 0.076/0.225/0.376/0.109 ms

Specify Network Interface

A system may have multiple network interfaces connected to different networks. These interfaces can be an Ethernet Card or Wireless NIC etc. By default, the arping command decides the source interfaces according to the target IP address, MAC address, and ARP table. After this investigation, if there is no reliable information the interface may be guessed. But we can also specify the source interface with the -I option by providing the interface name. So before specifying the source interface listing the current interfaces and their names is a great idea. We can list interfaces with the ip link command like below.

$ ip link
List Network Interface for arping

We can see that there are two interfaces named lo and ens33. the lo interface is the localhost interface and ens33 is an ethernet interface to the LAN. So we will provide the ens33 as the source interface.

$ sudo arping -I ens33 192.168.142.2

Specify Source MAC Address

By default, the arping command uses the default network interface MAC address. The -s option is used to specify the source MAC address.

$ sudo arping -s 01:5e:56:ec:77:34 192.168.142.2

Arping Network Range with Bash Script

As a bash command arping can be used with other bash-related commands and features. The arping can only ping a single IP address at a time but we can create a bash for loop in order to ping multiple IP addresses. The following bash script can be used to ping MAC addresses with the arping command. Every ping result for the IP address will be printed to the terminal.

#!/bin/bash

for num in {1..255}; do
    echo -n “192.168.1.$num “
    arping -c 1 192.168.1.$num | grep “Received Response”
    if [ $? != 0 ]; then
        echo “”
    fi
done

The result is like below.

192.168.1.1 Received Response
192.168.1.2 
192.168.1.3 
192.168.1.4 Received Response
192.168.1.5
192.168.1.6 Received Response
192.168.1.7 Received Response
192.168.1.8
192.168.1.9 Received Response
192.168.1.10
192.168.1.11
...

Обновлено 10.03.2019

Как посмотреть arp таблицу в Windows

Как посмотреть arp таблицу в Windows

Всем привет! Сегодня я расскажу, как посмотреть arp таблицу в Windows. Что такое arp — это протокол распознавания адреса, предназначен для преобразования IP-адресов в MAC-адреса, часто называемые также физическими адресами. Ранее я уже рассказывал, как выглядит arp таблица cisco. Думаю, что многим коллегам, кто только начинает знакомиться с сетевой инфраструктурой данной операционной системы, данная информация окажет хорошее подспорье, для формирования фундамента. Тут главное понимать принцип работы и назначения, все остальное уже нюансы различных вендоров.

Важной особенностью интерфейса Ethernet является то, что каждая интерфейсная карта имеет свой уникальный адрес. Каждому производителю карт выделен свой пул адресов в рамках которого он может выпускать карты. Согласно протоколу Ethernet, каждый интерфейс имеет 6-ти байтовый адрес. Адрес записывается в виде шести групп шестнадцатеричных цифр по две в каждой (шестнадцатеричная записи байта). Первые три байта называются префиксом, и именно они закреплены за производителем. Каждый префикс определяет 224 различных комбинаций, что равно почти 17-ти млн. адресам.

В сетях нет однозначного соответствия между физическим адресом сетевого интерфейса (MAC адресом сетевой карты) и его IP-адресом. Поиск по  IP-адресу соответствующего Ethernet-адреса производится протоколом ARP, функционирующим на уровне доступа к среде передачи. Протокол поддерживает в оперативной памяти динамическую arp-таблицу в целях кэширования полученной информации. Открываем в Windows командную строку.

Как посмотреть arp таблицу

Вводим команду

Где вы слева видите ip адрес, а правее видите Физический адрес (mac адрес). Это и есть arp таблица windows.

Как посмотреть arp таблицу в Windows-2

Как посмотреть arp таблицу в Windows-2

По умолчанию данный кэш живет 300 секунд

очистка arp таблицы

Делается с помощью команды

И видим,произошла очистка arp таблицы

Как посмотреть arp таблицу в Windows-3

Как посмотреть arp таблицу в Windows-3

Как добавить свою запись в 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_MACHINESYSTEMCurrentControlSetServicesTcpipParameters

Тут вам для изменения периода хранения данных в кэше ARP, нужно создать Параметр DWORD, если у вас разрядность системы 32, то создаем 32, если 64, то такой же.

Увеличиваем время жизни arp записи Windows

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

Увеличиваем время жизни arp записи Windows-2

Вот полная справка команды arp

Отображение и изменение таблиц преобразования IP-адресов в физические,
используемые протоколом разрешения адресов (ARP).

ARP -s inet_addr eth_addr [if_addr]
ARP -d inet_addr [if_addr]
ARP -a [inet_addr] [-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 адрес.

Она посылает в сеть широковещательный запрос с поиском RARP сервера и спрашивает у него, какой IP адрес будет ей соответствовать, если у неё вот такой MAC адрес. Это не тоже самое, что DHCP, хотя смысл похожий. Вот так вот просто посмотреть arp таблицу в Windows. Материал сайта pyatilistnik.org

Понравилась статья? Поделить с друзьями:
  • Как проверить активацию офиса на windows 10
  • Как проверить 64 или 32 разрядная windows 10
  • Как проверить активацию windows server 2016
  • Как проверить версию net framework для windows 11
  • Как проверить 32 или 64 битная система на windows xp