Jump to content
Калькуляторы

accel pptpd accel pptpd

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

Edited by NiTr0

Share this post


Link to post
Share on other sites

писали уже - что это "побочный эффект" - правда он не падает в панику а тупо виснет наглухо.

Share this post


Link to post
Share on other sites

Что писали - читал, но вроде это относилось к условно старым версиям...

Насчет паники - надо будет в следующий раз дать комманду подрубить монитор и сделать фото того, что на экране... На более старых версиях - как раз паника выскакивала.

А вообще - по логам получается, что где-то за N минут (от 3-5 минут до получаса и более нет записей) до виса/паники в логи перестают складываться сообщения...

Edited by NiTr0

Share this post


Link to post
Share on other sites

на днях один из серверов у меня ушел в даун.

Пришел, включил монитор, залогинился. Визуально все работает, но фактически с него даже шлюз не пингается.

В дмесге сообщения о том что память кончилась.

Перезагрузил (корректно) - все ожило (естественно))

Скинуть dmrsg > log - забыл, торопился.

 

Возможно, и у вас они не виснут ...

 

Share this post


Link to post
Share on other sites

Всем доброго времени суток.

Огромное спасибо xeb-у за его работу.

 

Может кто подскажет: при подключении виндовозного РРТР-клиента к PPTPD (родной poptop) иногда не ходят пакеты по туннелю (долго не верил, пока сам не попался). Проблема решается переподключением, либо просто подождать - иногда через несколько минут всё встает на свои места. Как позже оказалось, проблема не только у меня. Есть логи wireshark-а на стороне клиента, если поможет :).

 

Одновременных подключений ~ 60-80.

 

Может ли мне помочь accel? Стоит ли пробовать?

 

Заранее спасибо.

Share this post


Link to post
Share on other sites
Возможно, и у вас они не виснут ...

Навряд... Т.к. 1) снмп мониторинг не показывал нехватки памяти накануне - ничего необычного вообще, ни роста load average (как на 0.7.11), ни уменьшения памяти; и 2) серв пытались погасить корректно (кнопка питания + acpid) - никакой реакции на данное действо.

Share this post


Link to post
Share on other sites

последнии 2 подвисания (начались тормоза и провалы) (вчера и позавчера) на разных серверах... может правда и не аксель (стоит еще СНМП) но кто-то может наблюдал?

"...но буфер спэйс..."

помогает ребут :-)

Share this post


Link to post
Share on other sites

Еще что аномального заметил - иногда на сервер пинг подскакивает до 40-50 мс (мониторится по СНМП кактусом, пинг - ним же мониторится).

Edited by NiTr0

Share this post


Link to post
Share on other sites

NiTr0

Примерно 2 года назад были проблемы с snmpd при большом числе интерфейсов (типично для ВПН-серврера).

Отказался от использования snmpd.

 

Возможно, это были и мои кривые руки, но "осадок остался" - тот сервер проработал 2 года без сбоев после этого. Предпологаю что текла память в снмп при создании-удалении интерфейса.

Share this post


Link to post
Share on other sites

Подтверждаю, где-то год-два назад net-snmpd "съедал" всю память на PPPoE- концетраторе под линукс и в конце концов зависал.

Share this post


Link to post
Share on other sites

Насчет SNMP - знаю, периодический рестарт демона облегчает жизнь серверу... SNMP мониторит даже отвалившиеся интерфейсы, а при кол-ве коннектов в несколько тысяч в сутки - ессно оно начинает жрать бешенно память.

Есть в планах мерейти на zabbix - но пока что только планы.

Share this post


Link to post
Share on other sites
Есть в планах мерейти на zabbix - но пока что только планы.
Хорошая вещь. Недавно поставил.

Вот только мониторить много ифейсов неудобно. В остальном - супер.

Share this post


Link to post
Share on other sites

Наконец, выпущен долгожданные релиз 0.8.3, мы все долго над ним работали, исправлено много ошибок, внесено много поправок.

