ARP - Address Resolution Protocol
Address Resolution Protocol (ARP) - это протокол сетевого уровня, используемый для преобразования IP-адресов (IPv4) в MAC-адреса (аппаратные адреса) в локальных сетях Ethernet.
Обзор
ARP является критически важным протоколом для работы IPv4 сетей:
- Преобразование IP-адресов в MAC-адреса
- Кэширование соответствий для уменьшения сетевого трафика
- Динамическое обновление ARP таблицы
- Поддержка статических записей для критической инфраструктуры
- Proxy ARP для межсетевого взаимодействия
Основные задачи ARP:
- Разрешение адресов в локальной сети
- Поддержание ARP кэша
- Обработка ARP запросов и ответов
- Обеспечение связности на канальном уровне
Для IPv6 используется протокол Neighbor Discovery Protocol (NDP), который является частью ICMPv6.
Как работает ARP
- ARP Request: Хост отправляет широковещательный запрос “Кто имеет IP X?”
- ARP Reply: Узел с IP X отвечает своим MAC-адресом
- Кэширование: Оба узла сохраняют соответствие IP-MAC в ARP таблице
- Timeout: Записи стареют и удаляются через определенное время (по умолчанию ~60 секунд)
Типы ARP записей
Dynamic ARP:
- Создаются автоматически при обмене ARP запросами/ответами
- Имеют ограниченное время жизни (TTL)
- Обновляются при использовании
- Удаляются при истечении времени
Static ARP:
- Создаются вручную администратором
- Не истекают автоматически
- Используются для критичных узлов
- Защита от ARP spoofing
- Обозначаются флагом “CM” (Complete, Manual)
Статические ARP записи
Статические ARP записи используются для постоянного связывания IP-адреса с MAC-адресом без автоматического истечения.
Базовая конфигурация
Создание статической ARP записи:
set protocols static arp interface eth0 address 192.0.2.1 mac 01:23:45:67:89:01
commitСинтаксис:
set protocols static arp interface <interface> address <IP> mac <MAC>Параметры:
- interface - сетевой интерфейс (eth0, eth1, bond0 и т.д.)
- address - IPv4 адрес узла
- mac - MAC адрес в формате XX:XX:XX:XX:XX:XX
Множественные статические записи
set protocols static arp interface eth0 address 192.168.1.10 mac 00:11:22:33:44:55
set protocols static arp interface eth0 address 192.168.1.20 mac 00:11:22:33:44:66
set protocols static arp interface eth0 address 192.168.1.30 mac 00:11:22:33:44:77
commitСтатические ARP для разных интерфейсов
set protocols static arp interface eth0 address 192.168.1.1 mac aa:bb:cc:dd:ee:01
set protocols static arp interface eth1 address 10.0.0.1 mac aa:bb:cc:dd:ee:02
set protocols static arp interface eth2 address 172.16.0.1 mac aa:bb:cc:dd:ee:03
commitУдаление статической записи
delete protocols static arp interface eth0 address 192.168.1.10
commitПросмотр ARP таблицы
Показать все ARP записи
show arpПример вывода:
Address HWtype HWaddress Flags Mask Iface
10.1.1.1 ether 00:53:00:de:23:2e C eth1
10.1.1.100 ether 00:53:00:de:23:aa CM eth1
192.168.1.1 ether 52:54:00:12:34:56 C eth0
192.168.1.10 (incomplete) eth0Обозначения флагов:
- C (Complete) - запись полная и валидная
- M (Manual/Permanent) - статическая запись
- P (Published) - proxy ARP запись
- (incomplete) - разрешение адреса не завершено
Показать статические ARP записи
show protocols static arpВыводит только статически настроенные ARP записи:
Address HWtype HWaddress Flags Mask Iface
10.1.1.100 ether 00:53:00:de:23:aa CM eth1
192.168.1.10 ether 00:11:22:33:44:55 CM eth0Показать ARP для конкретного интерфейса
show protocols static arp interface eth1Вывод только для указанного интерфейса:
Address HWtype HWaddress Flags Mask Iface
10.1.1.100 ether 00:53:00:de:23:aa CM eth1Операционные команды
Показать ARP статистику:
show interfaces ethernet eth0 statisticsОчистить динамический ARP кэш (требует operational mode):
reset arp cacheОчистить ARP для конкретного адреса:
reset arp cache address 192.168.1.10Proxy ARP
Proxy ARP позволяет роутеру отвечать на ARP запросы от имени других узлов, которые находятся в другой подсети или недоступны напрямую.
Включение Proxy ARP
Proxy ARP включается на уровне интерфейса:
set interfaces ethernet eth0 ip enable-proxy-arp
commitИспользование Proxy ARP
Сценарий 1: Подсети в одном broadcast домене
Топология:
[Host A: 192.168.1.10/24] --- [VyOS eth0] --- [Host B: 192.168.2.20/24]
Proxy ARPКонфигурация:
set interfaces ethernet eth0 address 192.168.1.1/24
set interfaces ethernet eth0 address 192.168.2.1/24
set interfaces ethernet eth0 ip enable-proxy-arp
commitVyOS будет отвечать на ARP запросы для обеих подсетей, позволяя хостам общаться.
Сценарий 2: Transparent routing
set interfaces ethernet eth0 ip enable-proxy-arp
set interfaces ethernet eth1 ip enable-proxy-arp
commitОтключение Proxy ARP
delete interfaces ethernet eth0 ip enable-proxy-arp
commitПроверка Proxy ARP
Проверить настройку:
show configuration commands | grep proxy-arpПроверить состояние:
show interfaces ethernet eth0ARP Filtering и безопасность
ARP Filtering
ARP filtering помогает предотвратить ARP spoofing атаки путем проверки ARP пакетов.
Включение ARP filtering на интерфейсе (через sysctl):
set interfaces ethernet eth0 ip arp-filter
commitНастройка ARP cache timeout
Изменение времени жизни ARP записей (в секундах):
set system sysctl parameter net.ipv4.neigh.default.gc_stale_time value 3600
commitПараметры ARP кэша:
- gc_stale_time - время до пометки записи как устаревшей (3600 сек = 1 час)
- gc_thresh1 - минимальное количество записей
- gc_thresh2 - порог для сборки мусора
- gc_thresh3 - максимальное количество записей
Ограничение размера ARP таблицы
set system sysctl parameter net.ipv4.neigh.default.gc_thresh1 value 128
set system sysctl parameter net.ipv4.neigh.default.gc_thresh2 value 512
set system sysctl parameter net.ipv4.neigh.default.gc_thresh3 value 1024
commitЗащита от ARP spoofing
Использование статических ARP записей для критичных узлов:
# Gateway
set protocols static arp interface eth0 address 192.168.1.1 mac 00:1a:2b:3c:4d:5e
# DNS серверы
set protocols static arp interface eth0 address 192.168.1.53 mac 00:1a:2b:3c:4d:5f
# Критичные сервера
set protocols static arp interface eth0 address 192.168.1.100 mac 00:1a:2b:3c:4d:60
commitARP announce settings
Контроль поведения ARP announcements:
set system sysctl parameter net.ipv4.conf.all.arp_announce value 2
commitЗначения:
- 0 - использовать любой локальный адрес
- 1 - избегать адресов не из целевой подсети
- 2 - всегда использовать лучший локальный адрес для этой цели
ARP ignore settings
Контроль ответов на ARP запросы:
set system sysctl parameter net.ipv4.conf.all.arp_ignore value 1
commitЗначения:
- 0 - отвечать на любой запрос для любого локального адреса
- 1 - отвечать только если IP адрес запроса настроен на этом интерфейсе
- 2-8 - различные режимы фильтрации
Gratuitous ARP
Gratuitous ARP - это ARP запрос/ответ, отправленный узлом для объявления или обновления своего IP-MAC соответствия без запроса от других узлов.
Использование Gratuitous ARP
Gratuitous ARP используется для:
- Обнаружения дублирования IP адресов
- Обновления ARP кэша на других узлах
- Failover в VRRP/HSRP
- После изменения MAC адреса
- Быстрого обновления таблиц коммутаторов
Отправка Gratuitous ARP
VyOS автоматически отправляет gratuitous ARP при:
- Поднятии интерфейса
- Изменении IP адреса
- VRRP failover
Ручная отправка (через operational mode):
reset arp interface eth0Настройка accept_gratuitous_arp
Принимать gratuitous ARP пакеты:
set system sysctl parameter net.ipv4.conf.all.arp_accept value 1
commitЗначения:
- 0 - не принимать (по умолчанию)
- 1 - создавать новые записи из gratuitous ARP
Примеры конфигурации
Пример 1: Yandex Cloud - Статические ARP для критической инфраструктуры
Сценарий: В Yandex Cloud развернута критическая инфраструктура с VyOS роутером, database сервером и application сервером. Необходимо зафиксировать ARP записи для предотвращения ARP spoofing.
Топология:
[VyOS Router]
|
| eth0: 192.168.10.0/24
|
+--- Database Server: 192.168.10.10
+--- App Server: 192.168.10.20
+--- Backup Server: 192.168.10.30Конфигурация:
# Network interface
set interfaces ethernet eth0 address 192.168.10.1/24
set interfaces ethernet eth0 description 'Internal Infrastructure Network'
# Статические ARP для критических серверов
set protocols static arp interface eth0 address 192.168.10.10 mac 52:54:00:aa:bb:01
set protocols static arp interface eth0 address 192.168.10.20 mac 52:54:00:aa:bb:02
set protocols static arp interface eth0 address 192.168.10.30 mac 52:54:00:aa:bb:03
# ARP security settings
set system sysctl parameter net.ipv4.conf.eth0.arp_announce value 2
set system sysctl parameter net.ipv4.conf.eth0.arp_ignore value 1
# ARP cache limits
set system sysctl parameter net.ipv4.neigh.eth0.gc_stale_time value 7200
commit
saveПроверка:
show protocols static arp
show arpОжидаемый результат:
Address HWtype HWaddress Flags Mask Iface
192.168.10.10 ether 52:54:00:aa:bb:01 CM eth0
192.168.10.20 ether 52:54:00:aa:bb:02 CM eth0
192.168.10.30 ether 52:54:00:aa:bb:03 CM eth0Флаг “CM” подтверждает статические (Manual) записи.
Пример 2: VK Cloud - ARP безопасность в multi-tenant окружении
Сценарий: VK Cloud хостинг с несколькими клиентами на изолированных VLAN. VyOS выступает как edge router с Proxy ARP для обеспечения связности и защиты от ARP атак.
Топология:
[VyOS Edge Router]
|
+------------------+------------------+
| | |
eth0.100 eth0.200 eth0.300
VLAN 100 VLAN 200 VLAN 300
Customer A Customer B Customer C
10.100.0.0/24 10.200.0.0/24 10.300.0.0/24Конфигурация:
# VLAN interfaces
set interfaces ethernet eth0 vif 100 address 10.100.0.1/24
set interfaces ethernet eth0 vif 100 description 'Customer A Network'
set interfaces ethernet eth0 vif 200 address 10.200.0.1/24
set interfaces ethernet eth0 vif 200 description 'Customer B Network'
set interfaces ethernet eth0 vif 300 address 10.300.0.1/24
set interfaces ethernet eth0 vif 300 description 'Customer C Network'
# Proxy ARP для каждого VLAN
set interfaces ethernet eth0 vif 100 ip enable-proxy-arp
set interfaces ethernet eth0 vif 200 ip enable-proxy-arp
set interfaces ethernet eth0 vif 300 ip enable-proxy-arp
# Статические ARP для default gateways (защита от spoofing)
set protocols static arp interface eth0.100 address 10.100.0.254 mac 00:0c:29:aa:00:01
set protocols static arp interface eth0.200 address 10.200.0.254 mac 00:0c:29:aa:00:02
set protocols static arp interface eth0.300 address 10.300.0.254 mac 00:0c:29:aa:00:03
# ARP security на всех интерфейсах
set system sysctl parameter net.ipv4.conf.all.arp_announce value 2
set system sysctl parameter net.ipv4.conf.all.arp_ignore value 1
set system sysctl parameter net.ipv4.conf.all.arp_accept value 0
# Ограничение ARP таблицы для каждого VLAN
set system sysctl parameter net.ipv4.neigh.eth0/100.gc_thresh1 value 64
set system sysctl parameter net.ipv4.neigh.eth0/100.gc_thresh2 value 256
set system sysctl parameter net.ipv4.neigh.eth0/100.gc_thresh3 value 512
set system sysctl parameter net.ipv4.neigh.eth0/200.gc_thresh1 value 64
set system sysctl parameter net.ipv4.neigh.eth0/200.gc_thresh2 value 256
set system sysctl parameter net.ipv4.neigh.eth0/200.gc_thresh3 value 512
set system sysctl parameter net.ipv4.neigh.eth0/300.gc_thresh1 value 64
set system sysctl parameter net.ipv4.neigh.eth0/300.gc_thresh2 value 256
set system sysctl parameter net.ipv4.neigh.eth0/300.gc_thresh3 value 512
# Firewall для изоляции между VLAN
set firewall ipv4 name CUSTOMER-ISOLATION default-action drop
set firewall ipv4 name CUSTOMER-ISOLATION rule 10 action accept
set firewall ipv4 name CUSTOMER-ISOLATION rule 10 state established
set firewall ipv4 name CUSTOMER-ISOLATION rule 10 state related
# Применение firewall
set interfaces ethernet eth0 vif 100 firewall in name CUSTOMER-ISOLATION
set interfaces ethernet eth0 vif 200 firewall in name CUSTOMER-ISOLATION
set interfaces ethernet eth0 vif 300 firewall in name CUSTOMER-ISOLATION
commit
saveПроверка:
show protocols static arp
show arp interface eth0.100
show arp interface eth0.200
show arp interface eth0.300
show interfaces ethernet eth0 vif 100Пример 3: Защита от ARP spoofing на корпоративной сети
Сценарий: Корпоративная сеть с критичными серверами и рабочими станциями. Необходимо защитить ключевую инфраструктуру от ARP spoofing атак.
Конфигурация:
# Критичные сервера - статические ARP
set protocols static arp interface eth1 address 192.168.100.10 mac 00:50:56:aa:bb:10
set protocols static arp interface eth1 address 192.168.100.20 mac 00:50:56:aa:bb:20
set protocols static arp interface eth1 address 192.168.100.30 mac 00:50:56:aa:bb:30
# DNS сервера
set protocols static arp interface eth1 address 192.168.100.53 mac 00:50:56:aa:bb:53
set protocols static arp interface eth1 address 192.168.100.54 mac 00:50:56:aa:bb:54
# Domain controllers
set protocols static arp interface eth1 address 192.168.100.100 mac 00:50:56:aa:bb:c1
set protocols static arp interface eth1 address 192.168.100.101 mac 00:50:56:aa:bb:c2
# ARP security
set system sysctl parameter net.ipv4.conf.eth1.arp_announce value 2
set system sysctl parameter net.ipv4.conf.eth1.arp_ignore value 1
set system sysctl parameter net.ipv4.conf.eth1.arp_accept value 0
# Увеличенное время жизни для статических записей
set system sysctl parameter net.ipv4.neigh.eth1.gc_stale_time value 14400
commit
saveПример 4: Proxy ARP для legacy оборудования
Сценарий: Legacy устройства с фиксированными IP адресами в разных подсетях должны общаться без изменения конфигурации.
Топология:
[Legacy Device A: 10.1.1.100/24] --- [VyOS] --- [Legacy Device B: 10.2.2.200/24]
eth0 eth1
Proxy ARP enabledКонфигурация:
# Interface configuration
set interfaces ethernet eth0 address 10.1.1.1/24
set interfaces ethernet eth0 description 'Legacy Network A'
set interfaces ethernet eth1 address 10.2.2.1/24
set interfaces ethernet eth1 description 'Legacy Network B'
# Enable Proxy ARP
set interfaces ethernet eth0 ip enable-proxy-arp
set interfaces ethernet eth1 ip enable-proxy-arp
# Static routes для обеспечения связности
set protocols static route 10.1.1.0/24 interface eth0
set protocols static route 10.2.2.0/24 interface eth1
# Опционально: статические ARP для legacy устройств
set protocols static arp interface eth0 address 10.1.1.100 mac aa:bb:cc:dd:ee:01
set protocols static arp interface eth1 address 10.2.2.200 mac aa:bb:cc:dd:ee:02
commit
saveПример 5: High-availability с VRRP и Gratuitous ARP
Сценарий: Два VyOS роутера в VRRP кластере. При failover необходимо быстро обновить ARP таблицы клиентов.
Конфигурация (Master):
# VRRP configuration
set high-availability vrrp group LAN vrid 10
set high-availability vrrp group LAN interface eth0
set high-availability vrrp group LAN virtual-address 192.168.1.1/24
set high-availability vrrp group LAN priority 200
# Accept gratuitous ARP для быстрого failover
set system sysctl parameter net.ipv4.conf.eth0.arp_accept value 1
# Статические ARP для критичных серверов
set protocols static arp interface eth0 address 192.168.1.10 mac 00:50:56:11:22:33
set protocols static arp interface eth0 address 192.168.1.20 mac 00:50:56:11:22:44
commit
saveКонфигурация (Backup):
# VRRP configuration
set high-availability vrrp group LAN vrid 10
set high-availability vrrp group LAN interface eth0
set high-availability vrrp group LAN virtual-address 192.168.1.1/24
set high-availability vrrp group LAN priority 100
# Accept gratuitous ARP для быстрого failover
set system sysctl parameter net.ipv4.conf.eth0.arp_accept value 1
# Те же статические ARP записи
set protocols static arp interface eth0 address 192.168.1.10 mac 00:50:56:11:22:33
set protocols static arp interface eth0 address 192.168.1.20 mac 00:50:56:11:22:44
commit
saveПри failover VRRP автоматически отправит gratuitous ARP для виртуального IP 192.168.1.1, обновляя ARP таблицы всех клиентов.
Операционные команды
Просмотр ARP информации
Все ARP записи:
show arpСтатические ARP конфигурация:
show protocols static arpARP для конкретного интерфейса:
show protocols static arp interface eth0ARP записи в табличном формате:
show arp | column -tПоиск конкретного IP:
show arp | grep 192.168.1.10Конфигурационные команды
Показать ARP конфигурацию:
show configuration protocols static arpПоказать всю конфигурацию с ARP:
show configuration commands | grep arpСброс ARP кэша
Очистить весь динамический ARP кэш:
reset arp cacheОчистить для конкретного адреса:
reset arp cache address 192.168.1.10Очистить для интерфейса:
reset arp cache interface eth0Мониторинг ARP
Просмотр ARP статистики интерфейса:
show interfaces ethernet eth0 statisticsНепрерывный мониторинг ARP таблицы:
watch -n 2 show arpDebugging ARP
Включить debug ARP (временно):
monitor protocol arpПросмотр kernel ARP таблицы:
run show arpПроверка ARP через tcpdump:
monitor traffic interface eth0 filter "arp"Устранение неполадок
Проблема: ARP записи не создаются
Симптомы:
- Пинг не проходит
- ARP таблица показывает “(incomplete)”
- Нет связности с узлом в локальной сети
Диагностика:
# Проверить ARP таблицу
show arp
# Проверить интерфейс
show interfaces ethernet eth0
# Проверить связность на L2
monitor traffic interface eth0 filter "arp"Решения:
- Проверить физическое подключение
- Убедиться что интерфейс в состоянии “up”
- Проверить VLAN конфигурацию
- Проверить firewall правила
- Убедиться что целевой узел отвечает на ARP
Проблема: Статическая ARP запись не применяется
Симптомы:
- После commit статическая запись не появляется в ARP таблице
- Динамическая запись переопределяет статическую
Диагностика:
# Проверить конфигурацию
show configuration protocols static arp
# Проверить ARP таблицу
show arp
show protocols static arpРешения:
- Проверить правильность IP и MAC адресов
- Убедиться что интерфейс существует и активен
- Очистить ARP кэш и пересоздать запись:
reset arp cache commit - Проверить синтаксис команды
- Перезагрузить интерфейс:
set interfaces ethernet eth0 disable commit delete interfaces ethernet eth0 disable commit
Проблема: ARP spoofing атака
Симптомы:
- Нестабильная связность
- Трафик перехватывается
- Изменяющиеся MAC адреса для одного IP
- Security alerts от IDS
Диагностика:
# Мониторинг ARP изменений
watch -n 1 show arp
# Проверка дублирующихся IP
show arp | sort -k1 | uniq -d -f1Решения:
- Использовать статические ARP для критичных узлов
- Включить ARP filtering:
set system sysctl parameter net.ipv4.conf.all.arp_ignore value 1 set system sysctl parameter net.ipv4.conf.all.arp_accept value 0 - Настроить port security на коммутаторах
- Использовать DHCP snooping
- Включить Dynamic ARP Inspection (DAI) на коммутаторах
- Мониторить ARP таблицу на аномалии
Проблема: Переполнение ARP таблицы
Симптомы:
- ARP записи не создаются
- Сообщения “Neighbor table overflow”
- Degraded network performance
Диагностика:
# Проверить размер ARP таблицы
show arp | wc -l
# Проверить kernel параметры
show system sysctl | grep neighРешения:
- Увеличить размер ARP таблицы:
set system sysctl parameter net.ipv4.neigh.default.gc_thresh1 value 256 set system sysctl parameter net.ipv4.neigh.default.gc_thresh2 value 1024 set system sysctl parameter net.ipv4.neigh.default.gc_thresh3 value 2048 commit - Уменьшить время жизни записей:
set system sysctl parameter net.ipv4.neigh.default.gc_stale_time value 60 commit - Разбить большие broadcast домены на меньшие VLAN
- Расследовать возможную ARP flood атаку
Проблема: Proxy ARP не работает
Симптомы:
- Узлы в разных подсетях не видят друг друга
- VyOS не отвечает на ARP запросы для других подсетей
Диагностика:
# Проверить настройку Proxy ARP
show configuration interfaces ethernet eth0 | grep proxy
# Мониторить ARP трафик
monitor traffic interface eth0 filter "arp"
# Проверить routing
show ip routeРешения:
- Убедиться что Proxy ARP включен на правильном интерфейсе:
set interfaces ethernet eth0 ip enable-proxy-arp commit - Проверить что маршруты настроены корректно
- Проверить firewall правила
- Убедиться что IP forwarding включен (по умолчанию включен на VyOS)
- Проверить что подсети не overlap
Проблема: Медленное ARP разрешение
Симптомы:
- Задержки при первом соединении
- Таймауты при установке соединения
- Медленный ping первого пакета
Диагностика:
# Проверить ARP timeout
show system sysctl | grep gc_stale
# Тест производительности
ping 192.168.1.10 -c 10Решения:
- Использовать статические ARP для часто используемых узлов
- Увеличить время жизни ARP записей:
set system sysctl parameter net.ipv4.neigh.default.gc_stale_time value 3600 commit - Настроить gratuitous ARP на критичных серверах
- Проверить производительность сети (latency, packet loss)
Лучшие практики
Безопасность
Статические ARP для критичной инфраструктуры
- Default gateway
- DNS сервера
- Domain controllers
- Database сервера
- Management интерфейсы
ARP filtering
set system sysctl parameter net.ipv4.conf.all.arp_ignore value 1 set system sysctl parameter net.ipv4.conf.all.arp_accept value 0 set system sysctl parameter net.ipv4.conf.all.arp_announce value 2Ограничение размера ARP таблицы
- Предотвращение DoS атак
- Защита от ARP table exhaustion
Мониторинг ARP аномалий
- Автоматические алерты на дублирующиеся IP/MAC
- Логирование изменений в ARP таблице
Производительность
Оптимизация ARP timeout
- Баланс между производительностью и нагрузкой
- Для стабильных сетей: увеличить timeout
- Для динамических сетей: уменьшить timeout
Правильный размер ARP таблицы
- gc_thresh1: минимум для предотвращения GC
- gc_thresh2: старт soft GC
- gc_thresh3: максимум, hard limit
Использование Proxy ARP разумно
- Только когда необходимо
- Минимизировать broadcast домены
Документация
Документировать статические ARP
- Вести список всех статических записей
- Указывать причину создания
- Обновлять при изменениях
Naming convention
- Использовать description для интерфейсов
- Комментарии в конфигурации
Мониторинг и обслуживание
Регулярная проверка ARP таблицы
show arp show protocols static arpАвтоматизация мониторинга
- Скрипты для проверки консистентности
- Алерты на изменения критичных записей
Backup конфигурации
- Регулярные бэкапы конфигурации
- Version control для изменений
Тестирование failover
- Проверка VRRP failover с gratuitous ARP
- Тестирование backup маршрутов
Масштабирование
Разделение broadcast доменов
- Использование VLAN
- Уменьшение размера L2 доменов
Иерархическая архитектура
- Core/Distribution/Access модель
- Минимизация ARP трафика между уровнями
IPv6 миграция
- NDP более эффективен чем ARP
- Встроенная защита от spoofing (SEND)
IPv6 и Neighbor Discovery
Для IPv6 сетей ARP заменен на Neighbor Discovery Protocol (NDP), который является частью ICMPv6.
Основные отличия
ARP (IPv4):
- Отдельный протокол
- Broadcast
- Уязвим к spoofing
NDP (IPv6):
- Часть ICMPv6
- Multicast (более эффективно)
- SEND (Secure Neighbor Discovery) для защиты
Статические IPv6 neighbors
Аналог статических ARP для IPv6:
set protocols static neighbor interface eth0 address 2001:db8::10 mac 00:11:22:33:44:55
commitПросмотр IPv6 neighbors
show ipv6 neighborsИнтеграция с другими протоколами
ARP и VRRP/HSRP
При failover VRRP/HSRP автоматически отправляет gratuitous ARP для обновления таблиц клиентов.
Конфигурация для быстрого failover:
set system sysctl parameter net.ipv4.conf.all.arp_accept value 1ARP и DHCP
DHCP сервер может использовать ARP для проверки уникальности IP адресов перед выдачей lease.
ARP и VPN
Для overlay сетей (VXLAN, GRE) ARP проксируется через туннели.
Следующие шаги
- Статическая маршрутизация - настройка статических маршрутов
- OSPF - динамическая маршрутизация для enterprise
- BGP - маршрутизация для подключения к ISP
- Firewall - настройка firewall правил
- VLAN - виртуальные локальные сети