Abram Posted September 18, 2012 Posted September 18, 2012 Пардон, мой выложен немного не там - в соседней теме, где-то на 7 странице. На каждый DHCPDISCOVER дергается база? Ви таки гавагите, будто это что-то плохое. Да. Запросы там простые, как два пальца об асфальт, разницы в нагрузке (около 2к юзеров на сервер) я не заметил. А документация? Насчет моего - там есть краткий ридми, как его завести, коли непонятно чего - спрашивайте.
Abram Posted September 18, 2012 Posted September 18, 2012 Кстати, совсем забыл - там же, на 7 странице, есть еще и третий сервер от gibbon.
Gang Posted September 18, 2012 Posted September 18, 2012 Пардон, мой выложен немного не там - в соседней теме, где-то на 7 странице. На каждый DHCPDISCOVER дергается база? Ви таки гавагите, будто это что-то плохое. Да. Запросы там простые, как два пальца об асфальт, разницы в нагрузке (около 2к юзеров на сервер) я не заметил. Я вижу сие только как отдельный промежуточный слой между юзером и базой биллинга, который "кешируется" и обновляется по чейнж ивентам из биллинга. Ибо не у всех в биллинге простая логика БД, а каждый раз дергать ее тяжелыми запросами со множеством джойнов - не комильфо. Плюс если крутить к аппаратным брасам, то нужен еще и радиус, что делает все очень громоздким
Abram Posted September 18, 2012 Posted September 18, 2012 Пардон, мой выложен немного не там - в соседней теме, где-то на 7 странице. На каждый DHCPDISCOVER дергается база? Ви таки гавагите, будто это что-то плохое. Да. Запросы там простые, как два пальца об асфальт, разницы в нагрузке (около 2к юзеров на сервер) я не заметил. Я вижу сие только как отдельный промежуточный слой между юзером и базой биллинга, который "кешируется" и обновляется по чейнж ивентам из биллинга. Ибо не у всех в биллинге простая логика БД, а каждый раз дергать ее тяжелыми запросами со множеством джойнов - не комильфо. Плюс если крутить к аппаратным брасам, то нужен еще и радиус, что делает все очень громоздким У dhcp-сервера своя база. Я её просто из биллинга наполняю.
madf Posted September 18, 2012 Posted September 18, 2012 Пардон, мой выложен немного не там - в соседней теме, где-то на 7 странице. На каждый DHCPDISCOVER дергается база? Ви таки гавагите, будто это что-то плохое. Да. Запросы там простые, как два пальца об асфальт, разницы в нагрузке (около 2к юзеров на сервер) я не заметил. Я вижу сие только как отдельный промежуточный слой между юзером и базой биллинга, который "кешируется" и обновляется по чейнж ивентам из биллинга. Ибо не у всех в биллинге простая логика БД, а каждый раз дергать ее тяжелыми запросами со множеством джойнов - не комильфо. Плюс если крутить к аппаратным брасам, то нужен еще и радиус, что делает все очень громоздким У dhcp-сервера своя база. Я её просто из биллинга наполняю. Тогда что мешает так-же наполнять файл leases для ISC DHCPd?
Gang Posted September 18, 2012 Posted September 18, 2012 Пардон, мой выложен немного не там - в соседней теме, где-то на 7 странице. На каждый DHCPDISCOVER дергается база? Ви таки гавагите, будто это что-то плохое. Да. Запросы там простые, как два пальца об асфальт, разницы в нагрузке (около 2к юзеров на сервер) я не заметил. Я вижу сие только как отдельный промежуточный слой между юзером и базой биллинга, который "кешируется" и обновляется по чейнж ивентам из биллинга. Ибо не у всех в биллинге простая логика БД, а каждый раз дергать ее тяжелыми запросами со множеством джойнов - не комильфо. Плюс если крутить к аппаратным брасам, то нужен еще и радиус, что делает все очень громоздким У dhcp-сервера своя база. Я её просто из биллинга наполняю. Тогда что мешает так-же наполнять файл leases для ISC DHCPd? Единственный плюс - что не нужно рестартить.
ser Posted September 18, 2012 Posted September 18, 2012 На наге есть два DHCP сервера. Скелет (без логики, свою логику надо дописывать) от Ivan_83 и готовый (ставь и пользуйся) мой. Написаны специально, чтобы избежать костылей с isc dhcpd. от ивана я пробовал ... чуть не то . это чисто dhcp+mysql (что с опцией что без нее...) а по поводу костелей в isc ? не понял что вы имеете ввиду. он штатно работате с опцией82
KaYot Posted September 18, 2012 Posted September 18, 2012 На наге есть два DHCP сервера. Скелет (без логики, свою логику надо дописывать) от Ivan_83 и готовый (ставь и пользуйся) мой. Написаны специально, чтобы избежать костылей с isc dhcpd. а по поводу костелей в isc ? не понял что вы имеете ввиду. он штатно работате с опцией82 Работает, но получается как раз эта тема - проблемы с лизами при перетыкании
ser Posted September 18, 2012 Posted September 18, 2012 На наге есть два DHCP сервера. Скелет (без логики, свою логику надо дописывать) от Ivan_83 и готовый (ставь и пользуйся) мой. Написаны специально, чтобы избежать костылей с isc dhcpd. а по поводу костелей в isc ? не понял что вы имеете ввиду. он штатно работате с опцией82 Работает, но получается как раз эта тема - проблемы с лизами при перетыкании по поводу лиз - пач от dd - и все становится гуд конечно кошернее в мускуле или посгресе - но и там свои недостатки.
Abram Posted September 18, 2012 Posted September 18, 2012 У dhcp-сервера своя база. Я её просто из биллинга наполняю. Тогда что мешает так-же наполнять файл leases для ISC DHCPd? Я немного приврал, у меня другая логика работы. У меня база dhcp наполняется сама, а потом привязывается к учеткам в биллинге - вручную либо через страницу авторизации пользователя. В любом случае, с базой работать приятней - например, в биллинге и CRM есть зеленая/красная лампочка - получил клиент адрес или нет (для саппорта). Вот так оно у меня выглядит (см. 'DHCP отримано'): С ISC такого не сделаешь . На наге есть два DHCP сервера. Скелет (без логики, свою логику надо дописывать) от Ivan_83 и готовый (ставь и пользуйся) мой. Написаны специально, чтобы избежать костылей с isc dhcpd. от ивана я пробовал ... чуть не то . это чисто dhcp+mysql (что с опцией что без нее...) а по поводу костелей в isc ? не понял что вы имеете ввиду. он штатно работате с опцией82 Штатно - это когда if-ы для каждого клиента в конфиге? Просто обожаю вот такие конструкции: match if binary-to-ascii(16, 8, "-", suffix(option agent.remote-id, 5)) = "af:f7:c9:31:59" and binary-to-ascii(10, 8, "", suffix(option agent.circuit-id, 1)) = "1"; Или вот мне вообще нравится то, что для isc нужно задать хотя бы один пул интерфейс (можно даже пустой) - иначе он вообще не запустится.
ser Posted September 18, 2012 Posted September 18, 2012 У dhcp-сервера своя база. Я её просто из биллинга наполняю. Тогда что мешает так-же наполнять файл leases для ISC DHCPd? Я немного приврал, у меня другая логика работы. У меня база dhcp наполняется сама, а потом привязывается к учеткам в биллинге - вручную либо через страницу авторизации пользователя. В любом случае, с базой работать приятней - например, в биллинге и CRM есть зеленая/красная лампочка - получил клиент адрес или нет (для саппорта). Вот так оно у меня выглядит (см. 'DHCP отримано'): С ISC такого не сделаешь . На наге есть два DHCP сервера. Скелет (без логики, свою логику надо дописывать) от Ivan_83 и готовый (ставь и пользуйся) мой. Написаны специально, чтобы избежать костылей с isc dhcpd. от ивана я пробовал ... чуть не то . это чисто dhcp+mysql (что с опцией что без нее...) а по поводу костелей в isc ? не понял что вы имеете ввиду. он штатно работате с опцией82 Штатно - это когда if-ы для каждого клиента в конфиге? Просто обожаю вот такие конструкции: match if binary-to-ascii(16, 8, "-", suffix(option agent.remote-id, 5)) = "af:f7:c9:31:59" and binary-to-ascii(10, 8, "", suffix(option agent.circuit-id, 1)) = "1"; Или вот мне вообще нравится то, что для isc нужно задать хотя бы один пул интерфейс (можно даже пустой) - иначе он вообще не запустится. а че на конструкции смотреть то ... они то скриптом генерируются....сами . а кто вам сказал что нельзя сделать писал тезка для своей сети ( поделился)
Abram Posted September 18, 2012 Posted September 18, 2012 писал тезка для своей сети ( поделился) Красиво, согласен. Я у Вас идею скомунизжу - буду и у себя hostname показывать . Насчет можно/нельзя - конечно, можно, но как-то это кривовато, как по мне - файл разбирать.
madf Posted September 18, 2012 Posted September 18, 2012 ... У dhcp-сервера своя база. Я её просто из биллинга наполняю. Тогда что мешает так-же наполнять файл leases для ISC DHCPd? Единственный плюс - что не нужно рестартить. Ее можно наполнять и без рестарта, по OMAPI.
madf Posted September 18, 2012 Posted September 18, 2012 писал тезка для своей сети ( поделился) Красиво, согласен. Я у Вас идею скомунизжу - буду и у себя hostname показывать . Насчет можно/нельзя - конечно, можно, но как-то это кривовато, как по мне - файл разбирать. Можно не разбирать.
Abram Posted September 18, 2012 Posted September 18, 2012 Можно не разбирать. Ага, вижу, по OMAPI же. Прикольно.
Gang Posted September 18, 2012 Posted September 18, 2012 Ее можно наполнять и без рестарта, по OMAPI. Да-да, давно хотел попробовать, но так себя и не заставил
madf Posted September 18, 2012 Posted September 18, 2012 Ее можно наполнять и без рестарта, по OMAPI. Да-да, давно хотел попробовать, но так себя и не заставил У OMAPI странноватая логика, но он работает. Я на прошлой работе заимплементил наполнение базы лизов и получение информации о лизах с помощью этого протокола. Там, правда, сложности с получением информации об Option82 были, но я написал патчи и все заработало замечательно. Печалит другое - ISC собирается выпилить поддержку этого протокола из своих продуктов.
ser Posted September 18, 2012 Posted September 18, 2012 OMAPI ... ну если только читать инфу о лизах или выдавать абонам из пула то можно syslog-ng+mysql+пару тригеров прикрутить - но опять же не то... хочется полноценной поддержки баз . (из того что пробовал - ничего не подошло - по разным причинам) з.ы. В описании пулов между ";" и "}" пропущен пробел. Порасставляй пробелы и будет тебе счастье. уважаемый если потрудитесь почитать маны то осчасливете все человечество. или тут принято писать полный бред?
muff Posted September 20, 2012 Posted September 20, 2012 OMAPI ... ну если только читать инфу о лизах или выдавать абонам из пула то можно syslog-ng+mysql+пару тригеров прикрутить - но опять же не то... хочется полноценной поддержки баз . (из того что пробовал - ничего не подошло - по разным причинам) з.ы. В описании пулов между ";" и "}" пропущен пробел. Порасставляй пробелы и будет тебе счастье. уважаемый если потрудитесь почитать маны то осчасливете все человечество. или тут принято писать полный бред? Факт остается фактом... При pool { range 10.0.0.101; allow members of "sw170-1";} в логе имеем DHCPDISCOVER from 00:17:31:db:cf:a2 via em1: network test: no free leases DHCPDISCOVER from 00:17:31:db:cf:a2 via 10.0.0.250: network test: no free leases При pool { range 10.0.0.101; allow members of "sw170-1"; } все корретно работает. Сам когда-то "наступил" на эти грабли. Неделю курил маны, модифицировал все что возможно... А потом поставил пробелы - и все сразу заработало.
ser Posted September 20, 2012 Posted September 20, 2012 ну кончено .... только вас не смущает то что я выложил полностью рабочий конфиг ( часть его ) и сервера который в продакшен стои? это раз. второе: при не верном синтаксисе isc при старте будет ругатся и не стартанет. третье: DHCPDISCOVER from 00:17:31:db:cf:a2 via 10.0.0.250: network test: no free leases откройте ман и почитайте что это значит. ; = конец строки } = конец блока ;} что ; } или ; } или ; } роли не играет для експересмента не поставтье ; или } в любой строке или allow members замените на allowmembers и рестартание isc получится запустить?
muff Posted September 20, 2012 Posted September 20, 2012 Согласен, при неверном синтаксисе ISC при запуске вылетает, указывая на номер строки, где допущена ошибка. Однако, в моем случае, при слитном ;} айпишник не выдается (в логах - no free leases), а если разделить пробелом - то все корректно работает. Софт: FreeBSD 9.0, isc-dhcp42-server-4.2.4 без патчей. Кста, в man dhcpd.conf вообще все пулы и класы описываются с переводом каретки на новую строку: subnet 10.0.0.0 netmask 255.255.255.0 { option routers 10.0.0.254; # Unknown clients get this pool. pool { option domain-name-servers bogus.example.com; max-lease-time 300; range 10.0.0.200 10.0.0.253; allow unknown-clients; } # Known clients get this pool. pool { option domain-name-servers ns1.example.com, ns2.example.com; max-lease-time 28800; range 10.0.0.5 10.0.0.199; deny unknown-clients; } } . В одну строку есть описание хостов, но там пробелы присутствуют: group { filename "Xncd19r"; next-server ncd-booter; host ncd1 { hardware ethernet 0:c0:c3:49:2b:57; } host ncd4 { hardware ethernet 0:c0:c3:80:fc:32; } host ncd8 { hardware ethernet 0:c0:c3:22:46:81; } } Пускай dimka890 отпишется, помогла ли расстановка пробелов или нет, а то общение уже как-то "отошло" от решения первоначальной проблемы.
dimka890 Posted September 20, 2012 Author Posted September 20, 2012 Ребят спасибо за советы, попробую на выходных обязательно!
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now