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

Мистика с PPTP принимаю любые предположения

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

 

Есть следующая лажа - в последнее время часто разрывается PPTP у клиентов.

 

На сервере ошибок нет, в радиусе - User-Request.

 

Принимаю любые идеи и предложения, что ещё бл проверить, т.к. у самого уже голова кругом идет.

 

В общем: Arch Linux, 2.6.31, pppd 2.4.5 (vanilla + gigawords), pptpd 1.3.4 (vanilla). Одна встроенная сетевая (sic!), на ней весь трафик.

 

Сейчас подозреваю сетевую, однако ещё месяц назад при таком же раскладе всё отлично работало.

 

В общем, жду идей. Даже самых странных, на грани бреда.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Вирусы у клиентов. Левый софт. Ещё какая-то дрянь с клиентской стороны.

Опрашивайте звонящих на предмет установленного софта и составляйте базу для анализа.

Попробуй соорудить другой сервер pptpd (на другой ОС/дистрибутиве), раскидайте соединения поровну по ним и смотрите, есть ли какая-то зависимость разрывов от того, на какой сервер он попал.

Изменено пользователем EvilShadow

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Часто клинты любят эксперементировать и ставить Windows от Zver.Были случаи когда отсутсвовал ВПН и браузер в сборке.

Чаще встречается недо-сетевая служба-подключается и отключается по не выясненным причинам.

7ки и Висты тоже имели магические оссобенности.

 

Поэтому выяснять что у пользователя там стоит,и посылать гонца сносить недо-софт

Изменено пользователем g7001

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Всё чаще грешу на вирусы (судя по всему - эпидемия какой-то новой разновидности Kido).

Вообще пока придумали такой вариант: заводить черный список софта (уже в списке: NOD 3/4, все Касперские), рекомендовать сносить, а особо ревностным - давать на недельку поюзать заведомо безглючный роутер, дабы доказать, что проблема в их компьютере.

 

Но, увы, с такими раскладами народ очень сразу складывает о нас негативное мнение.

 

Кстати, специально для 7-к у меня поднят паралельно РРРоЕ. Как костыль.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Кстати, специально для 7-к у меня поднят паралельно РРРоЕ. Как костыль.
А у меня наоборот - pptp поднят как костыль. Вместо pppoe :)

Недавно убрал accel-pptp, который где-то раз в месяц вешал сервера, поселил вместо него обычный user-level pptpd - количество переключений контекста сразу подскочило в разы. Теперь вот буду пытаться использовать pptp только для тех случаев, когда pppoe по каким-то причинам использовать невозможно. Благо, бОльшая часть абонентов уже переведена на pppoe.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Кстати, специально для 7-к у меня поднят паралельно РРРоЕ. Как костыль.
А у меня наоборот - pptp поднят как костыль. Вместо pppoe :)

Недавно убрал accel-pptp, который где-то раз в месяц вешал сервера, поселил вместо него обычный user-level pptpd - количество переключений контекста сразу подскочило в разы. Теперь вот буду пытаться использовать pptp только для тех случаев, когда pppoe по каким-то причинам использовать невозможно. Благо, бОльшая часть абонентов уже переведена на pppoe.

Короче, из огня да в полымя :-D.

Думаю над L2TP. На примере Корбины - оно себя ведёт куда адекватней.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Короче, из огня да в полымя :-D.
Да, как-то так. Впрочем, на моих масштабах и в моих условиях туннели рулят и бибикают.

А pptp на pppoe я сменил по таким причинам:

1. Зависимость pptp от dns, т.е. ещё одна точка отказа. Без dns никак нельзя, ибо это самый простой способ балансировки соединений.

2. Неприятные особенности поведения WinXP. По умолчанию для pptp она ставит mtu 1400, что иногда приводит к неочевидным последствиям.

3. Обкатанный kernel-level pppoe сервер. User-level pptpd даёт неоправданно высокую нагрузку, а accel-pptp ещё не настолько стабилен, чтоб поставить и забыть.

4. Большая надёжность pppoe, проистекающая из его бродкастовой сути. Например, есть два сервера pptp: x.x.x.x и y.y.y.y. У клиентов в качестве pptp-сервера указан какой-нибудь vpn.loc. DNS отдаёт на это имя два адреса, которые используются по кругу. В случае падения одного из серверов в 50% случаев клиент будет стучаться на мёртвый сервер и получать ошибки. В то же время, если падает один из двух pppoe-серверов, клиент на бродкастовый запрос получает ответ только от оставшегося и соответственно будет пытаться подключиться только к нему.

5. Да и вообще простые решения мне нравятся больше, чем сложные. А pppoe архитектурно проще.

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

