Страница 1 из 1

DHCP не шлет DHCP ACK

Добавлено: 01 июн 2016, 14:25
Streemer
Добрый день! Столкнулся с проблемой. Есть такая схема взаимодействия с DHCP сервером, который на RouterOS:
Клиент -> VPN сервер -> RouterOS (DHCP тут)
То есть, клиент запрашивает при подключении ip адрес у VPN сервера, тот работает как DHCP relay и шлет запрос на выдачу адреса RouterOS.
Для первого клиента, который пытается подключиться, все проходит хорошо и ему выдается аренда ip адреса

Код: Выделить всё

12:02:01 dhcp,debug,packet vpn-dhcp received discover with id 1246955413 from 10.0
.10.2
12:02:01 dhcp,debug,packet     flags = broadcast
12:02:01 dhcp,debug,packet     ciaddr = 0.0.0.0
12:02:01 dhcp,debug,packet     chaddr = 7A:A7:6D:51:4E:FC
12:02:01 dhcp,debug,packet     Msg-Type = discover
12:02:01 dhcp,debug,packet     Client-Id = 62-6F-72-74-6E-69-6B-6F-76-40-65-74-65-
63-61-72-2E-72-75
12:02:01 dhcp,debug,packet     Parameter-List = Domain-Server,NETBIOS-Name-Server
12:02:01 dhcp,info vpn-dhcp deassigned 10.0.10.6 from 7A:A7:6D:51:4E:FC
12:02:01 dhcp,debug,packet vpn-dhcp sending offer with id 1246955413 to 255.255.25
5.255
12:02:01 dhcp,debug,packet     flags = broadcast
12:02:01 dhcp,debug,packet     ciaddr = 0.0.0.0
12:02:01 dhcp,debug,packet     yiaddr = 10.0.10.6
12:02:01 dhcp,debug,packet     siaddr = 10.0.10.1
12:02:01 dhcp,debug,packet     chaddr = 7A:A7:6D:51:4E:FC
12:02:01 dhcp,debug,packet     Msg-Type = offer
12:02:01 dhcp,debug,packet     Server-Id = 10.0.10.1
12:02:01 dhcp,debug,packet     Address-Time = 86400
12:02:01 dhcp,debug,packet     Domain-Server = 10.0.10.1
12:02:07 dhcp,debug,packet vpn-dhcp received request with id 1246955413 from 10.0.
10.2
12:02:07 dhcp,debug,packet     flags = broadcast
12:02:07 dhcp,debug,packet     ciaddr = 0.0.0.0
12:02:07 dhcp,debug,packet     chaddr = 7A:A7:6D:51:4E:FC
12:02:07 dhcp,debug,packet     Msg-Type = request
12:02:07 dhcp,debug,packet     Client-Id = 62-6F-72-74-6E-69-6B-6F-76-40-65-74-65-
63-61-72-2E-72-75
12:02:07 dhcp,debug,packet     Address-Request = 10.0.10.6
12:02:07 dhcp,debug,packet     Server-Id = 10.0.10.1
12:02:07 dhcp,debug,packet     Parameter-List = Domain-Server,NETBIOS-Name-Server
12:02:07 dhcp,info vpn-dhcp assigned 10.0.10.6 to 7A:A7:6D:51:4E:FC
12:02:07 dhcp,debug,packet vpn-dhcp sending ack with id 1246955413 to 255.255.255.
255
12:02:07 dhcp,debug,packet     flags = broadcast
12:02:07 dhcp,debug,packet     ciaddr = 0.0.0.0
12:02:07 dhcp,debug,packet     yiaddr = 10.0.10.6
12:02:07 dhcp,debug,packet     siaddr = 10.0.10.1
12:02:07 dhcp,debug,packet     chaddr = 7A:A7:6D:51:4E:FC
12:02:07 dhcp,debug,packet     Msg-Type = ack
12:02:07 dhcp,debug,packet     Server-Id = 10.0.10.1
12:02:07 dhcp,debug,packet     Address-Time = 86400
12:02:07 dhcp,debug,packet     Domain-Server = 10.0.10.1


А вот со следующим, кто пытается попросить адрес, происходит небольшая мистика. Ему выдается аренда DHCP OFFER, но RouterOS не посылает DHCP ACK. Соответственно, клиент не получает подтверждения, а поскольку без адреса подключение запрещено, то и соединиться с VPN сервером он не может.

Код: Выделить всё

