faq обучение настройка
Текущее время: Вс июл 20, 2025 22:11

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 40 ]  На страницу Пред.  1, 2, 3  След.
Автор Сообщение
СообщениеДобавлено: Ср авг 22, 2012 16:11 
Не в сети

Зарегистрирован: Пт янв 29, 2010 22:59
Сообщений: 35
"По просьбе телезрителей" :)

Питаюсь переписать правила ACL PCF на новую ревизию. Пока не получается.

Задача в упрощенном виде следующая.


1. Разрешить пари MAC-IP-ПОРТ.
2. Разрешить правильние ARP ответи с тех-же пар MAC-IP-ПОРТ.

В разрезе по байтам пакета:
1 задача.
MAC источника - с 6 по 11 байт
Тип протокола - 20 и 21 байт
IP источника - с 30 по 33 байт

2 задача
MAC отправителя - с 6 по 11 байт
Тип протокола - 20 и 21 байт
MAC источника в заголовке ARP пакета- с 30 по 35 байт
IP источника - с 36 по 39 байт

На предидущей ревизии все виглядело следующим образом (вместе с PHP кодом):


create access_profile packet_content_mask source_mac FF-FF-FF-FF-FF-FF offset1 l2 0 0xFFFF offset2 l3 8 0xFFFF offset3 l3 10 0xFFFF offset4 l3 12 0xFFFF offset5 l3 14 0xFFFF offset6 l3 16 0xFFFF offset7 l3 18 0xFFFF profile_id 10

$command='config access_profile profile_id 10 add access_id '.$rule_no.' packet_content source_mac '.$mac_original.' mask FF-FF-FF-FF-FF-FF offset1 0x0800 offset2 0x0 mask 0x0 offset3 0x0 mask 0x0 offset4 0x'.substr($ip_hex,0,4).' mask 0xffff offset5 0x'.substr($ip_hex,4,4).' mask 0xffff offset6 0x0 mask 0x0 offset7 0x0 mask 0x0 port '.$port.' permit ';

$command='config access_profile profile_id 10 add access_id '.(1000+$rule_no).' packet_content source_mac '.$mac_original.' mask FF-FF-FF-FF-FF-FF offset1 0x0806 mask 0xffff offset2 0x'.substr($mac,0,4).' mask 0xffff offset3 0x'.substr($mac,4,4).' mask 0xffff offset4 0x'.substr($mac,8,4).' mask 0xffff offset5 0x'.substr($ip_hex,0,4).' mask 0xffff offset6 0x'.substr($ip_hex,4,4).' mask 0xffff offset7 0x0 mask 0x0 port '.$port.' permit ';


