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

Проблема с MPD5.2 валится периодически

Возникла проблема. 3 раза за сутки упал mpd c аналогичными симптомами. до этого работал с этим конфигом более 4-х месяцев

в чем может быть проблемка? куды копать?

логи и конфиг прилагаю ниже.

 

версия mpd 5.2, версия фри 7.1

 

конфиг мпд:

 

startup:

# enable TCP-Wrapper (hosts_access(5)) to block unfriendly clients

set global enable tcp-wrapper

# configure mpd users

set user admin bgggg

# configure the console

set console self 195.xx.xxx.xxx 5005

set console open

# configure the web server

# set web self 172.16.1.8 5006

set web open

# configure netflow

set netflow peer 195.xxx.xxx.xxx 9996

 

default:

set ippool add pool1 192.168.242.1 192.168.247.254

create bundle template B

set bundle enable compression

set ccp yes mppc

set mppc yes compress

set mppc yes e40

set mppc yes e56

set mppc yes e128

set mppc yes stateless

set iface idle 0

set iface mtu 1460

set iface enable tcpmssfix

set iface disable on-demand

set iface enable netflow-in

set iface enable netflow-out

set iface up-script /usr/local/etc/mpd5/scripts/pptp_up.sh

set iface down-script /usr/local/etc/mpd5/scripts/pptp_down.sh

set iface enable proxy-arp

set ipcp yes vjcomp

set ipcp dns 10.xxx.xxx.xxx 10.xxx.xxx.xxx

set ipcp ranges 192.168.255.254/32 ippool pool1

create link template L pptp

set link action bundle B

set link disable multilink

set link yes acfcomp protocomp

set link no pap chap

set link enable chap-md5

set link enable chap-msv2

set link enable chap-msv1

set link keep-alive 60 180

set link mtu 1460

set link mru 1460

set link enable incoming

set pptp disable windowing

set radius server 127.0.0.1 gthbvtnh 1812 1813

set radius retries 3

set radius timeout 8

set radius me 195.xxx.xxx.235

set auth enable radius-auth

# set auth enable radius-acct

[\CODE]

 

лог:

[code]

Mar 26 17:01:42 gw1 mpd: [L-26] LCP: protocol 0xfd92 was rejected

Mar 26 17:01:42 gw1 mpd: [L-26] LCP: rec'd Protocol Reject #12 (Req-Sent)

Mar 26 17:01:42 gw1 mpd: [L-26] LCP: protocol 0xfd92 was rejected

Mar 26 17:01:42 gw1 mpd: [L-30] LCP: rec'd Protocol Reject #45 (Req-Sent)

Mar 26 17:01:42 gw1 mpd: [L-30] LCP: protocol 0xfd92 was rejected

Mar 26 17:01:42 gw1 mpd: [L-30] LCP: rec'd Protocol Reject #46 (Req-Sent)

Mar 26 17:01:42 gw1 mpd: [L-30] LCP: protocol 0xfd92 was rejected

Mar 26 17:01:42 gw1 mpd: [L-28] CHAP: Auth return status: authenticated

Mar 26 17:01:42 gw1 mpd: [L-28] CHAP: Reply message: S=CF3858110EEC81305A48FCE6C7C96EED20748C6A

Mar 26 17:01:42 gw1 mpd: [L-28] CHAP: sending SUCCESS #1 len: 46

Mar 26 17:01:42 gw1 mpd: [L-28] LCP: authorization successful

Mar 26 17:01:42 gw1 mpd: [L-28] Link: Matched action 'bundle "B" ""'

Mar 26 17:01:42 gw1 mpd: [L-28] Creating new bundle using template "B".

Mar 26 17:01:42 gw1 mpd: [b-4] Bundle: Interface ng3 created

Mar 26 17:01:42 gw1 mpd: [L-28] Link: Join bundle "B-4"

Mar 26 17:01:42 gw1 mpd: [b-4] Bundle: Status update: up 1 link, total bandwidth 64000 bps

Mar 26 17:01:42 gw1 mpd: [b-4] IPCP: Open event

Mar 26 17:01:42 gw1 mpd: [b-4] IPCP: state change Initial --> Starting

Mar 26 17:01:42 gw1 mpd: [b-4] IPCP: LayerStart

Mar 26 17:01:42 gw1 mpd: [b-4] CCP: Open event

