forum.bitel.ru http://forum.bitel.ru/ |
|
BGDHCP Opt.82 Продление адренды адреса http://forum.bitel.ru/viewtopic.php?f=7&t=5139 |
Страница 1 из 1 |
Автор: | barguzin2 [ 16 фев 2011, 11:14 ] |
Заголовок сообщения: | BGDHCP Opt.82 Продление адренды адреса |
Биллинг 5.1 DHCP сборка 138 На свиче D-Link настроен dhcp_relay, всё работает, клиент получает адрес. Далее начинается следующее - клиент начинает напрямую юникастом просить продление аренды у сервера и получает отлуп Код: DEBUG 16.02.2011 06:44:14,652 pool-1-thread-7 processing request DEBUG 16.02.2011 06:44:14,652 pool-1-thread-7 OP_BOOT_REQUEST DEBUG 16.02.2011 06:44:14,652 pool-1-thread-7 agent information is not found DEBUG 16.02.2011 06:44:14,652 pool-1-thread-7 trying to renew ip и так до тех пор, пока адренда не истечет, клиент отваливатся и начинается повторная процедура получения адреса бродкаст+релэй с самого начала. Имхо ситуация не очень. Можно как-то исправить ? |
Автор: | stark [ 16 фев 2011, 20:13 ] |
Заголовок сообщения: | Re: BGDHCP Opt.82 Продление адренды адреса |
а зачем клиент и сервер находятся в одной сети ..relay он на то и relay чтобы в другую сеть пересылать ..Почему у вас тогда сразу клиент напрямую с dhcp не работает? Он получается туда и туда шлет с самого начала , а BGDHCP расчитан только на запроcы от relay, и продление аренды тоже через relay должно идти |
Автор: | barguzin2 [ 16 фев 2011, 21:07 ] |
Заголовок сообщения: | Re: BGDHCP Opt.82 Продление адренды адреса |
Первичное получение адреса при включении компа идет через relay, D-Link перехватывает широковещательный пакет пользователя, подставляет Opt82 и шлет на DHCP-Server, который пользователю изначально недоступен, т.к. стоит в другом сегменте Юзер - L2(DES-3028) - L3(DGS-3627) - BGDHCP Вот конфиг 3028 на эту тему Код: enable dhcp_relay config dhcp_relay hops 4 time 5 config dhcp_relay option_82 state enable config dhcp_relay option_82 check enable config dhcp_relay option_82 policy replace config dhcp_relay option_82 remote_id default config dhcp_relay add ipif System X.X.X.X Эта процедура отрабатывается корректно, вот лог Код: DEBUG 15.02.2011 22:28:04,659 pool-1-thread-1 processing request DEBUG 15.02.2011 22:28:04,659 pool-1-thread-1 OP_BOOT_REQUEST DEBUG 15.02.2011 22:28:04,659 pool-1-thread-1 agent information found! DEBUG 15.02.2011 22:28:04,659 pool-1-thread-1 DHCP_REQUEST or DHCP_DISCOVER DEBUG 15.02.2011 22:28:04,659 pool-1-thread-1 request.giaddr =172.16.1.105 DEBUG 15.02.2011 22:28:04,659 pool-1-thread-1 gateId = 1 DEBUG 15.02.2011 22:28:04,660 pool-1-thread-1 port=2 DEBUG 15.02.2011 22:28:04,660 pool-1-thread-1 ip = х.х.х.х DEBUG 15.02.2011 22:28:04,660 pool-1-thread-1 DHCP_DISCOVER BGDHCP выдает юзеру адрес, днс, информацию про себя (IP-адрес) Дальше, когда время аренды подходит к концу, юзер начинает просить продление, НО! он уже шлет пакет не бродкастом, а юникастом, и напрямую на BGDHCP (это tcpdump показал) поэтому DES-3028 уже эти пакеты не ловит и не ставит туда Opt82, ну и соответственно раз в пакете нет инфы про агента, то BGDHCP их отфутболивает. Код: DEBUG 16.02.2011 06:44:14,652 pool-1-thread-7 processing request DEBUG 16.02.2011 06:44:14,652 pool-1-thread-7 OP_BOOT_REQUEST DEBUG 16.02.2011 06:44:14,652 pool-1-thread-7 agent information is not found DEBUG 16.02.2011 06:44:14,652 pool-1-thread-7 trying to renew ip Как быть в этой ситуации и кто что с этим делает ? |
Автор: | stark [ 17 фев 2011, 12:22 ] |
Заголовок сообщения: | Re: BGDHCP Opt.82 Продление адренды адреса |
по rfc 2131 Цитата: 4.4.4 Use of broadcast and unicast The DHCP client broadcasts DHCPDISCOVER, DHCPREQUEST and DHCPINFORM messages, unless the client knows the address of a DHCP server. The client unicasts DHCPRELEASE messages to the server. Because the client is declining the use of the IP address supplied by the server, the client broadcasts DHCPDECLINE messages. When the DHCP client knows the address of a DHCP server, in either INIT or REBOOTING state, the client may use that address in the DHCPDISCOVER or DHCPREQUEST rather than the IP broadcast address. The client may also use unicast to send DHCPINFORM messages to a known DHCP server. If the client receives no response to DHCP messages sent to the IP address of a known DHCP server, the DHCP client reverts to using the IP broadcast address. Получается , что если клиент знает адрес сервера , то он шлет unicast-ом..Вопрос - откуда он знает ? можете показать содержимое всех dhcp-пакетов(DHCPOFFER, DHCPACK и т.п) , которые получает клиент от relay-агента(переверте может он что-то еще напрямую от сервера получает, т.е вообще все пакеты DHCP, которые он получает ) ? Возможно там relay-агент что-то дополнительно заполняет, siaddr например .. Клиент должен думать, что relay - это есть сервер. Надо понять откуда он узнает про сервер |
Автор: | barguzin2 [ 17 фев 2011, 12:46 ] |
Заголовок сообщения: | Re: BGDHCP Opt.82 Продление адренды адреса |
Пакеты половлю, посмотрю. По поводу того, что клиент должен думать что релэй - это сервер и что релэй должен говорить про себя что он и есть DHCP-сервер есть сомнения такого плана: Релэй(DES-3028) шлёт запросы на DHCP-сервер со своего ipif System, который находится в управляющем вилане и имеет внутреннюю(серую) адресацию, доступ клиенту в который может быть просто напросто закрыт - это раз, а во вторых принцип работы релея - это ведь перехват широковещательных DHCP-запросов или я ошибаюсь ? Настройки релея приводил, настройки BGDHCP стандартные Код: processor.class=bitel.billing.server.ext.dhcp.DHCPRelayProcessor
admin.port=1868 dhcp.thread.count=10 dhcp.data.save.delay=3600 dhcp.data.save.period=3600 dhcp.server.identifier=IP-интерфейса-сервера тут описание параметров сети net.1 : маска, шлюз и днс. |
Автор: | barguzin2 [ 17 фев 2011, 16:39 ] |
Заголовок сообщения: | Re: BGDHCP Opt.82 Продление адренды адреса |
Поймал пакеты первичные на клиенте - там есть Relay agent IP address: 172.16.1.105 (172.16.1.105) а также Option: (t=54,l=4) DHCP Server Identifier = Х.Х.Х.Х т.е. есть инфа и про сам DHCP-сервер, поэтому клиент посылает запросы продления аренды напрямую на сервер |
Автор: | stark [ 17 фев 2011, 17:40 ] |
Заголовок сообщения: | Re: BGDHCP Opt.82 Продление адренды адреса |
barguzin2 писал(а): Поймал пакеты первичные на клиенте - там есть Relay agent IP address: 172.16.1.105 (172.16.1.105) а также Option: (t=54,l=4) DHCP Server Identifier = Х.Х.Х.Х т.е. есть инфа и про сам DHCP_IPN-сервер, поэтому клиент посылает запросы продления аренды напрямую на сервер Да , это BGDHCP_IPN заполняет этот адрес .. Причем его можно переопределить с помощью опции dhcp.server.identifier в конфиге ...Попробуйте поставить Код: dhcp.server.identifier=0.0.0.0 в конфиге DHCP_IPN |
Автор: | snark [ 19 фев 2011, 06:25 ] |
Заголовок сообщения: | Re: BGDHCP Opt.82 Продление адренды адреса |
ЕМНИМС клиенту отдается в качестве IP адреса DHCP сервера IP адрес свича Код: enable dhcp_local_relay пробывали? |
Автор: | barguzin2 [ 19 фев 2011, 10:51 ] |
Заголовок сообщения: | Re: BGDHCP Opt.82 Продление адренды адреса |
Пробовал dhcp.server.identifier=0.0.0.0 Клиент тогда запрос продления шлет бродкастом, его уже свич ловит и отправляет серверу - вроде всё работает, спасибо. enable dhcp_local_relay - это не пойдёт, DHCP то в другом сегменте, отделенным L3-свичем |
Автор: | snark [ 19 фев 2011, 20:47 ] |
Заголовок сообщения: | Re: BGDHCP Opt.82 Продление адренды адреса |
barguzin2 писал(а): enable dhcp_local_relay - это не пойдёт, DHCP то в другом сегменте, отделенным L3-свичем эта опция отвечает за то чтобы даже в юникаст пакеты вставлять Option 82, заодно не дает DHCP запросам плодится и размножаться |
Автор: | stark [ 21 фев 2011, 13:12 ] |
Заголовок сообщения: | Re: BGDHCP Opt.82 Продление адренды адреса |
barguzin2 писал(а): Пробовал dhcp.server.identifier=0.0.0.0 Клиент тогда запрос продления шлет бродкастом, его уже свич ловит и отправляет серверу - вроде всё работает, спасибо. enable dhcp_local_relay - это не пойдёт, DHCP то в другом сегменте, отделенным L3-свичем сделаем по умолчанию там 0.0.0.0..Сейчас там пытается выдать адрес того интерфейса , где поднят dhcp - это вообще уберем ..Так как можно обойти это ограничения , то обновления для текущих версий делать не будем, в следующем уберем . |
Автор: | barguzin2 [ 21 фев 2011, 15:09 ] |
Заголовок сообщения: | Re: BGDHCP Opt.82 Продление адренды адреса |
snark писал(а): barguzin2 писал(а): enable dhcp_local_relay - это не пойдёт, DHCP то в другом сегменте, отделенным L3-свичем эта опция отвечает за то чтобы даже в юникаст пакеты вставлять Option 82, заодно не дает DHCP запросам плодится и размножаться Разве? dhcp_local_relay, насколько знаю, использутется тогда, когда dhcp стоит в одном сегменте с клинетом. в этом случае switch просто вставляет Opt82 и пихает пакет дальше также бродкастом. Тем более в настройках этой опции нет упоминания про адреса dhcp-серверов. |
Автор: | snark [ 21 фев 2011, 15:40 ] |
Заголовок сообщения: | Re: BGDHCP Opt.82 Продление адренды адреса |
ее включение (никакой настройки, просто включение) - самое первое что ТП длинка рекомендует делать когда DHCP запросы начинают плодится и размножаться |
Страница 1 из 1 | Часовой пояс: UTC + 5 часов [ Летнее время ] |
Powered by phpBB® Forum Software © phpBB Group http://www.phpbb.com/ |