Dlink
Содержание
Q-in-Q
« role uni » означает, что взаимодействие по этим портам будет осуществляться между пользователем и граничным коммутатором провайдера.
« role nni » означает, что этот порт взаимодействует с сетью провайдера или другим граничным коммутатором.
«vlan_translation» данные правила ассоциирует C-VID с SP-VID.
«missdrop enable» означает, что добавление внешнего тега(SP-VLAN) будет осуществляться только согласно правилам vlan_translation.
«missdrop disable» означает, что добавление внешнего тега(SP-VLAN) будет осуществляться согласно правилам vlan_translation, а к трафику не попавшему под правила vlan_translation будет добавляться внешний тег(SP-VLAN) равный PVID порта, т.е. SP-VID = PVID.
«use_inner_priority enable» означает, что коммутатор будет использовать приоритет 802.1p тега C-VLAN в теге SP-VLAN.
«outer_tpid» означает, что коммутатор будет задавать TPID для внешнего тега(SP-VLAN) равный заданному значению.
Согласно стандарту IEEE 802.1ad TPID равен 0x88A8 для Q-in-Q пакетов. У Cisco TPID равен 0x9100. Сейчас на всех современных коммутаторах можно задать любой TPID для совместимости оборудования разных вендоров, например: можно задать TPID равный 0x8100, как у обычного IEEE 802.1q VLAN, в случае, если необходимо пропустить трафик с двумя тегами через оборудование с поддержкой IEEE 802.1q, но без поддержки Q-in-Q. 
GVRP
Коммутаторы No2 и No3 - Транзитные коммутаторы
enable gvrp config gvrp 27-28 state enable
Коммутатор No4 - Access коммутатор
enable gvrp config gvrp 27 state enable create vlan vlanid 100 advertisement config vlan vlanid 100 add untagged 1 config vlan vlanid 100 add tagged 27
Ключ advertisement при создании вилана говорит коммутатору о том, что этот вилан необходимо анонсировать соседям
Блокировка "DHCP Server" клиентов
Первый вариант:
create access_profile ip udp src_port_mask 0xFFFF profile_id 1 config access_profile profile_id 1 add access_id 1 ip udp src_port 67 port 25-26 permit config access_profile profile_id 1 add access_id 2 ip udp src_port 67 port 1-24 deny
Второй вариант:
config filter dhcp_server ports 1-24 state enable config filter dhcp_server add permit ports 25-26
PPPoE только на Uplink
PPPoE - концентратор подключён к порту 26 коммутатора DES-3526, клиенты подключены к портам 1-25, MAC-адрес концентратора - 00-13-5F-AA-BB-CC.
Примечание: За полным описание протокола PPPoE обращайтесь к RFC 2516.
Настройки DES-3526:
1. Создаём профиль ACL для разрешения PPPoE-пакетов от концентратора клиентам
create access-profile ethernet source_mac FF-FF-FF-FF-FF-FF ethernet_type profile 1
2. Разрешаем PPPoE-session-пакеты от концентратора клиентам
config access-profile 1 add access_id 100 ethernet source_mac 00-13-5F-AA-BB-CC ethernet_type 0x8863 port 26 permit
3. Разрешаем PPPoE-data-пакеты от концентратора клиентам
config access-profile 1 add access_id 200 ethernet source_mac 00-13-5F-AA-BB-CC ethernet_type 0x8864 port 26 permit
4. Создаём профиль ACL для разрешения PPPoE-пакетов от клиентов концентратору или серверу
create access-profile ethernet destination_mac FF-FF-FF-FF-FF-FF ethernet_type profile 2
5. Разрешаем широковещательные PPPoE-session PADI пакеты от клиентов
config access-profile 2 add access_id 100 ethernet destination FF-FF-FF-FF-FF-FF ethernet_type 0x8863 port 1-25 permit
6. Разрешаем PPPoE-session пакеты от клиентов к серверу
config access-profile 2 add access_id 200 ethernet destination 00-13-5F-AA-BB-CC ethernet_type 0x8863 port 1-25 permit
7. Разрешаем PPPoE-session пакеты от клиентов к серверу
config access-profile 2 add access_id 300 ethernet destination 00-13-5F-AA-BB-CC ethernet_type 0x8864 port 1-25 permit
8. Создаём профиль ACL для запрещения всех остальных PPPoE-пакетов
create access-profile ethernet ethernet_type profile 3
9. Запрещаем все остальные PPPoE пакеты
config access-profile 3 add access_id 100 ethernet ethernet_type 0x8863 port 1-26 deny config access-profile 3 add access_id 200 ethernet ethernet_type 0x8864 port 1-26 deny
Фильтры для свичей доступа
Настроить port security, запретив более одного mac адреса на порту (таким образом мы боремся с нежелательной и потенциально опасной ситуацией, когда клиент подключает в сеть провайдера не маршрутизатор, а коммутатор, сливая бродакстовый домен своей домашней сети с бродкастовым доменом провайдера)
config port_security ports 1-8 admin_state enable max_learning_addr 1 lock_address_mode deleteontimeout
Запретить STP на клиентских портах, чтобы пользователи не могли гадить в сеть провайдера BPDU пакетами
config stp version rstp config stp ports 1-8 fbpdu disable state disable
Настроить loopback detection, чтобы 1) глючные сетевые карточки, которые отражают пакеты обратно и 2) пользователи, создавшие в своей квартире кольца на втором уровне не мешали работе сети
enable loopdetect config loopdetect recover_timer 1800 config loopdetect interval 10 config loopdetect ports 1-8 state enable config loopdetect ports 9-10 state disable
Создать acl, который запретит прохождение не PPPoE пакетов в USER vlan'е (блокируем DHCP, IP, ARP и все остальные ненужные протоколы, которые позволят пользователям общаться напрямую между собой, игнорируя PPPoE сервер).
create access_profile ethernet vlan 0xFFF ethernet_type profile_id 1 config access_profile profile_id 1 add access_id 1 ethernet vlan USER ethernet_type 0x8863 port 1-10 permit config access_profile profile_id 1 add access_id 2 ethernet vlan USER ethernet_type 0x8864 port 1-10 permit config access_profile profile_id 1 add access_id 3 ethernet vlan USER port 1-10 deny
Создать ACL, который запретит PPPoE PADO пакеты с клиентских портов (блокируем поддельные PPPoE сервера).
create access_profile packet_content_mask offset1 l2 0 0xFFFF offset2 l3 0 0xFF profile_id 2 config access_profile profile_id 2 add access_id 1 packet_content offset1 0x8863 offset2 0x0007 port 1-8 deny
И, наконец, включить STORM Control для борьбы с бродкастовыми и мультикастовыми флудами. Может показаться, что мы уже решили эту проблему, запретив не PPPoE трафик, однако есть но. В PPPoE первый запрос (на поиск PPPoE сервера) отсылается бродкастом, и если оборудование клиента в силу глюка, вируса или иных причин, посылает такие запросы интенсивно, это вполне может вывести сеть из строя.
config traffic control 1-8 broadcast enable multicast enable action drop threshold 64 countdown 5 time_interval 5
Таким образом, мы решаем многие проблемы, присущие плоской сети -- поддельные DHCP и PPPoE сервера (зачастую многие включают такие вещи ненамеренно, а по не знанию, то есть злого умысла нет, но работать другим клиентам мешают), бродкастовые штормы, глючные сетевые карточки и прочее.