Mar 26 17:01:42 gw1 mpd: [b-4] CCP: state change Initial --> Starting

Mar 26 17:01:42 gw1 mpd: [b-4] CCP: LayerStart

Mar 26 17:01:42 gw1 mpd: [b-4] IPCP: Up event

Mar 26 17:01:42 gw1 mpd: [b-4] IPCP: state change Starting --> Req-Sent

Mar 26 17:01:42 gw1 mpd: [b-4] IPCP: SendConfigReq #1

Mar 26 17:01:42 gw1 mpd: [b-4] IPADDR 192.168.255.254

Mar 26 17:01:42 gw1 mpd: [b-4] COMPPROTO VJCOMP, 16 comp. channels, no comp-cid

Mar 26 17:01:42 gw1 mpd: [b-4] CCP: Up event

Mar 26 17:01:42 gw1 mpd: [b-4] CCP: state change Starting --> Req-Sent

Mar 26 17:01:42 gw1 mpd: [b-4] CCP: SendConfigReq #1

Mar 26 17:01:42 gw1 mpd: [b-4] MPPC

Mar 26 17:01:42 gw1 mpd: [b-4] 0x010000e0:MPPE(40, 56, 128 bits), stateless

Mar 26 17:01:42 gw1 mpd: [L-6] rec'd proto IPCP during authenticate phase

Mar 26 17:01:42 gw1 mpd: [L-3] rec'd proto IPCP during establishment phase

Mar 26 17:01:42 gw1 mpd: [L-3] LCP: rec'd Protocol Reject #53 (Ack-Sent)

Mar 26 17:01:42 gw1 mpd: [L-3] LCP: protocol CCP was rejected

Mar 26 17:01:42 gw1 mpd: [L-6] rec'd proto IPCP during authenticate phase

Mar 26 17:01:42 gw1 mpd: [L-6] LCP: rec'd Protocol Reject #74 (Opened)

Mar 26 17:01:42 gw1 mpd: [L-6] LCP: protocol CCP was rejected

Mar 26 17:01:42 gw1 mpd: caught fatal signal segv

Mar 26 17:01:42 gw1 mpd: fatal error, exiting

Mar 26 17:01:42 gw1 mpd: [b-1] IFACE: Close event

Mar 26 17:01:42 gw1 mpd: [b-1] IPCP: Close event

Mar 26 17:01:42 gw1 mpd: [b-1] IPCP: state change Opened --> Closing

Mar 26 17:01:42 gw1 mpd: [b-1] IPCP: SendTerminateReq #2

Mar 26 17:01:42 gw1 mpd: [b-1] IPCP: LayerDown

Mar 26 17:01:42 gw1 mpd: [b-1] IFACE: Down event

Mar 26 17:01:42 gw1 mpd: [b-1] CCP: Close event

Mar 26 17:01:42 gw1 mpd: [b-1] CCP: state change Stopped --> Closed

Mar 26 17:01:42 gw1 mpd: [b-2] IFACE: Close event

Mar 26 17:01:42 gw1 mpd: [b-2] IPCP: Close event

Mar 26 17:01:42 gw1 mpd: [b-2] IPCP: state change Opened --> Closing

Mar 26 17:01:42 gw1 mpd: [b-2] IPCP: SendTerminateReq #2

Mar 26 17:01:42 gw1 mpd: [b-2] IPCP: LayerDown

Mar 26 17:01:42 gw1 mpd: [b-2] IFACE: Down event

Mar 26 17:01:42 gw1 mpd: [b-2] CCP: Close event

Mar 26 17:01:42 gw1 mpd: [b-2] CCP: state change Stopped --> Closed

Mar 26 17:01:42 gw1 mpd: [b-3] IFACE: Close event

Mar 26 17:01:42 gw1 mpd: [b-3] IPCP: Close event

[\CODE]

Edited by Denis Samsonov

Share this post


Link to post
Share on other sites

PF включён?

(self) макрос используется?

 

Если оба да, то вы не одиноки :)

Share this post


Link to post
Share on other sites

PF используется только в качестве ната. файрволом и шейпером служит ipfw + dummynet

Share this post


Link to post
Share on other sites
PF включён?

(self) макрос используется?

 

Если оба да, то вы не одиноки :)

