Дублирующие IP адреса

nsa
Сообщения: 41
Зарегистрирован: Пт авг 01, 2008 4:55 am

Дублирующие IP адреса

Сообщение nsa »

Замечено неоднократное дублирование IP адресов при лавинном подключении к VPN cерверу, POOL адресов в моём случае динамический , проверял так же два одновременных подключения происходило тоже самое. По времени 2 логина авторизуются параллельно но второй логин получает тот же самый адрес. Выглядит этот так!

Oct 22 12:04:07 forum pppd[11492]: pppd 2.4.4 started by root, uid 0
Oct 22 12:04:07 forum pppd[11492]: Using interface ppp43
Oct 22 12:04:07 forum pppd[11492]: Connect: ppp43 <--> /dev/pts/46
Oct 22 12:04:07 forum pppd[11497]: Plugin radius.so loaded.
Oct 22 12:04:07 forum pppd[11497]: RADIUS plugin initialized.
Oct 22 12:04:07 forum pppd[11497]: Plugin radattr.so loaded.
Oct 22 12:04:07 forum pppd[11497]: RADATTR plugin initialized.
Oct 22 12:04:07 forum pppd[11497]: Plugin /usr/lib/pptpd/pptpd-logwtmp.so loaded.
Oct 22 12:04:07 forum pppd[11497]: pppd 2.4.4 started by root, uid 0
Oct 22 12:04:07 forum pppd[11497]: Using interface ppp48
Oct 22 12:04:07 forum pppd[11497]: Connect: ppp48 <--> /dev/pts/52
Oct 22 12:04:09 forum pppd[11492]: MPPE 128-bit stateless compression enabled
Oct 22 12:04:10 forum pppd[11497]: MPPE 128-bit stateless compression enabled
Oct 22 12:04:12 forum pppd[11492]: local IP address 192.168.0.1
Oct 22 12:04:12 forum pppd[11492]: remote IP address 192.168.4.165
Oct 22 12:04:12 forum pppd[11497]: local IP address 192.168.0.1
Oct 22 12:04:12 forum pppd[11497]: remote IP address 192.168.4.165


Есть идеи как это побороть?
Использовать статику как вариант можно но не удобно!

ran
Сообщения: 2298
Зарегистрирован: Вс окт 21, 2007 2:29 pm

Сообщение ran »

а если радиуссервер в однопоточном режиме пущать - происходит?

nsa
Сообщения: 41
Зарегистрирован: Пт авг 01, 2008 4:55 am

Сообщение nsa »

Не пробовал!

ran
Сообщения: 2298
Зарегистрирован: Вс окт 21, 2007 2:29 pm

Сообщение ran »

2AsmodeuS: похоже чтито был прав - любая операция с динамическим пулом должна быть оформлена как одна неделимая транзакция ;)

ran
Сообщения: 2298
Зарегистрирован: Вс окт 21, 2007 2:29 pm

Сообщение ran »

nsa писал(а):Не пробовал!
и что останавливает? ;)

nsa
Сообщения: 41
Зарегистрирован: Пт авг 01, 2008 4:55 am

Сообщение nsa »

ran писал(а):
nsa писал(а):Не пробовал!
и что останавливает? ;)
Читаю документацию по FreeRadius серверу !

ran
Сообщения: 2298
Зарегистрирован: Вс окт 21, 2007 2:29 pm

Сообщение ran »

man radiusd писал(а): -s Run in "single server" mode. The server normally runs with multiple threads and/or pro‐
cesses, which can lower its response time to requests. Some systems have issues with thread‐
ing, however, so running in "single server" mode may help to address those issues. In single
server mode, the server will also not "daemonize" (auto-background) itself.

nsa
Сообщения: 41
Зарегистрирован: Пт авг 01, 2008 4:55 am

Сообщение nsa »