По-моему как раз самое правильное - собирать статистику по клиентскому По и оборудованию для данных проблем. Как вариант - домашние роутеры клиентов, при приличных каналах вовне нагрузка на них ложится тоже соответствующая, особенно в свете pptp (а также всяких торрентов и мютп в оных), соотв-но под 100% загрузом цпу рутера у него сносит башню и сессия рвется.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Лично у меня дома D-Link DIR-300/NRU + OpenWrt - полёт отличный.

Всё-таки буду собирать статистику. Сегодня ещё должна приехать сетевуха на 82576, буду пробовать.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

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

 

Есть следующая лажа - в последнее время часто разрывается PPTP у клиентов.

 

На сервере ошибок нет, в радиусе - User-Request.

 

Принимаю любые идеи и предложения, что ещё бл проверить, т.к. у самого уже голова кругом идет.

 

В общем: Arch Linux, 2.6.31, pppd 2.4.5 (vanilla + gigawords), pptpd 1.3.4 (vanilla). Одна встроенная сетевая (sic!), на ней весь трафик.

 

Сейчас подозреваю сетевую, однако ещё месяц назад при таком же раскладе всё отлично работало.

 

В общем, жду идей. Даже самых странных, на грани бреда.

были похожие проблемы, избавились перейдя на freebsd + mpd

mpd работает четко, потребеление памяти существенно ниже, можно настроить одновременно на pptp, pppoe, l2tp

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

1. Зависимость pptp от dns, т.е. ещё одна точка отказа. Без dns никак нельзя, ибо это самый простой способ балансировки соединений.
Посоветуйте - где почитать про балансировку с помощью dns?

 

2. Неприятные особенности поведения WinXP. По умолчанию для pptp она ставит mtu 1400, что иногда приводит к неочевидным последствиям.
Что за последствия и как лечится?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

1. Зависимость pptp от dns, т.е. ещё одна точка отказа. Без dns никак нельзя, ибо это самый простой способ балансировки соединений.
Посоветуйте - где почитать про балансировку с помощью dns?

Где почитать - не знаю. Но делается это так:

ac A x.x.x.1

ac A x.x.x.2

ac A x.x.x.3

У клиента сервером прописан ac, при подключении днс-сервер отдаёт ему сразу пачку адресов по кругу. Соответственно, один клиент пойдёт на первый сервер, другой - на второй и т.д.

2. Неприятные особенности поведения WinXP. По умолчанию для pptp она ставит mtu 1400, что иногда приводит к неочевидным последствиям.
Что за последствия и как лечится?

У меня был случай, когда у клиента на хостинге в интернетах MSS был всегда 1400 байт, что с учётом заголовков превышало MTU для клиентского pptp-туннеля. Вылечилось использованием pppoe у клиента :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Поменял сегодня сетевую. Поставил сразу, не жлобясь, 82756 ;). Будем смотреть, что из этого получилось.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

У меня был случай, когда у клиента на хостинге в интернетах MSS был всегда 1400 байт, что с учётом заголовков превышало MTU для клиентского pptp-туннеля. Вылечилось использованием pppoe у клиента :)
Т.е. для pptp это не лечится?

 

Но делается это так:

ac A x.x.x.1

ac A x.x.x.2

ac A x.x.x.3

У клиента сервером прописан ac, при подключении днс-сервер отдаёт ему сразу пачку адресов по кругу. Соответственно, один клиент пойдёт на первый сервер, другой - на второй и т.д.

Почему другой пойдет на второй ас? При такой схеме получается скорее "горячее резервирование", а не балансировка. Или я что-то не допонял.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Т.е. для pptp это не лечится?
Лечится ковырянием виндового реестра. Но проще объяснить, как настроить pppoe, чем что где изменить в реестре.
Но делается это так:

ac A x.x.x.1

ac A x.x.x.2

ac A x.x.x.3

У клиента сервером прописан ac, при подключении днс-сервер отдаёт ему сразу пачку адресов по кругу. Соответственно, один клиент пойдёт на первый сервер, другой - на второй и т.д.

Почему другой пойдет на второй ас? При такой схеме получается скорее "горячее резервирование", а не балансировка. Или я что-то не допонял.

Потому что round-robin. При первом запросе клиент получит

x.x.x.1

x.x.x.2

x.x.x.3

При втором

x.x.x.3

x.x.x.1

x.x.x.2

При третьем

x.x.x.2

x.x.x.3

x.x.x.1

И т.д.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Лечится ковырянием виндового реестра. Но проще объяснить, как настроить pppoe, чем что где изменить в реестре.

У нас на сети только pptp. Так что совет "настроить pppoe" не подходит. Или может быть можно на одной кошке (она у нас pptp терминирует) поднять еще и ppoe одновременно с pptp с авторизацией через один и тот же радиус?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

странная у вас какая то проблема с MTU

-A FORWARD -p tcp --syn -j TCPMSS --set-mss 1350