nas1# cat mpd.conf | grep self

set console self 10.1.1.2 5005

set web self 127.0.0.1 5006

set netflow self 10.1.1.2 8788

set pptp self 10.1.1.2

PF используется только в качестве ната. файрволом и шейпером служит ipfw + dummynet
+1, правда на последней
nas1# uname -a

FreeBSD nas1 7.1-RELEASE-p4 amd64

у Меня какие-то грабли были...Пользователи через нат нормально в нете сидят, а в онлайн игры играть не могут... Я посмотрел tcpdumpom, udp ходит сервер_онлайн_игры - мой_сервер, запрос_от_клиента мой_сервер, ответа нет... Попробовал просто дать Инет напрямую не через ВПН - онлайн игры тоже не работали :) И самое интересное - Я не знаю они вообще на 7.1 работали у Меня когда-то?...В общем ушел к ipfw-kernel-nat. И mpd5.2 перестал случайно падать...Вернее эта сволота не падала...просто повиснет - не убить, помогает только ребут...

 

nas1# cat /etc/pf.conf|grep -v #

ext_if="vlan20"

ext_if2="em0"

int_if="vr0"

table <local> { !192.168.0.0/16, !172.16.0.0/12, !10.0.0.0/8 }

table <inat> { 10.200.24.6 }

table <ext_ip> { 172.19.19.2,192.168.1.2 }

scrub in #включал, отключал - одын фыг

set skip on lo0

nat on $ext_if from <inat> -> {$ext_if:0}

pass all

Edited by weldpua2008

Share this post


Link to post
Share on other sites

Повисший намертво mpd - вроде как древняя байка. Глебиус отзывался дурно о нетграфе, говорил, что будут править. До сих пор, что ли нетграф вешается?

Share this post


Link to post
Share on other sites

вешается именно на 7.1 +mpd, на 7.0 +mpd все ок работает

Share this post


Link to post
Share on other sites

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

 

 

Share this post


Link to post
Share on other sites

Повисший намертво mpd - вроде как древняя байка. Глебиус отзывался дурно о нетграфе, говорил, что будут править. До сих пор, что ли нетграф вешается?

Вешался mpd... Звонят Мне, говорят ошибка 800 у пользователей, Я на сервер, там висит процесс...киляю - не киляется...подождал... пришлось перезапускать...

Share this post


Link to post
Share on other sites
Повисший намертво mpd - вроде как древняя байка. Глебиус отзывался дурно о нетграфе, говорил, что будут править. До сих пор, что ли нетграф вешается?
Вешался mpd... Звонят Мне, говорят ошибка 800 у пользователей, Я на сервер, там висит процесс...киляю - не киляется...подождал... пришлось перезапускать...

Именно так. Но то давно было. Я уже там не работаю, так, дома поковыриваю фряху слегка. А тогда не поленился на руснет к Глебу на поклон сходить, разузнать что да как. Сказал тогда, что в нетграфе косяки, отлавливают здоровенным бреднем. По идее, уже к 6.1 должны были поправить.

 

Кстати, тогда не только mpd не килялся, модуль с ядра не выгонялся. Совсем, даже метлой (-f).

Share this post


Link to post
Share on other sites

Кажется создавал топик.

У меня сервер из за мпд вешается намерво, в ситуации когда:

мпд конектит к инету по пппое

далее когда с инета клиент конектится по пптп к этому серверу то сервер перестаёт отвечать на всё...

Всё что было приконекчино к серверу отваливается, идёт только транзит в/с инета.

Share this post


Link to post
Share on other sites

3 НАСа с mpd4.4.1 + freebsd7.0 работают идеально (юзаем pptp+ng_car) по 500 сессий он-лайн на каждом.

Как только на одном из них попробовали mpd5.2, получили тот же результат, что и weldpua2008. С тех пор не вижу причин для перехода на mpd5.2.

Share this post


Link to post
Share on other sites
3 НАСа с mpd4.4.1 + freebsd7.0 работают идеально (юзаем pptp+ng_car) по 500 сессий он-лайн на каждом.

Как только на одном из них попробовали mpd5.2, получили тот же результат, что и weldpua2008. С тех пор не вижу причин для перехода на mpd5.2.

 

3 сервера на freebsd 7.1 + mpd 5.2 + ng_car + yandex em driver- все ок. Да, возился недели три, но сейчас проблем нет.