Запустил с опцией -s
Ситуация не изменилась!
Oct 22 14:40:26 forum pppd[15374]: pppd 2.4.4 started by root, uid 0
Oct 22 14:40:26 forum pppd[15374]: Using interface ppp48
Oct 22 14:40:26 forum pppd[15374]: Connect: ppp48 <--> /dev/pts/46
Oct 22 14:40:26 forum pppd[15379]: Plugin radius.so loaded.
Oct 22 14:40:26 forum pppd[15379]: RADIUS plugin initialized.
Oct 22 14:40:26 forum pppd[15379]: Plugin radattr.so loaded.
Oct 22 14:40:26 forum pppd[15379]: RADATTR plugin initialized.
Oct 22 14:40:26 forum pppd[15379]: Plugin /usr/lib/pptpd/pptpd-logwtmp.so loaded.
Oct 22 14:40:26 forum pppd[15379]: pppd 2.4.4 started by root, uid 0
Oct 22 14:40:26 forum pppd[15379]: Using interface ppp65
Oct 22 14:40:26 forum pppd[15379]: Connect: ppp65 <--> /dev/pts/66
Oct 22 14:40:28 forum pppd[15374]: MPPE 128-bit stateless compression enabled
Oct 22 14:40:30 forum pppd[15379]: MPPE 128-bit stateless compression enabled
Oct 22 14:40:31 forum pppd[15374]: local IP address 192.168.0.1
Oct 22 14:40:31 forum pppd[15374]: remote IP address 192.168.6.120
Oct 22 14:40:32 forum pppd[15379]: local IP address 192.168.0.1
Oct 22 14:40:32 forum pppd[15379]: remote IP address 192.168.6.120

ran
Сообщения: 2298
Зарегистрирован: Вс окт 21, 2007 2:29 pm

Сообщение ran »

ещёб дебаг лог радиуса посмотреть... в этой ситуёвине разумеется

chtito2
Сообщения: 479
Зарегистрирован: Чт апр 17, 2008 5:26 pm

Сообщение chtito2 »

Заодно не помешает узнать версию Abills & freeradius и используется ли rlm_perl.

Одна однопоточность не поможет: abills вполне может некорректно выдавать один и тот же айпи даже в синхронном режиме. Необходимо также отмечать выданный айпи как занятый до прихода RADIUS Start пакета, чтобы он не успел выделиться кому-то еще. Я это сделал, сегодня будем у нас тестировать.

ran
Сообщения: 2298
Зарегистрирован: Вс окт 21, 2007 2:29 pm

Сообщение ran »

Необходимо также отмечать выданный айпи как занятый до прихода RADIUS Start пакета, чтобы он не успел выделиться кому-то еще. Я это сделал, сегодня будем у нас тестировать.
а нада ли изобретать велосипед? или механизм транзакций в мускле уже отменили? ;)

chtito2
Сообщения: 479
Зарегистрирован: Чт апр 17, 2008 5:26 pm

Сообщение chtito2 »

ran писал(а):
Необходимо также отмечать выданный айпи как занятый до прихода RADIUS Start пакета, чтобы он не успел выделиться кому-то еще. Я это сделал, сегодня будем у нас тестировать.
а нада ли изобретать велосипед? или механизм транзакций в мускле уже отменили? ;)
Хм, а в MySQL это возможно, учитывая что заключительная часть транзакции может прийти в новой сессии? И что делать, если start пакет затеряется в сети, транзакция так и останется висеть? Впрочем, мне пока проще так, через явные локи, и это ничуть не сложнее, хотя если хотите вы можете сделать по другому, проблема-то всех касается ;)

ran
Сообщения: 2298
Зарегистрирован: Вс окт 21, 2007 2:29 pm

Сообщение ran »

Хм, а в MySQL это возможно, учитывая что заключительная часть транзакции может прийти в новой сессии?
думаю да (теоретически ;) ) - там оже есть механизм блокировок
И что делать, если start пакет затеряется в сети, транзакция так и останется висеть?
как-то контролировать (например по тайм-ауту)
хотя если хотите вы можете сделать по другому, проблема-то всех касается
неа... нехочу - я лентяй и у меня статика :D я просто к тому что если уж делать - то по уму (я думаю что это не единственное место где нужны транзакции) и обращаюсь собсно не к тебе, а к Автору ;)

chtito2
Сообщения: 479
Зарегистрирован: Чт апр 17, 2008 5:26 pm

Сообщение chtito2 »

ran писал(а):
И что делать, если start пакет затеряется в сети, транзакция так и останется висеть?
как-то контролировать (например по тайм-ауту)
Собсно у меня так и делается: заносится в таблицу dirty_ip и через минуту удаляется. Правда без встроенных транзакций, но зато со встроенными локами :)

nsa
Сообщения: 41
Зарегистрирован: Пт авг 01, 2008 4:55 am

Сообщение nsa »

chtito2 писал(а):Заодно не помешает узнать версию Abills & freeradius и используется ли rlm_perl.

Версии продуктов
freeradius: FreeRADIUS Version 1.1.3
Abills 0.37b обновлённая из CVS
rlm_perl не использую


Автор Abills конечно мне предложил перейти на rlm_perl, так как там реже происходят подобные ошибки!
Но все же они они есть!

Ответить