Объявляю благодарность всем кто помогал и словом, и делом!

 

https://sourceforge.net/project/showfiles.p...lease_id=685643

* fixed memory leak (thanks to magmike)

* fixed bug of hanging sessions (thanks to sdy_moscow)

* fixed error of code logic blocks in pptp_connect function

* fixed serios bug of initialization memory

* fixed bug of packet receiving while ppp channel is not registred

* channel list semaphore replaced by existing read_lock due to lock-held time is short

* cheking for channel with same call_id exists on connect

* simplified locking system

* fixed compilation issue for 2.6.18 kernel

* code cleanup

* changed packet reveing code

* more secure chan_lookup

* removed gre statistics

* removed reordered packet buffering

* added additional locking for more safety channel release

* included ppp-allow-mppe.patch

Share this post


Link to post
Share on other sites

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

Думаю, этот вопрос волнует всех, у кого accel крутится на основной (не тестовой) машине...

Edited by NiTr0

Share this post


Link to post
Share on other sites
Эм... А можно узнать, в чем отличия от предыдущего билда - это же указаны отличия от предыдущего релиза (0.8.2)?

Думаю, этот вопрос волнует всех, у кого accel крутится на основной (не тестовой) машине...

думаю код компаре поможет...

но я этим займусь после отпуска ;-) числа 15-го....

 

Share this post


Link to post
Share on other sites
А можно узнать, в чем отличия от предыдущего билда
самое главное это
* fixed memory leak (thanks to magmike)
из-за чего происходило
последнии 2 подвисания (начались тормоза и провалы) (вчера и позавчера) на разных серверах
и пр.

 

так что всем рекомендую обновиться!

Edited by xeb

Share this post


Link to post
Share on other sites

Спасибо за ответ.

 

P.S. А не поднять ли оверлей для gentoo с данным пакетом, + туда же включать еще некоторые полезные форки - тот же pppd с патчем поддержки gigawords к примеру - его в офф дерево так и не внесли ввиду "неправильности" подхода, а вещь весьма полезная и к тому же вполне стабильная...

Edited by NiTr0

Share this post


Link to post
Share on other sites
Наконец, выпущен долгожданные релиз 0.8.3, мы все долго над ним работали, исправлено много ошибок, внесено много поправок.

Для корректной компиляции с 2.6.19 требуется чуток поправить:

@@ -489,7 +489,9 @@

}

 

skb->ip_summed=CHECKSUM_NONE;

+ #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,20)

skb_set_network_header(skb,skb->head-skb->data);

+ #endif

ppp_input(&po->chan,skb);

 

return NET_RX_SUCCESS;

@@ -567,7 +569,7 @@

 

#else /* LINUX_VERSION_CODE <= KERNEL_VERSION(2,6,0) */

 

- #if LINUX_VERSION_CODE <= KERNEL_VERSION(2,6,18)

+ #if LINUX_VERSION_CODE <= KERNEL_VERSION(2,6,19)

return sk_receive_skb(sk_pppox(po), skb);

#else

return sk_receive_skb(sk_pppox(po), skb, 0);

 

Share this post


Link to post
Share on other sites

NiTr0, хм, хорошая идея, я и не догадался :)

sfstudio, OK

Edited by xeb

Share this post


Link to post
Share on other sites

Под 2.6.29 даже с указанным выше патчем не собирается.

На коленке решилось вот так:

--- accel-pptp-0.8.3-rev70/pppd_plugin/src/Makefile.in  2008-02-11 14:04:04.000000000 +0300
+++ accel-pptp-0.8.3-rev70.new/pppd_plugin/src/Makefile.in      2009-06-02 13:58:25.000000000 +0400
@@ -60,7 +60,7 @@
am_pptp_la_OBJECTS = pptp.lo pptp_callmgr.lo pptp_ctrl.lo util.lo \
        vector.lo dirutil.lo pptp_quirks.lo orckit_quirks.lo
