faq обучение настройка
Текущее время: Чт апр 25, 2024 08:15

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




Начать новую тему Ответить на тему  [ Сообщений: 31 ]  На страницу 1, 2, 3  След.
Автор Сообщение
 Заголовок сообщения: Вопросы по созданию PCF ACL на DES-3200
СообщениеДобавлено: Вт мар 01, 2011 23:30 
Не в сети

Зарегистрирован: Ср июл 29, 2009 13:26
Сообщений: 544
Откуда: Фурманов
Изучаю этот документ.. К сожалению, не обходится без непоняток..
1. Действует ли для DES-3200 "правило смещения", описанное здесь?
Код:
Т.к внутри свитча пакеты всегда тегированы, вне зависимости от того назначали вы тег или нет, то заполним символами „х“ данные с 12 по 15 байт (в свитче эти байты заполняются информацией о VLAN).

Судя по рис1.

Изображение

оно есть и к тому же занимает еще больше байт, нежели в указанной в " Примеры применения ACL типа Packet Content Filtering." А если обратиться к рис2.

Изображение

то выходит, что этого смещения нет.. :roll:
2. Собственно задача - "перевести на язык DES-3200" вот такой профайл, созданный для DES-3526
Код:
Разрешить определённой паре ip-mac соединения с маршрутизатором

create access_profile packet_content_mask offset_0-15 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF 0x0 offset_16-31 0x0 0x0 0x0 0xFFFF offset_32-47 0xFFFF0000 0x0 0x0 0x0 profile_id 10
config access_profile profile_id 10 add access_id 1 packet_content_mask offset_0-15 0x00020304 0x1EDA0000 0x2101AF10 0x0 offset_16-31 0x0 0x0 0x0 0x00000A00 offset_32-47 0xC4080000 0x0 0x0 0x0 port 1 permit
где src ip = 10.0.196.8, src mac = 00:00:21:01:af:10, dst mac = 00:02:03:04:1e:da.
Как в этом случае должен выглядеть этот ACL для DES-3200?


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Ср мар 02, 2011 11:55 
Не в сети
Сотрудник D-LINK
Сотрудник D-LINK

Зарегистрирован: Чт фев 12, 2009 14:59
Сообщений: 9482
Откуда: Ryazan
1. Никакого смещения нет, так как отсчет начинается прямо с L2, L3 или L4 части самого пакета, а не от начала пакета.
2. А что у Вас не получается? Прошивку лучше использовать не ниже версии 1.42.B001, в ней можно использовать смещение до 80-ти и начать отсчет с L2 части. Т.е. L3 и L4 не использовать, L2 начинается с ethertype.


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Ср мар 02, 2011 12:53 
Не в сети

Зарегистрирован: Ср июл 29, 2009 13:26
Сообщений: 544
Откуда: Фурманов
Denis Evgraphov писал(а):
1. Никакого смещения нет, так как отсчет начинается прямо с L2, L3 или L4 части самого пакета, а не от начала пакета.

Всё понял. Собственно с этим и большей частью остального уже разобрался.
Denis Evgraphov писал(а):
2. А что у Вас не получается? Прошивку лучше использовать не ниже версии 1.42.B001, в ней можно использовать смещение до 80-ти и начать отсчет с L2 части. Т.е. L3 и L4 не использовать, L2 начинается с ethertype.

Прошивка используется именно 1.42.B001. А вот насчет "L3 и L4 не использовать" - это как так?
А каким же образом рулить src и dst IP, src и dst port? Они же находятся именно в L3 и L4.


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Ср мар 02, 2011 13:06 
Не в сети
Сотрудник D-LINK
Сотрудник D-LINK

Зарегистрирован: Чт фев 12, 2009 14:59
Сообщений: 9482
Откуда: Ryazan
Если знаете, где начинаются L3 (сразу после ethertype) и L4 части, то можете отсчитывать от них. Если не знаете, то можете "дотянуться" (в пределах 80 байт) до нужного поля отсчитав его от L2.
Т.е. на самом деле не принципиально в какой части находится анализируемое поле, отсчитывать можно и от начала L2.


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

Зарегистрирован: Ср июл 29, 2009 13:26
Сообщений: 544
Откуда: Фурманов
Denis Evgraphov писал(а):
Если знаете, где начинаются L3 (сразу после ethertype) и L4 части, то можете отсчитывать от них. Если не знаете, то можете "дотянуться" (в пределах 80 байт) до нужного поля отсчитав его от L2.
Т.е. на самом деле не принципиально в какой части находится анализируемое поле, отсчитывать можно и от начала L2.

Вот даже как! Удобно, будем знать.