Share this post


Link to post
Share on other sites
3 НАСа с mpd4.4.1 + freebsd7.0 работают идеально (юзаем pptp+ng_car) по 500 сессий он-лайн на каждом.

Как только на одном из них попробовали mpd5.2, получили тот же результат, что и weldpua2008. С тех пор не вижу причин для перехода на mpd5.2.

 

3 сервера на freebsd 7.1 + mpd 5.2 + ng_car + yandex em driver- все ок. Да, возился недели три, но сейчас проблем нет.

какое кол-во онлайн ?

у меня 5.2 виснет на 7.0,7.1 , сейчас пробую откатиться до mpd4.4.1

все симтомы описаны здесь и здесь

Share this post


Link to post
Share on other sites

У меня тоже виснет , причем може при 200 сессий зависнуть а может и при 500 сессий. Система такая FreeBSD 7.1 , MPD 5.2 , IPFW, IPNAT , шэйпинг.

Причина зависания говорят в DUMMYNET.

Есть патч http://www.freebsd.org/cgi/cvsweb.cgi/src/...t/ip_dummynet.c

Может кто патчил, помогает ??

Share this post


Link to post
Share on other sites
3 НАСа с mpd4.4.1 + freebsd7.0 работают идеально (юзаем pptp+ng_car) по 500 сессий он-лайн на каждом.

Как только на одном из них попробовали mpd5.2, получили тот же результат, что и weldpua2008. С тех пор не вижу причин для перехода на mpd5.2.

 

3 сервера на freebsd 7.1 + mpd 5.2 + ng_car + yandex em driver- все ок. Да, возился недели три, но сейчас проблем нет.

какое кол-во онлайн ?

у меня 5.2 виснет на 7.0,7.1 , сейчас пробую откатиться до mpd4.4.1

все симтомы описаны здесь и здесь

От 800 до 2000. Dummynet пока не использую. Шейпинг на ng_car.

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

Share this post


Link to post
Share on other sites
От 800 до 2000. Dummynet пока не использую. Шейпинг на ng_car.

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

по какой причине devd отключать ?

тюнинг сброшен по умолчанию системы ?

Share this post


Link to post
Share on other sites

Присоеденюсь к вопросу Mechanic

Какой тюнинг был убран? Чем натите? На чем сервера?

И смысл отключения devd?

Share this post


Link to post
Share on other sites

1. С devd с поднятых ng интерфейсов теряются айпи. Трафик не ходит, соединения подвисают. Лечится отключением devd. Дальше не копал.

2. Тюнинг нужен только самый общий. Если интересно могу привести конфиг.

3. Заметил еще одну проблему - при включенном net.isr.direct=1 и em драйверами от Yandexa - mpd периодически уходит в ступор.

4. NAT не использую в принципе. Отказались очень давно.

5. 3 сервера на freebsd 7.1 + mpd 5.2 + ng_car + yandex em driver. Все сервера близнецы браться 2хXeon 5405/4 Gb RAM/

Share this post


Link to post
Share on other sites
1. С devd с поднятых ng интерфейсов теряются айпи. Трафик не ходит, соединения подвисают. Лечится отключением devd. Дальше не копал.

2. Тюнинг нужен только самый общий. Если интересно могу привести конфиг.

3. Заметил еще одну проблему - при включенном net.isr.direct=1 и em драйверами от Yandexa - mpd периодически уходит в ступор.

4. NAT не использую в принципе. Отказались очень давно.

5. 3 сервера на freebsd 7.1 + mpd 5.2 + ng_car + yandex em driver. Все сервера близнецы браться 2хXeon 5405/4 Gb RAM/

devd отключали полностью? Или както конфигурили?

На счет тюнинга- приведите конфиг пожалуйста.

Edited by alexcom

Share this post


Link to post
Share on other sites

Сегодня ночью перешел с Яндекс драйверов на поллинг

 

 

rc.conf - devd_enable="NO"

 

/etc/sysctl.conf

