В сети массово используются DES-3526/3550.
Packet Content ACL используются для фильтрации "левых" ARP запросов поле source-ip у которых не совпадает с выданным абоненту IP.
К примеру на DES-3526:
Код:
# Фильтруем нежелательные ARP с подмененным source-IP
create access_profile packet_content_mask offset_16-31 0xFFFFFFFF 0xFFFF0000 0x0 0x0 offset_32-47 0xFFFFFFFF 0x0 0x0 0x0 profile_id 19
config access_profile profile_id 19 add access_id 1 packet_content_mask offset_16-31 0x8060001 0x8000000 0x0 0x0 offset_32-47 0xA0A0C02 0x0 0x0 0x0 port 1 permit
# Разрешаем доступ к серверу статистики даже в заблокированном состоянии
create access_profile ip source_ip_mask 255.255.255.255 destination_ip_mask 255.255.255.128 profile_id 20
config access_profile profile_id 20 add access_id 1 ip source_ip 10.10.12.2 destination_ip $billing_server port 1 permit
# Контроль доступа (интернет вкл/выкл)
create access_profile ip source_ip_mask 255.255.255.255 destination_ip_mask 0.0.0.0 profile_id 50
config access_profile profile_id 50 add access_id 1 ip source_ip 10.10.12.2 destination_ip 0.0.0.0 port 1 permit
# Запретить всё что не ARP или IP или не прошедшее проверку правилами выше
create access_profile ethernet source_mac 00-00-00-00-00-00 profile_id 100
config access_profile profile_id 100 add access_id 1 ethernet source_mac 00-00-00-00-00-00 port 1 deny
Результатом является полное игнорирование "неправильных" ARP пакетов:
Код:
May 4 17:41:06: %IP-4-DUPADDR: Duplicate address хх.хх.хх.хх on VlanХХХ, sourced by хххх.хххх.хххх
Что полностью исключает в локальном сегменте проблему "Конфликт IP адреса". Даже если криворукий клиент по личному тугоумию или по злому умыслу присвоит интерфейсу своей железки IP шлюза-по-умолчанию, на работоспособность сегмента это не скажется.
Соответственно, потребовался импорт существующего механизма фильтрации на модель DES-3052.
Насколько я понимаю, в отличии от DES-3526, DES-3052 рассматривает кадры без 802.1q аппендикса, то бишь как есть без дополнительного смещения на 4 байта.
DES-3052:
Код:
# Фильтруем нежелательные ARP с подмененным source-IP
create access_profile packet_content offset_0-15 0x0 0x0 0x0 0xffffffff offset_16-31 0xffff0000 0x0 0x0 0xffffffff profile_id 19
config access_profile profile_id 19 add access_id 1 packet_content offset 12 0x8060001 offset 16 0x8000000 offset 28 0xa0a0c02 port 1 permit
# Разрешаем доступ к серверу статистики даже в заблокированном состоянии
create access_profile ip source_ip 255.255.255.255 destination_ip 255.255.255.128 profile_id 20
config access_profile profile_id 20 add access_id 1 ip source_ip 10.10.12.2 destination_ip $billing_server port 1 permit
# Контроль доступа (интернет вкл/выкл)
create access_profile ip source_ip 255.255.255.255 destination_ip 0.0.0.0 profile_id 50
config access_profile profile_id 50 add access_id 1 ip source_ip 10.10.12.2 destination_ip 0.0.0.0 port 1 permit
# Запретить всё что не ARP или IP или не прошедшее проверку правилами выше
create access_profile ethernet source_mac 00-00-00-00-00-00 profile_id 100
config access_profile profile_id 100 add access_id 1 ethernet source_mac 00-00-00-00-00-00 port 1 deny
Однако же, конструкция показанная выше не работает как надо.
"Левые" ARP пакеты с неправильным source-ip доходят до L3 железки и провоцируют его на ругань типа:
Код:
May 4 17:41:06: %IP-4-DUPADDR: Duplicate address 10.20.39.1 on Vlan239, sourced by 0002.a5c2.ebfa
Код:
Command: show switch
Device Type : DES-3052 Fast Ethernet Switch
MAC Address : 00-21-91-8D-74-9D
IP Address :
VLAN Name : Management
Subnet Mask : 255.255.255.0
Default Gateway :
Boot PROM Version : Build 1.00.B06
Firmware Version : Build 2.00.B27
Hardware Version : A1
System Name :
System Location :
System Contact :
Spanning Tree : Enabled
GVRP : Disabled
IGMP Snooping : Disabled
VLAN trunk : Disabled
802.1x : Disabled
TELNET : Enabled
WEB : Disabled
RMON : Disabled
SSH : Disabled
SSL : Disabled
Clipaging : Enabled
Syslog Global State: Enabled
Dual Image : Supported
Password Encryption Status : Enabled
Вопрос, это я чего то не понимаю или не учёл? Или традиционно есть особенности, о которых я не знаю? =)