kerby2000 Опубликовано 8 июня, 2011 · Жалоба Здравствуйте, Мне надо выдавать IP адрес на основе информации от ДВУХ коммутаторов. Смотрите приложенный файл с топологией. Я использую два коммутатора HP ProCurve 2910 и они сконфигурированы так, чтобы при прохождении через каждый комутатор в DHCP запрос добавлялась опция 82. В документации к коммутатору достаточно странно написано: Note: In networks with multiple relay agents between a client and an Option 82 server, append can be used only if the server supports multiple Option 82 fields in a client request. http://cdn.procurve.com/training/Manuals/2910-MRG-Sept09-W_14_03.pdf Вы бы не могли объяснить, как надо настроить DHCP сервер, чтобы он их понимал? Я использую isc-dhcp-server v4.1.1-P1-15+squeeze2 Я пробовал так, но не работает :) #requests from port-12-2 of the switch class "port-12-2" { match if ( binary-to-ascii (10, 8, "", suffix( option agent.circuit-id, 1)) = "12" and binary-to-ascii (10, 8, "", suffix( option *agent2*.circuit-id, 1)) = "2" ); } # port-12-2 address pool { range 192.168.0.204; allow members of "port-12-2"; } Как различить между первой и второй опцией 82 ? В приложении трейс из wireshark (для просмотра убрать .тхт) Зачем нужно 2 опт82? Клиент однозначно НЕ идентифицируется одним. Смотрите на картинку топологии. Port 1 (SW-A) + Port 11 (SW-C) => Client 1 Port 2 (SW-A) + Port 11 (SW-C) => Client 2 Port 1 (SW-B) + Port 12 (SW-C) => Client 3 Port 2 (SW-B) + Port 12 (SW-C) => Client 4 Заранее благодарю. С уважением, Сергей dhcp3.txt Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
s.lobanov Опубликовано 8 июня, 2011 · Жалоба Чисто с академической точки зрения задача интересная. Но с практической точки зрения настройте dhcp trust где надо и не изобретайте такие костыли Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
kerby2000 Опубликовано 8 июня, 2011 · Жалоба Чисто с академической точки зрения задача интересная. Но с практической точки зрения настройте dhcp trust где надо и не изобретайте такие костыли Почему с чисто академической? Вполне реальное приложение. Наша система состоит из большого количества одинаковых компонентов Меня интересует 0-Configuration всего кроме комутатора верхнего уровня и DHCP сервера. Kак по другому это можно реализовать? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
s.lobanov Опубликовано 8 июня, 2011 · Жалоба В этом случае идентификацию абонента можно производить по опции82 с аксессного коммутатора и номеру влана, т.е. на коммутаторах "верхнего уровня" запихивать каждый порт, куда включается аксессный коммутатор в свой влан. Или вам принципиально, чтобы все были в одном L2-сегменте? С увеличением масштабов сети это может привести к печальным последствиям. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
kerby2000 Опубликовано 8 июня, 2011 · Жалоба В этом случае идентификацию абонента можно производить по опции82 с аксессного коммутатора и номеру влана, т.е. на коммутаторах "верхнего уровня" запихивать каждый порт, куда включается аксессный коммутатор в свой влан. Или вам принципиально, чтобы все были в одном L2-сегменте? С увеличением масштабов сети это может привести к печальным последствиям. Да, для меня важно чтобы они были в одном L2 сегменте. Я в личку скинул нашу топологию. В нашем случае мы не планируем больше 60 машин в верхнем сегменте. Пропускная способность тут тоже не играет большого значения. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
s.lobanov Опубликовано 8 июня, 2011 · Жалоба Схему открыл, ничего не понял :( Если всё-таки надо обрабатывать несколько опций82, то обратитесь к автору этого http://forum.nag.ru/forum/index.php?showtopic=64849 творения, чтобы допилить под эту задачу, ну или сами, если в перле разбираетесь. Но если у вас будет настоящий большой L2, а не pvlan с arp-proxy на точке терминирования, то можете упереться в размер таблицы мак-адресов и производительность cpu "верхних" свитчей(т.к. option82 это софт-фича) Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Ivan_83 Опубликовано 8 июня, 2011 · Жалоба Вы бы не могли объяснить, как надо настроить DHCP сервер, чтобы он их понимал? Надо его запрограммировать :) Доточите под себя перловый скрипт, это самое простое и быстрое решение. Ситуация не стандартная. Ещё убедитесь что у вас клиент не может сам дописывать опции 82, а то их к ряду может получится и три и более. Лучше свести ситуацию к стандартной, по факту можно нарваться на кучу граблей в разном софте. В тч даже в Net::DHCP не отработает правильно, насколько я понял код у него код опции не повторяется, и последняя 82 затрет предыдущие. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
kerby2000 Опубликовано 9 июня, 2011 · Жалоба Вы бы не могли объяснить, как надо настроить DHCP сервер, чтобы он их понимал? Доточите под себя перловый скрипт, это самое простое и быстрое решение. Ситуация не стандартная. Ещё убедитесь что у вас клиент не может сам дописывать опции 82, а то их к ряду может получится и три и более. Лучше свести ситуацию к стандартной, по факту можно нарваться на кучу граблей в разном софте. Понятно, что надо запрограммировать. Буду разбираться. А что в вашем понимании стандартная? Такая система должна быть довольно стандартной для многих систем АСУ, где блоки подключаются по Ethernet и могут быть заменены без дополнительных настроек и танцев с бубном. Как я понял, тут все упирается в DHCP сервер. В них просто такая возможность не предусмотрена. Ладно, буду ковырять DHCP сервер. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Ivan_83 Опубликовано 9 июня, 2011 · Жалоба Насколько я помню RFC касающиеся DHCP, то опции с одинаковым кодом являются продолжением друг друга, те если все не влезло в одну (255 байт) то создаётся ещё одна с таким же кодом. Потому любой коммутатор другого вендора может вполне обоснованно прекратить безобразие и повырезать всё лишнее. Без доп настроек ставится любое не управляемое оборудование :) Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...