и все... А если еще почитать ман - то даже от циферки можно избавиться ;)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

странная у вас какая то проблема с MTU

-A FORWARD -p tcp --syn -j TCPMSS --set-mss 1350

и все... А если еще почитать ман - то даже от циферки можно избавиться ;)

Не всё. В моём случае удалённый узел мало интересовался, какой MSS предложит ему клиент и ВСЕГДА выставлял 1400.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

странная у вас какая то проблема с MTU

-A FORWARD -p tcp --syn -j TCPMSS --set-mss 1350

и все... А если еще почитать ман - то даже от циферки можно избавиться ;)

Не всё. В моём случае удалённый узел мало интересовался, какой MSS предложит ему клиент и ВСЕГДА выставлял 1400.

Это правило перепакует пакеты.

Я сталкивался с неработоспособностью некоторых сайтов где стоит больно хитрый IIS. Это правило помогло.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Что значит "перепакует"?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

У меня был случай, когда у клиента на хостинге в интернетах MSS был всегда 1400 байт, что с учётом заголовков превышало MTU для клиентского pptp-туннеля. Вылечилось использованием pppoe у клиента :)

Для начала ICMP траффик резать не нужно было в обе стороны.

В MPD5 есть "set iface enable tcpmssfix" (оно цепляет ng_ одноимённый)

В PF есть "scrub out on $ext_if0 all max-mss 1400"

в совсем исключительных случаях "scrub in all no-df", но по идее портит PMTU дискавери.

scrub прописываются по принципу: срабатывает первое правило под которое попал пакет.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

У меня был случай, когда у клиента на хостинге в интернетах MSS был всегда 1400 байт, что с учётом заголовков превышало MTU для клиентского pptp-туннеля. Вылечилось использованием pppoe у клиента :)

Для начала ICMP траффик резать не нужно было в обе стороны.

В MPD5 есть "set iface enable tcpmssfix" (оно цепляет ng_ одноимённый)

В PF есть "scrub out on $ext_if0 all max-mss 1400"

в совсем исключительных случаях "scrub in all no-df", но по идее портит PMTU дискавери.

scrub прописываются по принципу: срабатывает первое правило под которое попал пакет.

Для начала - не беритесь судить, не зная фактов. Режу я только smtp, да и то выборочно. Так что Ваше "не нужно было" - полная ерунда.

Что что-то есть в MPD5 - это просто чудесно, но ставить Фрю ради одной программы я не намерен.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Нашёл в логах вот такую фигню. PPTP:

Apr  6 11:46:13 sax pptpd[24874]: CTRL: Client 10.2.0.200 control connection started
Apr  6 11:46:13 sax pptpd[24874]: CTRL: Starting call (launching pppd, opening GRE)
Apr  6 11:46:13 sax pptpd[24874]: GRE: Bad checksum from pppd.
Apr  6 11:47:19 sax pptpd[24874]: CTRL: EOF or bad error reading ctrl packet length.
Apr  6 11:47:19 sax pptpd[24874]: CTRL: couldn't read packet header (exit)
Apr  6 11:47:19 sax pptpd[24874]: CTRL: CTRL read failed
Apr  6 11:47:19 sax pptpd[24874]: CTRL: Reaping child PPP[24875]
Apr  6 11:47:19 sax pptpd[24874]: CTRL: Client 10.2.0.200 control connection finished

PPP:

Apr  6 11:46:13 sax pppd[24875]: Plugin radius.so loaded.
Apr  6 11:46:13 sax pppd[24875]: RADIUS plugin initialized.
Apr  6 11:46:13 sax pppd[24875]: Plugin radattr.so loaded.
Apr  6 11:46:13 sax pppd[24875]: RADATTR plugin initialized.
Apr  6 11:46:13 sax pppd[24875]: pppd 2.4.5 started by root, uid 0
Apr  6 11:46:13 sax pppd[24875]: Using interface ppp182
Apr  6 11:46:13 sax pppd[24875]: Connect: ppp182 <--> /dev/pts/159
Apr  6 11:46:14 sax pppd[24875]: Cannot determine ethernet address for proxy ARP
Apr  6 11:46:14 sax pppd[24875]: local  IP address 10.0.0.6
Apr  6 11:46:14 sax pppd[24875]: remote IP address x.x.x.x
Apr  6 11:47:19 sax pppd[24875]: LCP terminated by peer (User request)
Apr  6 11:47:19 sax pppd[24875]: Connect time 1.1 minutes.
Apr  6 11:47:19 sax pppd[24875]: Sent 116 bytes, received 76 bytes.
Apr  6 11:47:19 sax pppd[24875]: Modem hangup
Apr  6 11:47:19 sax pppd[24875]: Connection terminated.
Apr  6 11:47:19 sax pppd[24875]: Exit.

 

ЧЯДНТ?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 смайлов.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.