12:04:14 dhcp,debug,packet vpn-dhcp received discover with id 3591468449 from 10.0.10.2
12:04:14 dhcp,debug,packet     flags = broadcast
12:04:14 dhcp,debug,packet     ciaddr = 0.0.0.0
12:04:14 dhcp,debug,packet     chaddr = 7A:A7:E4:62:05:09
12:04:14 dhcp,debug,packet     Msg-Type = discover
12:04:14 dhcp,debug,packet     Client-Id = 67-75-73-68-63-68-69-6E-40-65-74-65-63-61-72-2E-72-75
12:04:14 dhcp,debug,packet     Parameter-List = Domain-Server,NETBIOS-Name-Server
12:04:15 dhcp,debug,packet vpn-dhcp sending offer with id 3591468449 to 255.255.255.255
12:04:15 dhcp,debug,packet     flags = broadcast
12:04:15 dhcp,debug,packet     ciaddr = 0.0.0.0
12:04:15 dhcp,debug,packet     yiaddr = 10.0.10.8
12:04:15 dhcp,debug,packet     siaddr = 10.0.10.1
12:04:15 dhcp,debug,packet     chaddr = 7A:A7:E4:62:05:09
12:04:15 dhcp,debug,packet     Msg-Type = offer
12:04:15 dhcp,debug,packet     Server-Id = 10.0.10.1
12:04:15 dhcp,debug,packet     Address-Time = 86400
12:04:15 dhcp,debug,packet     Domain-Server = 10.0.10.1


Как побороть эту проблему или, возможно, кто-нибудь знает, чем она вызвана?

Re: DHCP не шлет DHCP ACK

Добавлено: 01 июн 2016, 15:04
podarok66
Повестьте наверх EoIP и будет вам счастье. Он же специально для этих целей придуман... С ним точно работает как надо, сам проверял

Re: DHCP не шлет DHCP ACK

Добавлено: 01 июн 2016, 16:08
Streemer
Мне не надо EoIP, у меня уже есть VPN сервер на strongswan, куда пользователи подключаются по смарт-картам, а авторизация идет по EAP через Windows NAP. Сейчас назначение ip адресов идет тем же strongswan и он неплохо справляется, но для большей прозрачности и удобства управления, хочу повесить выдачу адресов ВПН клиентам на микротик, который будет авторизовываться на том же NAP. Попытавшись сделать такое, наткнулся на вышеописанную ошибку. Был бы признателен за любую помощь идеей.

Re: DHCP не шлет DHCP ACK

Добавлено: 01 июн 2016, 16:23
vqd
Я вот только ни как в голове не могу увязать дхцп и впн. Радиус и впн могу, а вот дхцп и впн ну ни как. Учитывая что тот же pptp он л3

Re: DHCP не шлет DHCP ACK

Добавлено: 01 июн 2016, 22:22
podarok66
Streemer писал(а):Мне не надо EoIP

Ну раз не надо, значит не надо. Рад буду услышать другие варианты реализации данной задачи.

Re: DHCP не шлет DHCP ACK

Добавлено: 02 июн 2016, 16:18
Streemer
vqd писал(а):Я вот только ни как в голове не могу увязать дхцп и впн. Радиус и впн могу, а вот дхцп и впн ну ни как. Учитывая что тот же pptp он л3

Я использую IKEv2, тоже L3 в принципе. У сервера strongswan есть возможность выдачи виртуальных ip адресов, причем эти адреса могут быть выданы другим сервером. Сервер strongswan и mikrotik находятся в одном l2 сегменте сети, соответственно такие штуки как broadcast вполне реальны. В моем случае, strongswan представляется для mikrotik как DHCP relay и мой первый вопрос был именно о том, что он (микротик) не совсем корректно обрабатывает запрос ip адреса от 2+ клиентов.
Разработчик сервера strongswan придерживается того же мнения:
"OK. Looks like a problem with your DHCP server. From the log it is not clear why it doesn't react to the DHCP_REQUEST. Actually, in the unsuccessful case we don't see that the server receives the request - did it log anything regarding that?"
Возможно, у кого-то возникала похожая ситуация?
Сегодня вечером буду пытаться обновить mikrotik до последней версии и напишу в техподдержку.

Re: DHCP не шлет DHCP ACK

Добавлено: 03 июн 2016, 07:07
vqd
терь понятно.
Обновляйтесь и отправьте запрос в саппорт и не забудьте supout.rif им приложить.
Просьба отписаться об ответе саппорта