Пробуем перейти на новую ревизию (используя http://dlink.ru/ru/faq/62/892.html (если я провильно понял логику)):

1 задача.
MAC источника - с 6 по 11 байт (offset_chunk №№ 2 и 3)
Тип протокола - 20 и 21 байт (offset_chunk №№ 5)
IP источника - с 30 по 33 байт (offset_chunk №№ 8 )

2 задача
MAC отправителя - с 6 по 11 байт (offset_chunk №№ 2 и 3)
Тип протокола - 20 и 21 байт (offset_chunk №№ 5)
MAC источника в заголовке ARP пакета- с 30 по 35 байт (offset_chunk №№ 8 и 9)
IP источника - с 36 по 39 байт (offset_chunk №№ 9 и 10)

Итого мне нужно 7 (семь) offset_chunk что-би ето реализовать. Даже если реализовивать только задачу №2 и не фильтровать MAC отправителя - все равно нужно 5 (пять) offset_chunk. А все есть 4 штуки offset_chunk.

Как жить дальше? Только IMPB+DHCP Snoping?


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Ср авг 22, 2012 16:25 
Не в сети

Зарегистрирован: Пт янв 29, 2010 22:59
Сообщений: 35
Artem Kolpakov писал(а):
Смотрите лучше сразу в сторону IMPB+DHCP Snooping - этот функционал для того и делали.


Там есть вещи, которие мне не нравятся. Я так понимаю, что сначала отрабативает IMPB+DHCP Snooping, а потом уже ACL.
Дело в том, что у меня есть потребность разрешить на всех клиентских портах доступ с IP вида 10.1.0.200-255 к серверу VPN (авторизации и.т.д.) без ограничений по макам. И единственний способ ето сделать при IMPB - использовать DHCP, что не всегда допустимо.

Кроме того, исходя из опита, самий простой способ - самий надежний и ACL PCF представляется именно таким и на протяжении вот уже 6 лет у меня с ним не возникало никаких подводних камней: есть запись - есть доступ, нет записи - нет доступа. А тут появляются дополнительние списки, условия, сервиси и т.д. :(

Но если нет другого способа - то придется использовать IMPB+DHCP Snooping. Жаль конечно.

Но я так понял, что старая ревизия пока еще доступна?


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Ср авг 22, 2012 16:31 
Не в сети

Зарегистрирован: Пт янв 29, 2010 22:59
Сообщений: 35
Я понимаю, что всем не угодишь, но ето уже не первий раз на моей памяти, когда новий дизайн чипа Ваших устройств зарезает на корню все прелесть ACL PCF. Даже мне, простому обивателю понятно, что для фильтровать пакет по 16 байтам учитивая, что только МАС, ІР источника и получателя вместе 20 байт - ето не есть нормально. А есть еще номера протоколов и портов. Кайф ACL PCF состоит в том что в условие фильтра попадают все четире утовня - от Ethernet до полезной нагрузки пакета. Пичалька.


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Вт авг 28, 2012 11:34 
Не в сети

Зарегистрирован: Ср дек 14, 2005 11:50
Сообщений: 38
Откуда: Vladimir
Artem Kolpakov писал(а):
Смотрите лучше сразу в сторону IMPB+DHCP Snooping - этот функционал для того и делали.

Если бы Вы эксплуатировали эти фичи, а не изучали в теории, то поняли бы сколько негатива они, в текущей реализации,
приносят провайдерам. Постоянно блокируются клиенты на пустом месте. Если dhcp-клиент «запомнил» IP из другой сети
и шлет INFO с ним — блок. Поэтому мы используем такую схему:
Код:
# Зашита от ARP спуфинга (клиентские порты)
config arp_spoofing_prevention add gateway_ip 172.20.232.1 gateway_mac 00-1E-49-93-1E-C6 ports 1-24

# 5 Защита от диких DHCP серверов
create access_profile ip udp src_port_mask 0xFFFF profile_id 5
 config access_profile profile_id 5 add access_id 1 ip udp src_port 67 port 1-24 deny

# 6 Разрешаем PPPoE-session пакеты от клиентов к серверу + пакеты RRCP от свичей Compex
create access_profile ethernet ethernet_type destination_mac ff:ff:ff:ff:ff:ff profile_id 6
 config access_profile profile_id 6 add access_id auto_assign ethernet destination 04-4b-80-80-80-04 ethernet_type 0x8863 port 1-24 permit
 config access_profile profile_id 6 add access_id auto_assign ethernet destination 04-4b-80-80-80-04 ethernet_type 0x8864 port 1-24 permit
 config access_profile profile_id 6 add access_id N ethernet destination 00:04:23:bb:ec:d7 ethernet_type 0x8899 port N permit

# 7 Разрешить широковещательный трафик
create access_profile packet_content_mask destination_mac FF-FF-FF-FF-FF-FF offset1 l2 0 0x0 profile_id 7
 config access_profile profile_id 7 add access_id 1 packet_content destination_mac FF-FF-FF-FF-FF-FF offset1 0x0 port 1-28 permit

# 8 Запрещаем PPPoE-session пакеты от других источников + пакеты RRCP на всех портах кроме магистральных
create access_profile ethernet ethernet_type profile_id 8
 config access_profile profile_id 8 add access_id auto_assign ethernet ethernet_type 0x8863 port 1-24 deny
 config access_profile profile_id 8 add access_id auto_assign ethernet ethernet_type 0x8899 port 1-24 deny

# 15 Привязываем MAC+IP источника к порту
create access_profile packet_content_mask source_mac FF-FF-FF-FF-FF-FF offset1 l3 12 0xFFFF offset2 l3 14 0xFFFF profile_id 15
 config access_profile profile_id 15 add access_id 1 packet_content source_mac 6c:f0:49:12:f9:c6 offset1 0xac14 offset2 0x6412 port 1 permit

# 30 запретить всё
create access_profile packet_content_mask offset1 l2 0 0xFFFF profile_id 30
config access_profile profile_id 30 add access_id 1 packet_content offset1 0x0800 port 1-24 deny

Может подскажете как это реализовать на новой ревизии?
Просто уже мозг сломал. Сделали бы что-ли утилиту с человеческим лицом…

_________________
Глубина нашего невежества прямо пропорциональна степени нашей лени...


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Вт авг 28, 2012 11:58 
Не в сети

Зарегистрирован: Пт янв 29, 2010 22:59
Сообщений: 35
Вроде как можно.

Вре задачи кроме
Цитата:
# 15 Привязываем MAC+IP источника к порту

можно реализовать через ethernet или ip ACL.

А #15 в новой ревизии можно (ибо надо ОДНОВРЕМЕННО фильтровать по МАС и ІР - два разних протокола) только через PCF. Итого у нас вместе 10 байт (6 МАС и 4 ІР), и на них нужно offset_chunk №№ 2 и 3 - на МАС и IP источника - offset_chunk №№ 8.

Итого:

Код:
create access_profile profile_id 1 profile_name deny_local packet_content_mask offset_chunk_1 2 0x0000ffff offset_chunk_2 3 0xffffffff offset_chunk_3 8 0xffffffff


Вроде так. На практике не проверял. Не совсем очевидно и понятно, не будет ли конфликт между правилами из PFC и ethernet,ip. Више по тексту товарищ по нещастью описал именно ситуацию с конфликтом и отсутствием его решения.

Но Вам Y0DA, повезло, и мне еще нужно сделать защиту от arp_spoofing, мне еще надо дополнительно пару offset_chunk. А их нету.

P.S. Вдруг пробежала мисль, что можно сделать два profile на ACL с разними номерами offset_chunk. Нельзя -
Код:
Cannot create more than one packet content profile.


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Ср авг 29, 2012 12:54 
Не в сети

Зарегистрирован: Ср июн 16, 2004 16:29
Сообщений: 72
Y0DA писал(а):
Artem Kolpakov писал(а):
Смотрите лучше сразу в сторону IMPB+DHCP Snooping - этот функционал для того и делали.

Если бы Вы эксплуатировали эти фичи, а не изучали в теории, то поняли бы сколько негатива они, в текущей реализации,
приносят провайдерам.


Пользуем ip-mac-port binding + dhcp-relay + Option82 повсеместно на des3526, des3028, des3200 почему-то без негатива.
Все тихо, мирно и спокойно. Ну, разве что, новые DIR615 не хотят после апдауна порта перезапрашивать по dhcp.


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Ср авг 29, 2012 17:53 
Не в сети

Зарегистрирован: Пт янв 29, 2010 22:59
Сообщений: 35
mrl писал(а):
Y0DA писал(а):
Artem Kolpakov писал(а):
Смотрите лучше сразу в сторону IMPB+DHCP Snooping - этот функционал для того и делали.

Если бы Вы эксплуатировали эти фичи, а не изучали в теории, то поняли бы сколько негатива они, в текущей реализации,
приносят провайдерам.


Пользуем ip-mac-port binding + dhcp-relay + Option82 повсеместно на des3526, des3028, des3200 почему-то без негатива.
Все тихо, мирно и спокойно. Ну, разве что, новые DIR615 не хотят после апдауна порта перезапрашивать по dhcp.


Ввстречал мнение, подтвержденное практикой, что если на порту после свича стоит еще активное оборудование (например медиаконвентор или неуправляемий свич), то после перезагрузки свича с IMPB нужно принудительно всем клиентам после активного оборудования заново получить по DHCP адреса IP, т.к. свич уже не "помнит" какие адреса DHCP через него прошли, а линк у клиентов не падал (в отличие от ситуации, когда клиенти включени непосредственно на порт).

А если експлуатировать IMPB реализованное вручную через ACL PCF, то етого еффекта нет.

P.S. Есть, правда, медиаконвентора с функцией (FLP по моему), когда при отсутствии медного линка с одной сторони, отключается линк с другой. Но мотажники очень пугаются таких конвенторов и все норовят приносить их на ремонт. :D


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Чт авг 30, 2012 08:57 
Не в сети

Зарегистрирован: Ср июн 16, 2004 16:29
Сообщений: 72
Да. Есть такая ерунда. К счастью, в моем сферичскомвакууме абоненты не снисходят до каких-то ххххаааабиков 8-)) и сидят на солидных рутерах (линксисах, длинках и тплинках).


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Чт авг 30, 2012 10:13 
Не в сети

