Имеется D-Link DES-3200-18 rev. A1
Создавая ACL для абонентов, обычно мы применяем ACL конкретно на указанные порты. Если услуга на порте меняется, сносим все ACL и расставляем заного, привязывая к каждому порту.
Решил заморочить ACL с привязкой не к порту а к VLAN, чтобы при смене услуги на порту достаточно было поменять VLAN и применились ACL для того VLAN, который указан на порту.
Получилось так:
DES-3200-18:5#sh conf cur begin "ACL"
Command: show config current_config begin "ACL"
# ACL
#Правило для VLAN'ов, по которым предоставляется PPPoE. Разрешаю PADI/PADO пакеты.
create access_profile ethernet vlan 0xFF ethernet_type profile_id 2
config access_profile profile_id 2 add access_id 1 ethernet vlan v100 ethernet_type 0x8863 port 1-16 permit
config access_profile profile_id 2 add access_id 2 ethernet vlan v100 ethernet_type 0x8864 port 1-16 permit
#Правило для VLAN, по которому гонится SIP - разрешаю всё в 15-ом VLAN'е
create access_profile ethernet vlan 0xFF source_mac 00-00-00-00-00-00 profile_id 3
config access_profile profile_id 3 add access_id 1 ethernet vlan v15 source_mac 00-00-00-00-00-00 port 1-16 permit
#Остальное - блочим нафиг
create access_profile ethernet source_mac 00-00-00-00-00-00 profile_id 512
config access_profile profile_id 512 add access_id 1 ethernet source_mac 00-00-00-00-00-00 port 1-16 deny
disable cpu_interface_filtering
В результате:
Прописал ipif в 15 и в 100 влане на коммутаторе адреса, чтобы потом пробовать их пинговать, и проверять правила.
Если я ставлю на порт 15-й VLAN акцессом, работает всё - пинг идет. Ставлю VLAN 100 - пинги не проходят, арпы блочатся. Все как надо.
Но: ставлю тегом на порт коммутатора сразу оба ВЛАНа, и 15 и 100,
настраиваю SIP шлюз с поддержкой VLAN - 15й ставлю ему на WAN порт, а на 1-й LAN порт пробрасываю в SIP шлюзе 100-й VLAN бриджем (мы так иногда делаем - даем две услуги с одного порта). По итогу и SIP шлюз может пинговать коммутатор в 15м VLAN'е, и ноутбук за шлюзом в 100-м VLAN'е с какого-то перепугу тоже вдруг начинает пинговать коммутатор в 100-м VLAN'е. Будто бы ACL'ам пофиг на то, что ноут находится в 100-м VLAN.
Как вообще это должно работать то? может я маску VLAN'у задал неправильно? Я нигде не нашел в интернете информацию о том, что такое маска VLAN и как её высчитать. Всё облазил - ничё нету.