pptp_la_OBJECTS = $(am_pptp_la_OBJECTS)
-DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir)
+DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir) -I/usr/src/linux/arch/x86/include
depcomp = $(SHELL) $(top_srcdir)/depcomp
am__depfiles_maybe = depfiles
COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
--- accel-pptp-0.8.3-rev70/pptpd-1.3.3/Makefile.in      2008-02-11 14:04:04.000000000 +0300
+++ accel-pptp-0.8.3-rev70.new/pptpd-1.3.3/Makefile.in  2009-06-02 13:58:11.000000000 +0400
@@ -67,7 +67,7 @@
        getopt.$(OBJEXT) getopt1.$(OBJEXT)
pptpd_OBJECTS = $(am_pptpd_OBJECTS)
pptpd_DEPENDENCIES = $(am__DEPENDENCIES_1)
-DEFAULT_INCLUDES = -I. -I$(srcdir) -I.
+DEFAULT_INCLUDES = -I. -I$(srcdir) -I. -I/usr/src/linux/arch/x86/include
depcomp =
am__depfiles_maybe =
COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \

Share this post


Link to post
Share on other sites

читаем http://bugs.gentoo.org/show_bug.cgi?id=264388

Problem is in sys-kernel/linux-headers. Your version is 2.6.28-r1, but you need

2.6.29. Unfortunally, sys-kernel/linux-headers don't have this version yet.

так что ставим хедеры ядра 2.6.29 и плагин скомпилится, но есть еще одна проблема: make install не работает на 2.6.29, с этим еще не разбирался
Edited by xeb

Share this post


Link to post
Share on other sites

А как сейчас обстоят дела со стабильностью на 2.4? Возникла потребность поставить именно на это ядро.

Share this post


Link to post
Share on other sites
А как сейчас обстоят дела со стабильностью на 2.4? Возникла потребность поставить именно на это ядро.

Использую "свою" версию (брать в git wive-ng) проблем со стабильностью не замечено. xeb бы тоже глянул бы, там Андрей перепилил кой какие моменты...

Share this post


Link to post
Share on other sites
но есть еще одна проблема: make install не работает на 2.6.29, с этим еще не разбирался

Обычный ебилд от 0.8.1 (с небольшими правками - т.к. у мну стоит свой билд пппд, пакет зовется по-другому) при компиляции ругался на отсутствие строки default в Makefile модуля ядра, добавление default: all ситуацию исправило :) Проинсталлился и работает...

В ебилде кстати в пост-инсталле - надо все же update-modules вызывать, а не modules-update, + после него depmod (т.к. руками его вызывать - некошерно, а без этого modprobe не работает).

Буду тестировать...

 

P.S. Кстати, назрел вопрос... Иногда pptpd после очередного зависания и ребута машины крашился практически сразу (от нескольких часов до нескольких десятков часов, как оригинальный, так и accel-pptp - причем когда начинался "шторм" на обычном pptpd, ради интереса поднимали и на другой машине pptpd сервер и перекидывали туда ип адрес - она тоже крашилась, т.е. дело не в железе), что в очередной раз наблюдалось сегодня ночью (до того - покрашился вчера, подняли в 8 утра, умер около 2 ночи, когда я днем подоткнул монитор - увидел только тайну черного экрана, на клаву не реагирует)... Соответственно - назрел вопрос: а не может ли кто-то/что-то его валить кривыми пакетами? Никто с таким не сталкивался?

Edited by NiTr0

Share this post


Link to post
Share on other sites

Соответственно - назрел вопрос: а не может ли кто-то/что-то его валить кривыми пакетами? Никто с таким не сталкивался?

IMHO - ищи уязвимости в своём ядре и/или pppd.

Share this post


Link to post
Share on other sites

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 account

Sign in

Already have an account? Sign in here.

Sign In Now