Перейти к содержимому
Калькуляторы

true.ru

Пользователи
  • Публикации

    47
  • Зарегистрирован

  • Посещение

Все публикации пользователя true.ru


  1. Где вы находите техподдержку?

    думаю, что при должном мониторинге активности в ТП этот человек сможет решить подобную проблему.
  2. Dark_Angel за трафик или за полосу аплинку платите? если нет, забейте, абонент же платит исправно. ИМХО
  3. Пользователи и "психи"

    % недовольных жизнью людей, а т.к. мы операторы - часть их жизни, то естественно, они недовольны нами.
  4. MagMike в моем случае правился редактированный специалистом radius.c. в сторону хомячка не правленый модуль выкидывал служебную информацию.
  5. в dgs-3426 можно только одно правило pcf написать.правило для dgs-3426+pptp: create access_profile profile_id 1 packet_content_mask offset_chunk_1 7 0x00FF0000 offset_chunk_2 15 0x0000FF00 offset_chunk_3 23 0x00FFFFFF offset_chunk_4 24 0xFFFF0000 config access_profile profile_id 1 add access_id auto_assign packet_content offset_chunk_1 0x2F000000 offset_chunk_2 0x11000000 offset_chunk_3 0x007FFFFF offset_chunk_4 0x00FFAB00 port 1-24 deny сколько в 3627 можно acl pcf написать?
  6. sdy_moscow спасибо. разобрались в своей проблеме, вернее, помог хороший человек :)
  7. sdy_moscow accel pptp 0.8.4 + dir100/asus rx3410 сессия длится не более трех минут, потом реконнект.
  8. точно в юзер спейс переместилось :(
  9. как проверить? MagMike в свое время в дампе с юзера были видны обращения с/на прошлый белый ip, в купе с новым.
  10. NiTr0 здорово, когда для отдыха больше времени :) парк роутеров и в моей сети велик, но проблема была только с вышеобозначенными и какой-то версией макоси.
  11. удалось справиться с этой проблемой. бага была в исходниках pptp-1.3.3, а точнее в определении параметра unique_id, которые используются в accel pptp. в 1.3.4 это подправили. тупо скопировал одни новые сорцы в сорцы ацеля, собрал бинарники, перезапустил пптп. сейчас тестирую. на момент написания поста аптайм сессии 15 мин. ранее более трех минут сессия не держалась. отпишусь о тестировании чуть позже. update: аптайм сессии сутки. полет нормальный.
  12. столкнулись с тем же. спасибо за решение.
  13. в начале расчетного периода таких естественного больше. так что говорить о проценте сложно... сессия с карантинным ip длится у нас не более 15 мин.
  14. кто-нибудь сталкивался/решил с проблемой нестабильного соединения dlink dir-100 и bras с accel-pptp? в теме есть совет с помощью iptables увеличить время ожидания соединения. не помогло. на форуме dlink прочитал наблюдение о том, что dir-100 gre сессии поддерживает с помощью одного того же id. ЗЫ с подобной проблемой позже обратился юзер с ASUS RX3041, затем с freebsd+mpd. перевели их на bras, который работает на стоковом pptp.
  15. наверное, каждый isp проходит через это при увеличении числа абонентов. в нашем случае bras просто не успевал прожевывать 1000+ pptpd, считать трафик. cpu q9650. хотя количество пакетов не превышало 40к карточки поставили аналогичные, драйвера с http://sourceforge.net/projects/e1000/files/ в итоге снова пришли к тому, что снова необходим второй bras. его подняли с accel-pptp, проблема ушла. на обоих 2.6.26, настроены буферы карт. + думаю, стоит поменять проц на что-нибудь более быстрое.
  16. Ну если вам нравится разбираться, почему "вдруг" начал падать непонятно кем (и главное - непонятно зачем) писанный плагин после его сборки на другом сервере - ваше дело... безусловно, исключительно дело мое.разобрался в чем была причина. было различие в еще одном файле. всем спасибо.
  17. первый работает довольно успешно для своих сил и трогать его желания нет.ip-up имеет единый вид на обоих серверах.
  18. есть проблема, пока не пришел к ее пониманию. в сети существует два nas. pptpd+radius+tc один (назовем "1") настраивал админ из другой компании. второй (назовем "2") сервер доступа переводим на accel-pptp. debian 2.6.26. если использовать pppd из пакета, то все прекрасно заводится, работает, но не обрабатываются скрипты tc в /etc/ppp/ip-up. пришел к выводу, что биллинг по разному отвечает на радиус запрос. для "1" в виде: параметр="значение" для "2": параметр значение. настройки на nas'ах идентичны. спросил у админа, что правилось в исходниках pppd. получил ответ: /*********************************************************************** * * radattr.c * * A plugin which is stacked on top of radius.so. This plugin writes * all RADIUS attributes from the server's authentication confirmation * into /var/run/radattr.pppN. These attributes are available for * consumption by /etc/ppp/ip-{up,down} scripts. * * Copyright (C) 2002 Roaring Penguin Software Inc. * * This plugin may be distributed according to the terms of the GNU * General Public License, version 2 or (at your option) any later version. * ***********************************************************************/ static char const RCSID[] = "$Id: radattr.c,v 1.2 2004/10/28 00:24:40 paulus Exp $"; #include "pppd.h" #include "radiusclient.h" #include <stdio.h> #ifndef MAXSESSIONID #define MAXSESSIONID 32 #endif #ifndef MAXCLASSLEN #define MAXCLASSLEN 500 #endif struct radius_state { int accounting_started; int initialized; int client_port; int choose_ip; int any_ip_addr_ok; int done_chap_once; u_int32_t ip_addr; char user[MAXNAMELEN]; char config_file[MAXPATHLEN]; char session_id[MAXSESSIONID + 1]; time_t start_time; int acct_interim_interval; SERVER *authserver; /* Authentication server to use */ SERVER *acctserver; /* Accounting server to use */ int class_len; char class[MAXCLASSLEN]; VALUE_PAIR *avp; /* Additional (user supplied) vp's to send to server */ }; extern void (*radius_attributes_hook)(VALUE_PAIR *, struct radius_state *rstate); static void print_attributes(VALUE_PAIR *, struct radius_state *rstate); static void cleanup(void *opaque, int arg); char pppd_version[] = VERSION; /********************************************************************** * %FUNCTION: plugin_init * %ARGUMENTS: * None * %RETURNS: * Nothing * %DESCRIPTION: * Initializes radattr plugin. ***********************************************************************/ void plugin_init(void) { radius_attributes_hook = print_attributes; #if 0 /* calling cleanup() on link down is problematic because print_attributes() is called only after PAP or CHAP authentication, but not when the link should go up again for any other reason */ add_notifier(&link_down_notifier, cleanup, NULL); #endif /* Just in case... */ add_notifier(&exitnotify, cleanup, NULL); info("RADATTR plugin initialized."); } /********************************************************************** * %FUNCTION: print_attributes * %ARGUMENTS: * vp -- linked-list of RADIUS attribute-value pairs * %RETURNS: * Nothing * %DESCRIPTION: * Prints the attribute pairs to /var/run/radattr.pppN. Each line of the * file contains "name value" pairs. ***********************************************************************/ static char *norm(char *s) { char *i; for (i=s; *i; i++) { if (*i=='-') *i='_'; } return s; } static void print_attributes(VALUE_PAIR *vp, struct radius_state *rstate) { FILE *fp; char fname[512]; char name[2048]; char value[2048]; int cnt = 0; slprintf(fname, sizeof(fname), "/var/run/pid.%d", getppid()); fp = fopen(fname, "w"); if (fp) { fprintf(fp,"%s\n",ifname); fclose(fp); } slprintf(fname, sizeof(fname), "/var/run/radattr.%s", ifname); fp = fopen(fname, "w"); if (!fp) { warn("radattr plugin: Could not open %s for writing: %m", fname); return; } fprintf(fp,"User_Name='%s'\n", rstate->user); for (; vp; vp=vp->next) { if (rc_avpair_tostr(vp, name, sizeof(name), value, sizeof(value)) < 0) { continue; } fprintf(fp, "%s='%s'\n", norm(name), norm(value)); cnt++; } fclose(fp); dbglog("RADATTR plugin wrote %d line(s) to file %s.", cnt, fname); } /********************************************************************** * %FUNCTION: cleanup * %ARGUMENTS: * opaque -- not used * arg -- not used * %RETURNS: * Nothing * %DESCRIPTION: * Deletes /var/run/radattr.pppN ***********************************************************************/ static void cleanup(void *opaque, int arg) { char fname[512]; slprintf(fname, sizeof(fname), "/var/run/pid.%d", getppid()); (void) remove(fname); slprintf(fname, sizeof(fname), "/var/run/radattr.%s", ifname); (void) remove(fname); dbglog("RADATTR plugin removed file %s.", fname); } изменил radattr.c, откомпилил и установил pppd (сначала для 2.4.4, затем и для 2.4.5), соотвественно откомпилил и установил accel-pptp 0.8.4... после запуска процесса в логах видим это: Nov 28 03:24:30 r-kupa213 pptpd[19660]: CTRL: Client 172.16.208.139 control connection started Nov 28 03:24:30 r-kupa213 pptpd[19660]: CTRL: Starting call (launching pppd, opening GRE) Nov 28 03:24:30 r-kupa213 pppd[19661]: Plugin /usr/lib/pppd/2.4.5/radius.so loaded. Nov 28 03:24:30 r-kupa213 pppd[19661]: RADIUS plugin initialized. Nov 28 03:24:30 r-kupa213 pppd[19661]: Plugin /usr/lib/pppd/2.4.5/radattr.so loaded. Nov 28 03:24:30 r-kupa213 pppd[19661]: RADATTR plugin initialized. Nov 28 03:24:30 r-kupa213 pptp[19661]: Plugin pptp.so loaded. Nov 28 03:24:30 r-kupa213 pptp[19661]: PPTP plugin version 0.8.4 compiled for pppd-2.4.5, linux-2.6.26 Nov 28 03:24:30 r-kupa213 pptp[19661]: pppd 2.4.5 started by root, uid 0 Nov 28 03:24:30 r-kupa213 pptp[19661]: Using interface ppp0 Nov 28 03:24:30 r-kupa213 pptp[19661]: Connect: ppp0 <--> pptp (172.16.208.139) Nov 28 03:24:30 r-kupa213 pptp[19661]: Fatal signal 11 Nov 28 03:24:30 r-kupa213 pptp[19661]: Exit. Nov 28 03:24:30 r-kupa213 pptpd[19660]: CTRL: Reaping child PPP[19661] Nov 28 03:24:30 r-kupa213 pptpd[19660]: CTRL: Client pppd TERM sending Nov 28 03:24:30 r-kupa213 pptpd[19660]: CTRL: Client pppd finish wait Nov 28 03:24:30 r-kupa213 pptpd[19660]: CTRL: Asked to free call when no call open, not handled well Nov 28 03:24:30 r-kupa213 pptpd[19660]: CTRL: Could not free Call ID [call clear]! Nov 28 03:24:30 r-kupa213 pptpd[19660]: CTRL: Got call clear request after call manually shutdown - buggy client Nov 28 03:24:30 r-kupa213 pptpd[19660]: CTRL: Client 172.16.208.139 control connection finished или так Nov 28 03:24:26 r-kupa213 pptpd[19628]: CTRL: Client 172.16.208.139 control connection started Nov 28 03:24:26 r-kupa213 pptpd[19628]: CTRL: Starting call (launching pppd, opening GRE) Nov 28 03:24:26 r-kupa213 pppd[19629]: Plugin /usr/lib/pppd/2.4.5/radius.so loaded. Nov 28 03:24:26 r-kupa213 pppd[19629]: RADIUS plugin initialized. Nov 28 03:24:26 r-kupa213 pppd[19629]: Plugin /usr/lib/pppd/2.4.5/radattr.so loaded. Nov 28 03:24:26 r-kupa213 pppd[19629]: RADATTR plugin initialized. Nov 28 03:24:26 r-kupa213 pptp[19629]: Plugin pptp.so loaded. Nov 28 03:24:26 r-kupa213 pptp[19629]: PPTP plugin version 0.8.4 compiled for pppd-2.4.5, linux-2.6.26 Nov 28 03:24:26 r-kupa213 pptp[19629]: pppd 2.4.5 started by root, uid 0 Nov 28 03:24:26 r-kupa213 pptp[19629]: Using interface ppp0 Nov 28 03:24:26 r-kupa213 pptp[19629]: Connect: ppp0 <--> pptp (172.16.208.139) Nov 28 03:24:26 r-kupa213 pptp[19593]: Fatal signal 11 включил debug: Nov 28 03:39:52 r-kupa213 pptpd[21570]: CTRL: Client 172.16.208.139 control connection started Nov 28 03:39:52 r-kupa213 pptpd[21570]: CTRL: Starting call (launching pppd, opening GRE) Nov 28 03:39:52 r-kupa213 pppd[21571]: Plugin /usr/lib/pppd/2.4.5/radius.so loaded. Nov 28 03:39:52 r-kupa213 pppd[21571]: RADIUS plugin initialized. Nov 28 03:39:52 r-kupa213 pppd[21571]: Plugin /usr/lib/pppd/2.4.5/radattr.so loaded. Nov 28 03:39:52 r-kupa213 pppd[21571]: RADATTR plugin initialized. Nov 28 03:39:52 r-kupa213 pptp[21571]: Plugin pptp.so loaded. Nov 28 03:39:52 r-kupa213 pptp[21571]: PPTP plugin version 0.8.4 compiled for pppd-2.4.5, linux-2.6.26 Nov 28 03:39:52 r-kupa213 pptp[21571]: pppd 2.4.5 started by root, uid 0 Nov 28 03:39:52 r-kupa213 pptp[21571]: using channel 3738 Nov 28 03:39:52 r-kupa213 pptp[21571]: Using interface ppp1 Nov 28 03:39:52 r-kupa213 pptp[21571]: Connect: ppp1 <--> pptp (172.16.208.139) Nov 28 03:39:52 r-kupa213 pptp[21571]: sent [LCP ConfReq id=0x1 <asyncmap 0x0> <auth chap MD5> <magic 0xd187535a> <pcomp> <accomp>] Nov 28 03:39:52 r-kupa213 pptp[21571]: rcvd [LCP ConfReq id=0x1 <mru 1400> <asyncmap 0x0> <magic 0xd84d1100> <pcomp> <accomp>] Nov 28 03:39:52 r-kupa213 pptp[21571]: sent [LCP ConfAck id=0x1 <mru 1400> <asyncmap 0x0> <magic 0xd84d1100> <pcomp> <accomp>] Nov 28 03:39:52 r-kupa213 pptp[21571]: rcvd [LCP ConfAck id=0x1 <asyncmap 0x0> <auth chap MD5> <magic 0xd187535a> <pcomp> <accomp>] Nov 28 03:39:52 r-kupa213 pptp[21571]: sent [LCP EchoReq id=0x0 magic=0xd187535a] Nov 28 03:39:52 r-kupa213 pptp[21571]: sent [CHAP Challenge id=0xf7 <3766653d108d2ee6e43a1393ba725e44d8>, name = "r-kupa213"] Nov 28 03:39:52 r-kupa213 pptp[21571]: rcvd [LCP EchoReq id=0x0 magic=0xd84d1100] Nov 28 03:39:52 r-kupa213 pptp[21571]: sent [LCP EchoRep id=0x0 magic=0xd187535a] Nov 28 03:39:52 r-kupa213 pptp[21571]: rcvd [LCP EchoRep id=0x0 magic=0xd84d1100] Nov 28 03:39:52 r-kupa213 pptp[21571]: rcvd [CHAP Response id=0xf7 <01dc27d2e34ec5498e14cc4ab0be71b7>, name = "pp_um"] Nov 28 03:39:52 r-kupa213 pptp[21571]: Fatal signal 11 Nov 28 03:39:52 r-kupa213 pptp[21571]: RADATTR plugin removed file /var/run/radattr.ppp1. Nov 28 03:39:52 r-kupa213 pptp[21571]: Exit. Nov 28 03:39:52 r-kupa213 pptpd[21570]: CTRL: Reaping child PPP[21571] Nov 28 03:39:52 r-kupa213 pptpd[21570]: CTRL: Client pppd TERM sending Nov 28 03:39:52 r-kupa213 pptpd[21570]: CTRL: Client pppd finish wait Nov 28 03:39:52 r-kupa213 pptpd[21570]: CTRL: Asked to free call when no call open, not handled well Nov 28 03:39:52 r-kupa213 pptpd[21570]: CTRL: Could not free Call ID [call clear]! Nov 28 03:39:52 r-kupa213 pptpd[21570]: CTRL: Got call clear request after call manually shutdown - buggy client Nov 28 03:39:52 r-kupa213 pptpd[21570]: CTRL: Client 172.16.208.139 control connection finished пробовал radattr.so откомпиленный руками подсунуть вместо "пакетного", естественно, был послан - fatal signal 11. в /etc/ppp/options.pptp прописывал noauth в самый конец файла, вместо signal 11 в логах Terminating with signal 15. подскажите, где "копать"?
  19. EvilShadow спасибо. разобрался.
  20. нет, именно mac.в парке есть сервер доступа, собранный не мной, передает mac-юзера в сессии. ip и так передается. EvilShadow спасибо за подсказку. сейчас смотрел бинарник pppd через редактор, там "каша" из символов. ваш скрипт в конец добавить или как-то иначе надо пересобрать pppd? в данный момент pppd установлен из пакета.
  21. подскажите, как собрать accel pptp чтобы в сессии отображался mac-адрес юзера.