Зарегистрирован: Ср дек 14, 2005 11:50
Сообщений: 38
Откуда: Vladimir
Radist013 писал(а):
mrl писал(а):
Y0DA писал(а):
Если бы Вы эксплуатировали эти фичи, а не изучали в теории, то поняли бы сколько негатива они, в текущей реализации,
приносят провайдерам.


Пользуем ip-mac-port binding + dhcp-relay + Option82 повсеместно на des3526, des3028, des3200 почему-то без негатива.
Все тихо, мирно и спокойно. Ну, разве что, новые DIR615 не хотят после апдауна порта перезапрашивать по dhcp.


Ввстречал мнение, подтвержденное практикой, что если на порту после свича стоит еще активное оборудование…


Вот-вот! А у нас, в силу непреодолимых препятствий 70% сети на доступе имеют кучу полууправляемых коммутаторов на портах управляемых D-Link-ов.

Уважаемые представители D-Link! Помогите пожалуйста с переделкой профилей, текущую конфигурацию я привёл.

_________________
Глубина нашего невежества прямо пропорциональна степени нашей лени...


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Чт авг 30, 2012 15:04 
Не в сети
Сотрудник D-LINK
Сотрудник D-LINK

Зарегистрирован: Вт янв 18, 2011 13:29
Сообщений: 8999
Y0DA
При текущей реализации некоторые правила реализовать не выйдет, например ваше
Цитата:
# 30 запретить всё