kern.ipc.somaxconn=16384        # ограничивает размер очереди для приема новых TCP соединений
net.inet.ip.fw.one_pass=0       # после пайпа опять возвращаться на следующее правило фаервола
net.inet.tcp.log_in_vain=0      # писать в логи, когда обращаются к портам без сервисов
net.inet.udp.log_in_vain=0      # писать в логи, когда обращаются к портам без сервисов
net.inet.udp.blackhole=0
net.inet.tcp.blackhole=0        # если 1, то SYN пакеты пришедшие на порты для которых нет
                                # активных сервисов, остаются без RST ответа, если 2,
                                # то на любые пакеты нет ответа (затрудняет сканирования портов
net.inet.tcp.nolocaltimewait=1  # не создания состояния TIME_WAIT для соединений в рамках localhost:
net.inet.tcp.sendspace=65535
net.inet.tcp.recvspace=65535
net.inet.ip.fw.autoinc_step=10
net.inet.ip.fastforwarding=1
net.isr.direct=1
net.inet.ip.rtmaxcache=16384
net.inet.ip.portrange.first=1024
net.inet.ip.portrange.last=65535
net.inet.ip.portrange.randomized=0
net.inet.tcp.syncookies=1
net.inet.tcp.nolocaltimewait=1
net.inet.ip.fw.verbose=1
net.inet.ip.fw.verbose_limit=5
net.inet.ip.fw.one_pass=0
net.inet.raw.maxdgram=65535
net.inet.raw.recvspace=65535
net.inet.icmp.icmplim=4000
net.inet.ip.intr_queue_maxlen=16384
net.route.netisr_maxqlen=16384
net.inet.tcp.rfc1323=1


#Polling
kern.polling.user_frac=10
kern.polling.idle_poll=1
kern.polling.each_burst=1000
kern.polling.burst_max=1000



dev.em.0.rx_int_delay=600
dev.em.0.tx_int_delay=600
dev.em.0.rx_abs_int_delay=1000
dev.em.0.tx_abs_int_delay=1000
dev.em.0.rx_processing_limit=4096

dev.em.1.rx_int_delay=600
dev.em.1.tx_int_delay=600
dev.em.1.rx_abs_int_delay=1000
dev.em.1.tx_abs_int_delay=1000
dev.em.1.rx_processing_limit=4096


# http://markmail.org/message/wpumnm2phciyhm7x#query:ngctl%3A%20send%20msg%3A%20No%20buffer%20space%20available+page:1+mid:vzjv2nuk3oiqyuqt+state:results
kern.ipc.maxsockbuf=8388608
net.graph.maxdgram=4194304
net.graph.recvspace=4194304

 

/boot/loader.conf

kern.maxusers=1024
kern.maxfiles=4096000
kern.maxfilesperproc=200000
ng_car_load="YES"
hw.em.rxd=4096
hw.em.txd=4096
kern.ipc.nmbclusters=524288
kernel="kernel.smp.pol"

 

Собственно все.

 

Но на этом сервере присутствует проблема с swi: net 100% загрузки....

 

Пока разбираюсь.

Edited by McLaut

Share this post


Link to post
Share on other sites

а что значит :

devd отключали полностью? Или както конфигурили?

в rc.conf пишем devd_enable=no

Share this post


Link to post
Share on other sites

Разгадка: сделать kern.polling.idle_poll=0 и никогда не включать обратно. Кроме того, параметры dev.em. имеют смысл только если используются прерывания, поллингу они ортогональны. Если это маршрутизатор, то незачем тюнить параметры буферов tcp, сокетов и открытых файлов. Он работает только с IP, а не принимает TCP-соединения.

Edited by photon

Share this post


Link to post
Share on other sites

Вообщем отключал devd, ставил mpd 5.3 (после 5.2).

Система- 7.1. (7.0, 6.4), amd64, SMP. pfnat+ipfw+dummynet. (Также пробовал ipfw nat в 7.х).

Пробовал и споллингом и без. Пробовал сетевые em (re,vr). (Для em пробовал и поллинг и драйвера от Яндекса).

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

Все равно через 8-10 часов система падает.

Видимо прийдется и дальше на poptop'e сидеть..

Edited by alexcom

Share this post


Link to post
Share on other sites

kern.polling.idle_poll=0 не отключает polling насовсем, а просто не делает его внутри CPU idle loop. Поллинг включается и отключается на сетевых интерфейсах c помощью ifconfig. Можно перепробовать все, что угодно, и не получать никаких результатов только из-за непонимания того, что делаешь.

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
Sign in to follow this