Страница 1 из 2
Дублирующие IP адреса
Добавлено: Ср окт 22, 2008 9:57 am
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
Есть идеи как это побороть?
Использовать статику как вариант можно но не удобно!
Добавлено: Ср окт 22, 2008 10:35 am
ran
а если радиуссервер в однопоточном режиме пущать - происходит?
Добавлено: Ср окт 22, 2008 10:46 am
nsa
Не пробовал!
Добавлено: Ср окт 22, 2008 10:47 am
ran
2AsmodeuS: похоже чтито был прав - любая операция с динамическим пулом должна быть оформлена как
одна неделимая транзакция 
Добавлено: Ср окт 22, 2008 10:48 am
ran
nsa писал(а):Не пробовал!
и что останавливает?

Добавлено: Ср окт 22, 2008 11:01 am
nsa
ran писал(а):nsa писал(а):Не пробовал!
и что останавливает?

Читаю документацию по FreeRadius серверу !
Добавлено: Ср окт 22, 2008 11:08 am
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.
Добавлено: Ср окт 22, 2008 11:44 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
Добавлено: Ср окт 22, 2008 1:20 pm
ran
ещёб дебаг лог радиуса посмотреть... в этой ситуёвине разумеется
Добавлено: Ср окт 22, 2008 2:55 pm
chtito2
Заодно не помешает узнать версию Abills & freeradius и используется ли rlm_perl.
Одна однопоточность не поможет: abills вполне может некорректно выдавать один и тот же айпи даже в синхронном режиме. Необходимо также отмечать выданный айпи как занятый до прихода RADIUS Start пакета, чтобы он не успел выделиться кому-то еще. Я это сделал, сегодня будем у нас тестировать.
Добавлено: Чт окт 23, 2008 5:55 am
ran
Необходимо также отмечать выданный айпи как занятый до прихода RADIUS Start пакета, чтобы он не успел выделиться кому-то еще. Я это сделал, сегодня будем у нас тестировать.
а нада ли изобретать велосипед? или механизм транзакций в мускле уже отменили?

Добавлено: Чт окт 23, 2008 6:38 am
chtito2
ran писал(а):Необходимо также отмечать выданный айпи как занятый до прихода RADIUS Start пакета, чтобы он не успел выделиться кому-то еще. Я это сделал, сегодня будем у нас тестировать.
а нада ли изобретать велосипед? или механизм транзакций в мускле уже отменили?

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

Добавлено: Чт окт 23, 2008 7:24 am
ran
Хм, а в MySQL это возможно, учитывая что заключительная часть транзакции может прийти в новой сессии?
думаю да (теоретически

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

я просто к тому что если уж делать - то по уму (я думаю что это не единственное место где нужны транзакции) и обращаюсь собсно не к тебе, а к Автору

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

Добавлено: Чт окт 23, 2008 8:56 am
nsa
chtito2 писал(а):Заодно не помешает узнать версию Abills & freeradius и используется ли rlm_perl.
Версии продуктов
freeradius: FreeRADIUS Version 1.1.3
Abills 0.37b обновлённая из CVS
rlm_perl не использую
Автор Abills конечно мне предложил перейти на rlm_perl, так как там реже происходят подобные ошибки!
Но все же они они есть!