полностью обрубит весь трафик, т.к. при совпадении в нескольких профилях правило deny будет иметь наивысший приоритет.
Изменение поведения планируется в середине сентября, тогда вполне можно объединить пункты #6 и #8 в один ethernet профиль, #7, #15 #30 - в другой, packet_content_mask.
Правило Deny будет отрабатывать в порядке access_id.
Защиту от сторонних DHCP серверов можно обеспечить функционалом DHCP Server Screening.


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Пн сен 03, 2012 16:02 
Не в сети

Зарегистрирован: Ср дек 14, 2005 11:50
Сообщений: 38
Откуда: Vladimir
Artem Kolpakov писал(а):
Y0DA
При текущей реализации некоторые правила реализовать не выйдет, например ваше
Цитата:
# 30 запретить всё

полностью обрубит весь трафик, т.к. при совпадении в нескольких профилях правило deny будет иметь наивысший приоритет.
Изменение поведения планируется в середине сентября, тогда вполне можно объединить пункты #6 и #8 в один ethernet профиль, #7, #15 #30 - в другой, packet_content_mask.
Правило Deny будет отрабатывать в порядке access_id.
Защиту от сторонних DHCP серверов можно обеспечить функционалом DHCP Server Screening.

Спасибо, будем пристально ждать! 8)

_________________
Глубина нашего невежества прямо пропорциональна степени нашей лени...


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Ср авг 21, 2013 08:53 
Не в сети

Зарегистрирован: Ср дек 14, 2005 11:50
Сообщений: 38
Откуда: Vladimir
Y0DA писал(а):
Artem Kolpakov писал(а):
Y0DA
При текущей реализации некоторые правила реализовать не выйдет, например ваше
Цитата:
# 30 запретить всё

полностью обрубит весь трафик, т.к. при совпадении в нескольких профилях правило deny будет иметь наивысший приоритет.
Изменение поведения планируется в середине сентября, тогда вполне можно объединить пункты #6 и #8 в один ethernet профиль, #7, #15 #30 - в другой, packet_content_mask.
Правило Deny будет отрабатывать в порядке access_id.
Защиту от сторонних DHCP серверов можно обеспечить функционалом DHCP Server Screening.

Спасибо, будем пристально ждать! 8)

Ждать уже, видимо, бесполезно. Лучше отказаться от приобретения 32 серии раз и навсегда. А может даже от коммутаторов D-Link вовсе.