P.S. Первоначально был очень недоволен существенным отличием конфигурации PCF ACL на DES-3200 от DES-3526, но сейчас мнение кардинально изменилось. На DES-3200 это осуществляется заметно проще и логичнее.


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

Зарегистрирован: Ср июл 29, 2009 13:26
Сообщений: 544
Откуда: Фурманов
А никаких изменений в плане конфигурации PCF в прошивке 1.42.B001 не произошло? Может для неё этот документ уже неактуален?
Не работает почему-то.. :(
В данный момент тестирую такой ACL
Код:
create access_profile  ethernet  destination_mac FF-FF-FF-FF-FF-FF ethernet_type  profile_id 3
config access_profile profile_id 3  add access_id 1  ethernet  destination_mac FF-FF-FF-FF-FF-FF ethernet_type 0x0806    port 1-10 permit
# DHCP
create access_profile  ip  udp src_port_mask 0xFFFF    profile_id 4
config access_profile profile_id 4  add access_id 1  ip  udp src_port 67  port 10 permit
config access_profile profile_id 4  add access_id 2  ip  udp src_port 67  port 1-9 deny
#
create access_profile  ethernet  destination_mac FF-FF-FF-FF-FF-FF  profile_id 6
config access_profile profile_id 6  add access_id 1  ethernet  destination_mac FF-FF-FF-FF-FF-FF  port 1-10 permit
#
create access_profile  packet_content_mask   offset1 l3 8 0xFF  offset2 l3 16 0xFFFF  offset3 l3 18 0xFFFF  offset4 l4 2 0xFFFF  profile_id 8
# доступ к DNS (10.254.213.8 udp port 53)
config access_profile profile_id 8  add access_id 1  packet_content   offset1 0x0011 offset2 0x0afe offset3 0xd508 offset4 0x0035 port 1-9 permit
# доступ к ЛК (10.254.213.2 tcp port 80)
config access_profile profile_id 8  add access_id 2  packet_content   offset1 0x0006 offset2 0x0afe offset3 0xd502 offset4 0x0050 port 1-9 permit
# Разрешить определённой паре ip-mac соединения с маршрутизатором (в примере IP = 10.0.192.52)
create access_profile  packet_content_mask   destination_mac FF-FF-FF-FF-FF-FF  source_mac FF-FF-FF-FF-FF-FF  offset1 l3 12 0xFFFF  offset2 l3 14 0xFFFF  profile_id 10
config access_profile profile_id 10  add access_id 1  packet_content   destination_mac 00-02-A0-2E-88-0A  source_mac 00-1D-72-04-9B-6C  offset1 0x0a00 offset2 0xc034 port 1 permit
# запретить весь IP
create access_profile  ethernet  ethernet_type  profile_id 15
config access_profile profile_id 15  add access_id 1  ethernet  ethernet_type 0x0800    port 1-9 deny
#
disable cpu_interface_filtering

Кроме получения конфигурации от dhcp ничего не функционирует..
Может все-таки есть какой-то "сдвиг" в L3, L4? Или я неверно определяю смещение в них?


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Ср мар 02, 2011 16:49 
Не в сети
Сотрудник D-LINK
Сотрудник D-LINK

Зарегистрирован: Чт фев 12, 2009 14:59
Сообщений: 9482
Откуда: Ryazan
На DES-3200 немного другая логика работы PCF. Этот вопрос уже не раз обсуждался: http://forum.dlink.ru/viewtopic.php?f=2&t=122816


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

Зарегистрирован: Ср июл 29, 2009 13:26
Сообщений: 544
Откуда: Фурманов
Denis Evgraphov писал(а):
На DES-3200 немного другая логика работы PCF. Этот вопрос уже не раз обсуждался: http://forum.dlink.ru/viewtopic.php?f=2&t=122816

Прочел.
Я правильно понимаю, основной момент здесь? -
Denis Evgraphov писал(а):
Профили разделяются на две группы - с offset и без, при наличии притиворечия между группами (пакет попадает под обе группы) приоритетным будет запрещающее правило.

И как логичнее поступить в данном случае? Переписать всё на PCF?


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Ср мар 02, 2011 17:07 
Не в сети
Сотрудник D-LINK
Сотрудник D-LINK

Зарегистрирован: Чт фев 12, 2009 14:59
Сообщений: 9482
Откуда: Ryazan
KovAl59 писал(а):
Я правильно понимаю, основной момент здесь?

Да
KovAl59 писал(а):
И как логичнее поступить в данном случае? Переписать всё на PCF?

Да, и добавлю, что главный момент: переписать на PCF, содержащий offset, пусть даже пустой. По идее количества offset Вам должно хватить.


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Ср мар 02, 2011 17:33 
Не в сети

Зарегистрирован: Ср июл 29, 2009 13:26
Сообщений: 544
Откуда: Фурманов
Denis Evgraphov писал(а):
KovAl59 писал(а):
И как логичнее поступить в данном случае? Переписать всё на PCF?

Да, и добавлю, что главный момент: переписать на PCF, содержащий offset, пусть даже пустой.

Это как? Не понял..
Denis Evgraphov писал(а):
По идее количества offset Вам должно хватить.

Похоже, увы.. Вот попытался переписать на PCF весь ACL
Код:
create access_profile  packet_content_mask   offset1 l2 0 0xFFFF  profile_id 3
config access_profile profile_id 3  add access_id 1  packet_content   offset1 0x0806 port 1-10 permit
create access_profile  packet_content_mask   offset1 l2 0 0xFFFF  profile_id 4
config access_profile profile_id 4  add access_id 1  packet_content   offset1 0x0043 port 10 permit
config access_profile profile_id 4  add access_id 2  packet_content   offset1 0x0043 port 1-9 deny
create access_profile  packet_content_mask   destination_mac FF-FF-FF-FF-FF-FF  profile_id 6
config access_profile profile_id 6  add access_id 1  packet_content   destination_mac FF-FF-FF-FF-FF-FF  port 1-10 permit
create access_profile  packet_content_mask   offset1 l3 8 0xFF  offset2 l3 16 0xFFFF  offset3 l3 18 0xFFFF  offset4 l4 2 0xFFFF  profile_id 8
config access_profile profile_id 8  add access_id 1  packet_content   offset1 0x0011 offset2 0x0afe offset3 0xd508 offset4 0x0035 port 1-9 permit
config access_profile profile_id 8  add access_id 2  packet_content   offset1 0x0006 offset2 0x0afe offset3 0xd502 offset4 0x0050 port 1-9 permit
create access_profile  packet_content_mask   destination_mac FF-FF-FF-FF-FF-FF  source_mac FF-FF-FF-FF-FF-FF  offset1 l3 12 0xFFFF  offset2 l3 14 0xFFFF  profile_id 10
config access_profile profile_id 10  add access_id 1  packet_content   destination_mac 00-02-A1-5E-3D-01  source_mac 00-1D-72-04-9B-6C  offset1 0x0a00 offset2 0xc034 port 1 permit
create access_profile  packet_content_mask   offset1 l3 16 0xFFFF  offset2 l3 18 0xF000  offset3 l4 2 0x8000  profile_id 11
config access_profile profile_id 11  add access_id 1  packet_content   offset1 0x0a00 offset2 0xc000 offset3 0x8000 port 1-9 permit

При попытке добавить в конец create access_profile packet_content_mask offset1 l2 0 0xFFFF profile_id 15, свитч ругается "Device supports only 11 UDF fields!" :cry: А мне бы надо еще один профиль добавить..
Что возможно сделать??


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Ср мар 02, 2011 18:02 
Не в сети
Сотрудник D-LINK
Сотрудник D-LINK

Зарегистрирован: Чт фев 12, 2009 14:59
Сообщений: 9482
Откуда: Ryazan
KovAl59 писал(а):
Это как? Не понял..

Правило должно содержать offset, но при этом этот offset может в реальности ничего не фильтровать, т.е. что-то вроде offset1 l2 0 0x0
KovAl59 писал(а):
Что возможно сделать??

Нужно оптимизировать правила. Можно попробовать объединить 8, 10 и 11 профили анонсировав в них все нужные offset, а уже в самих правилах использовать только те offset, что необходимы с параметром mask.


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Ср мар 02, 2011 19:00 
Не в сети

Зарегистрирован: Ср июл 29, 2009 13:26
Сообщений: 544
Откуда: Фурманов
Denis Evgraphov писал(а):
Правило должно содержать offset, но при этом этот offset может в реальности ничего не фильтровать, т.е. что-то вроде offset1 l2 0 0x0

Так и не смог пока осилить этот постулат.. :( Пример какой-нибудь приведите, пожалуйста.
Denis Evgraphov писал(а):
KovAl59 писал(а):
Что возможно сделать??

Нужно оптимизировать правила. Можно попробовать объединить 8, 10 и 11 профили анонсировав в них все нужные offset, а уже в самих правилах использовать только те offset, что необходимы с параметром mask.

Я правильно понимаю, что в этом случае, анонсировав в "create access_profile..." все "объединённые" offset, в собственно rule могу "закрыть" параметром mask = "0000" те offset, которые в данном правиле НЕ используются?
Т.е. что-то подобное этому
Код:
config access_profile profile_id 8  add access_id 4  packet_content offset1 0x0006 mask 0x0000 offset2 0x0afe mask 0x0000 offset3 0xd502 mask 0x0000 offset4 0x00b8 port 2 deny

Так? В данном случае вписывать значения в закрытые маской offset необязательно?


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Чт мар 03, 2011 13:31 
Не в сети
Сотрудник D-LINK
Сотрудник D-LINK

Зарегистрирован: Чт фев 12, 2009 14:59
Сообщений: 9482
Откуда: Ryazan
KovAl59 писал(а):
Так и не смог пока осилить этот постулат.. :( Пример какой-нибудь приведите, пожалуйста.

Правило должно не просто быть типа PCF, но и содержать offset, то есть:
Код:
create access_profile  packet_content_mask   destination_mac FF-FF-FF-FF-FF-FF  profile_id 6
config access_profile profile_id 6  add access_id 1  packet_content   destination_mac FF-FF-FF-FF-FF-FF  port 1-10 permit

Нужно заменить на:
Код:
create access_profile packet_content_mask destination_mac FF-FF-FF-FF-FF-FF offset1 l2 0 0x0 profile_id 6
config access_profile profile_id 6 add access_id 1 packet_content destination_mac FF-FF-FF-FF-FF-FF offset1 0x0 port 1-10 permit

KovAl59 писал(а):
Так? В данном случае вписывать значения в закрытые маской offset необязательно?

Да, можно как я уже писал в профиле анонсировать больше offset, чем использовать в правиле + применить параметр mask в самом правиле, там где это нужно.


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Чт мар 03, 2011 14:55 
Не в сети

Зарегистрирован: Ср июл 29, 2009 13:26
Сообщений: 544
Откуда: Фурманов
Denis Evgraphov писал(а):
Правило должно не просто быть типа PCF, но и содержать offset, то есть:
Код:
create access_profile  packet_content_mask   destination_mac FF-FF-FF-FF-FF-FF  profile_id 6
config access_profile profile_id 6  add access_id 1  packet_content   destination_mac FF-FF-FF-FF-FF-FF  port 1-10 permit

Нужно заменить на:
Код:
create access_profile packet_content_mask destination_mac FF-FF-FF-FF-FF-FF offset1 l2 0 0x0 profile_id 6
config access_profile profile_id 6 add access_id 1 packet_content destination_mac FF-FF-FF-FF-FF-FF offset1 0x0 port 1-10 permit


Спасибо, теперь понял. Условие, конечно, не из приятных.. И так еле-еле убрался в 10 offset после "модернизации" ACL, этот получится 11-м..
Denis Evgraphov писал(а):
Да, можно как я уже писал в профиле анонсировать больше offset, чем использовать в правиле + применить параметр mask в самом правиле, там где это нужно.

А там, где не требуется проверка, указывать значение и маску надо, или можно просто пропустить эти offset?
Например, как будет правильно? Так -
Код:
create access_profile  packet_content_mask destination_mac FF-FF-FF-FF-FF-FF source_mac FF-FF-FF-FF-FF-FF offset1 l3 8 0xFF offset2 l3 12 0xFFFF offset3 l3 1 4 0xFFFF offset4 l3 16 0xFFFF offset5 l3 18 0xFFFF offset6 l4 2 0xFFFF profile_id 8
# DNS
config access_profile profile_id 8 add access_id auto_assign packet_content destination_mac 00-00-00-00-00-00 mask 00-00-00-00-00-00 source_mac 00-00-00-00-00-00 mask 00-00-00-00-00-00 offset1 0x0011 mask 0x00ff offset2 0x0 mask 0x0 offset3 0x0 mask 0x0 offset4 0x3e21 mask 0xffff offset5 0x3121 mask 0xffff offset6 0x0035 mask 0xffff port 1-9 permit

или так -
Код:
create access_profile  packet_content_mask destination_mac FF-FF-FF-FF-FF-FF source_mac FF-FF-FF-FF-FF-FF offset1 l3 8 0xFF offset2 l3 12 0xFFFF offset3 l3 1 4 0xFFFF offset4 l3 16 0xFFFF offset5 l3 18 0xFFFF offset6 l4 2 0xFFFF profile_id 8
# DNS
config access_profile profile_id 8 add access_id auto_assign packet_content  offset1 0x0011 mask 0x00ff  offset4 0x3e21 mask 0xffff offset5 0x3121 mask 0xffff offset6 0x0035 mask 0xffff port 1-9 permit

Или одинаково верно?


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Чт мар 03, 2011 16:41 
Не в сети
Сотрудник D-LINK
Сотрудник D-LINK

Зарегистрирован: Чт фев 12, 2009 14:59
Сообщений: 9482
Откуда: Ryazan
Можно просто вообще не использовать в правиле объявленный в профиле offset.


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

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


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

Сейчас этот форум просматривают: Google [Bot] и гости: 173


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

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