_________________
Глубина нашего невежества прямо пропорциональна степени нашей лени...


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Ср авг 21, 2013 12:37 
Не в сети

Зарегистрирован: Пт янв 29, 2010 22:59
Сообщений: 35
Устал ждать и я. Пришлось перейти на IMPB, немного поменять логику работи.

Но. Свичи 3200-c1 НЕ УМЕЮТ НОРМАЛЬНО работать с DHCP relay. Я имею в виду, что если клиент на порту свича запросил DHCP, то свич все правильно сформирует и отправит запрос на DHCP сервер. Но только в том случае, если свич включен НЕ НА ДРУГОЙ 3200-с1 с включеной функцией dhcp-relay. В противном случае 3200-с1, несмотря на то, что запрос уже не multicast, а unacast, все-равно его перехвативает и ничего путнего из етого не виходит. Другими словами D-Link заставляет нас включать свичи доступа напрямую в свичи агрегации. Хотя последние 10 лет можно било комбинировать. Например свич агрегации ставится на район, а на дом ставится обичний свич доступа и в него включаються такие-же свичи по подездам. И все било ок. А теперь только в свич агрегиции (то-есть не в свич серии 3200-c1 с включенним dhcp-relay. 3200-b1 или 3526 - можно )

Подводя резюме. Переписать старие правила ACL PCF на новую ревизию - нельзя. Есть альтернатива - использовать IMPB+dhcp_snooping+dhcp_relay. Но тогда нужно или менять топологию или использовать в 20% мест либо предидущую ревизию или другие свичи.

Слово в защиту 3200-c1. Тут недавно появилась новая прошивка в глубокой бете на 3200-с1, где можна некоторим портам сказать dhcp trust, и на тех портах свич будет игнорировать все пакети dhcp. То есть вроде как возвращаемся к функциналу прошивки b1 в плане работи с dhcp_relay. Я на один свич залил - вроде пока ок. Там где надо - перехвативает dhcp в multicast и отправляет на сервер. А где надо - игнорирует dhcp в unicast (уже обработание запроси другим свичем). Но на форуме говорят что в новой прошивке поменялась очередность обработки пакетов ACL и DHCP. Я пока разници не заметил. Может нужно больше времени на тест. Пока не рискую обновлять другие свичи.

P.S. Ну не дают расслабится китайци. Вот уже 10 лет как каждий год ми примеряемся к новим граблям. Но возликуйте - скоро грядет IPv6 - там граблей обещают на ^2 больше :)


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Ср авг 21, 2013 12:43 
Не в сети
Сотрудник D-LINK
Сотрудник D-LINK

Зарегистрирован: Вт янв 18, 2011 13:29
Сообщений: 8999
Y0DA писал(а):
Ждать уже, видимо, бесполезно

Чего ждать?
логику работы acl в DES-3200 C1 заменили на привычную еще в 4.32
Radist013 писал(а):
Но только в том случае, если свич включен НЕ НА ДРУГОЙ 3200-с1 с включеной функцией dhcp-relay.

В цепочке коммутаторов dhcp relay на магистральных портах можно отключать, чтобы пакет не релеился повторно


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Ср авг 21, 2013 13:27 
Не в сети

Зарегистрирован: Ср июл 29, 2009 13:26
Сообщений: 544
Откуда: Фурманов
Artem Kolpakov писал(а):
логику работы acl в DES-3200 C1 заменили на привычную еще в 4.32

Может быть есть смысл опубликовать подробное howto (по типу темы с прошивками) и добавлять в него текущие изменения?

Честное слово, я тоже уже запутался, как что работает в ревизии С1, и не только в ACL. C dhcp relay и dhcp local relay тоже всё настолько перепутано, что приходится работать также - только "методом научного тыка"..
И делать это приходится не на стенде, а в продакшен, т.к. немалая часть проблем вылезает только на "живой сети"..


Вернуться наверх
 Профиль  
 
Показать сообщения за:  Сортировать по:  
Начать новую тему Ответить на тему  [ Сообщений: 40 ]  На страницу Пред.  1, 2, 3  След.

Часовой пояс: UTC + 3 часа


Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 145


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB