The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  ВХОД  слежка  RSS
"Mpd dialup multilink"
Вариант для распечатки  
Пред. тема | След. тема 
Форумы OpenNET: Виртуальная конференция (Public)
Изначальное сообщение [Проследить за развитием треда]

"Mpd dialup multilink" 
Сообщение от Wraith emailИскать по авторуВ закладки(ok) on 29-Сен-05, 22:40  (MSK)
Доброго времени суток.Прошу помощи, ситуация такова:
Есть два сервера под FreeBSD на одной стороне 4.5 mpd сервер, на другой 3.2(еле живой) mpd_3.18 клиент. Связанны они между собой по двум модемам мультилинком. Требуется заменить сервер 3.2 на систему допустим я пробую на 5.2.1 и настроить заного mpd клиент с мультилинком. Какую бы систему, кроме 3.2 которая сейчас используется, не ставили , происходит следующая ситуация. Начинается дозвон до другой стороны, раза с третьего он происходит (там все время синхронизация Lcp бажит я так понимаю
LCP: state change Req-Sent -->
Ack-Sent
mpd: [pptp0] LCP: SendConfigReq #5
и так раз 10 и после этого дисконнект). Но суть проблемы не в этом. Устанавливается соединение минуты на 2-5 и пропадает связь, а модемы горят, моргают. Дефалтный роут который получается при соединении пропадает... и все линк не рабочий (хотя соединение есть, интер-с показан что поднят. И что бы не делали какую бы системы не ставили (кроме 3.2, но не юзать же ее) , всегда одно и тоже.

Подскажите пожалуйста чем можете :)
Заранее благодарен.

  Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

 Оглавление

Индекс форумов | Темы | Пред. тема | След. тема
Сообщения по теме

1. "Mpd dialup multilink" 
Сообщение от mironmiron Искать по авторуВ закладки(ok) on 30-Сен-05, 04:24  (MSK)

как выглядит конфиг mpd?
авторизация какая, логин скрипт и тд
  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

2. "Mpd dialup multilink" 
Сообщение от Wraith emailИскать по авторуВ закладки(??) on 30-Сен-05, 11:49  (MSK)
>
>как выглядит конфиг mpd?
>авторизация какая, логин скрипт и тд
Так начнем - FreeBSD 5.2.1 (клиент) собрано ядро с настройками:
options         NETGRAPH
options         NETGRAPH_ASYNC
options         NETGRAPH_BPF
options         NETGRAPH_ECHO
options         NETGRAPH_CISCO
options         NETGRAPH_ETHER
options         NETGRAPH_HOLE
options         NETGRAPH_IFACE
options         NETGRAPH_KSOCKET
options         NETGRAPH_L2TP
options         NETGRAPH_LMI
options         NETGRAPH_MPPC_ENCRYPTION
options         NETGRAPH_ONE2MANY
options         NETGRAPH_PPP
options         NETGRAPH_PPPOE
options         NETGRAPH_PPTPGRE
options         NETGRAPH_RFC1490
options         NETGRAPH_SOCKET
options         NETGRAPH_TEE
options         NETGRAPH_TTY
options         NETGRAPH_UI
options         NETGRAPH_VJC

Mpd версии 3.18 -
mpd.conf:

default:
        load multi
multi:
        new -i ng0 multi usr1 usr2
        set iface route default
        set iface disable on-demand
        set iface idle 900
        set bundle authname login
        set bundle disable compression
        set ipcp ranges 0.0.0.0/0 193.232.8.68/24
        set ipcp yes vjcomp
        set link disable chap pap
        set link accept chap pap
        set link yes acfcomp protocomp
        link usr1
        set modem script DialPeer
        set modem var $Telephone "p29280"
        link usr2
        set modem script DialPeer
        set modem var $Telephone "p29162"
        open iface

mpd.links:
usr1:
        set link type modem
        set modem speed 57600
        set modem device /dev/cuaa0
        set modem var $DialPrefix "DT"
usr2:
        set link type modem
        set modem speed 57600
        set modem device /dev/cuaa1
        set modem var $DialPrefix "DT"

mpd.scripts:
DialPeer:
        if $Telephone == "00000" goto DialNullModem
        set $optimize $OptimizeNextTime
        set $OptimizeNextTime "no"

        if $optimize == "yes" goto DialPeer2
        call ModemFind
        if $ErrorMsg == "" goto DialPeer1
        log $ErrorMsg
        failure
DialPeer1:
        set $ModTelephone $Telephone
        call ModemIdent
        if $ModemDescription != "" goto DialPeer2
        log "The modem is not responding."
        failure

DialPeer2:
        log "Detected $ModemDescription."
        call $ModemSetupFunc
        log "Dialing server at $Telephone..."
        call ModemDial
        if $dialResult == "OK" goto DialPeerOK
        set $optimize "no"
        failure

DialPeerOK:
        if $ConnectionSpeed == "" log "Connected at an unknown speed."
        if $ConnectionSpeed == "" goto DialPeer3
        log "Connected at $ConnectionSpeed."
Ну и mpd.secrets - там логин пароль.

FreeBSD 4.5 (сервер, собирал не я) в ядре просто прописанно options NETGRAPH (может из-за этого?)

mpd версия 3.6
mpd.conf:
default:
        load TVC
        load log-minimal
        open

TVC:
        set login AdminLogin
        new -i ng0 TVC L29280 L29162
        set bundle authname TVC
        set bundle enable multilink
#       set iface addrs 193.232.8.68 193.232.214.1
        set iface route 193.232.214.0/24
        set iface route 193.232.29.0/24
        set iface idle 900
        set ipcp ranges 0.0.0.0/0 193.232.29.1/0
        set ipcp yes vjcomp
        set link no chap
        set link enable pap
        set link yes acfcomp protocomp
        set link keep-alive 10 60
#        set modem idle-script AnswerCall
log-normal:
        log +bund +link +chat +lcp +auth +fsm +phys +ipcp

log-minimal:
        log -all +bund +link +auth

mpd.links:
L29162:
        set link type modem
        set modem device /dev/cuaa0
        set modem speed 115200
        set link latency 100000
        set link bandwidth 33600
        set modem watch -cd
        set link yes acfcomp protocomp
        set link no chap
        set link enable pap
        set modem script answer-ring
        set modem var $InitString "B0M0S0=4S2=0S10=100"
        set modem var $Timeout 600
L29280:
        set link type modem
        set modem device /dev/cuaa1
        set modem speed 115200
        set link latency 100000
        set link bandwidth 33600
        set modem watch -cd
        set link yes acfcomp protocomp
        set link no chap
        set link enable pap
        set modem script answer-ring
        set modem var $InitString "B0M0S0=4S2=0S10=100"
        set modem var $Timeout 600

mpd.script:
answer-ring:
        log "calling answer-ring..."
        set $moreInit "S0=4"
        call InitModem
        log "waiting for ring..."
        call GetRing
        failure
ну и стандартный mpd.secrets

Рабочий конфиг с FreeBSD 3.2 (клиент) (работает не через ng а через tun)
версия mpd 1.0b5 :)
mpd.conf:
default:
        load SR2
SR2:
        load log-normal
        set login AdminLogin
        new SR1 LINE0 LINE1
        set bundle authname VPK
        set bundle enable multilink
#       set bundle disable compression
        set bundle disable bw-manage
        set bundle idle 0
#       set iface addrs 193.232.214.69 193.232.8.68
        set iface route default
        set ipcp yes vjcomp
        set ipcp ranges 0.0.0.0/0 193.232.8.68/24
        #set ccp yes pred1
        open
mpd.links:
LINE1:
        set link type modem
        set link device /dev/cuaa0
        set modem speed 115200
        set link latency 100000
        set link bandwidth 33600
        set modem watch +cd
        set link yes acfcomp protocomp
        set link accept pap
        set link no chap
        set modem script direct-dial
        set modem var $InitString "B1M1X7&R2&H0S10=100&N0"
        set modem var $Telephone "29280"
        set modem var $Timeout 600
        #set ccp yes pred1
LINE0:
        set link type modem
        set link device /dev/cuaa1
        set modem speed 115200
        set link latency 100000
        set link bandwidth 33600
        set modem watch +cd
        set link yes acfcomp protocomp
        set link accept pap
        set link no chap
        set modem script direct-dial
        set modem var $InitString "B1M1X7&R2&H0S10=100&N0"
        set modem var $Telephone "29162"
        set modem var $Timeout 600
        #set ccp yes pred1

mpd.script:
direct-dial:
        if $Timeout == "" set $Timeout 50
        log "initializing modem..."
        set $moreInit ""
        call InitModem
        log "dialing peer at $Telephone..."
        call DialModem
        failure

и mpd.secrets

  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

3. "Mpd dialup multilink" 
Сообщение от mironmiron Искать по авторуВ закладки(??) on 01-Окт-05, 13:02  (MSK)

обрати внимание на разницу между старым и новым клиентскими конфигами

старый конфиг / новый конфиг
----------------------------------------------------------------------
set bundle authname VPK / set bundle authname login
set login adminlogin / не установлен

нету / set link disable chap pap
set link accept pap / set link accept chap pap
set link no chap (disable,deny) / нету

нету / set bundle disable compression
set bundle disable bw-manage / нету
set modem watch +cd / нету

по степени важности сверху-вниз (как мне кажется)

- в новом странный authname. он совпадает с тем что в mpd.secrets?
- в старом есть "set login", в новом нет (хотя мне кажется что он не нужен)
- убедись что у тебя на обоих концах работает ТОЛЬКО pap-авторизация (что-то я не очень уверен)

и вообще чего-то скрипты неоправданно усложнены. может упростить попробуешь?

да и во время настройки это помогает баги искать. от простого к сложному. как заработало начинай "улучшать"-усложнять. попробуй без мультилинка, просто по одному модему. если ничего не поможет, загрузи generic ядро.
вобчем так.

  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

4. "Mpd dialup multilink" 
Сообщение от Wraith emailИскать по авторуВ закладки(ok) on 01-Окт-05, 15:00  (MSK)
Login это я просто для примера написал.
Насчет расхождений в конфиге - как вы могли заметить там стоят разные версии mpd, в связи с этим немного меняется синтаксис команд.
Насчет авторизации - врятли, ведь происходит коннект и все работает в течении неопределенного временя, потом падет.
Проверяли под разным линиям - все хорошо, глюки возникают только при поднятия мультилинка.

  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

5. "Mpd dialup multilink" 
Сообщение от mironmiron Искать по авторуВ закладки(ok) on 01-Окт-05, 16:32  (MSK)

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

authname тоже для примера? его параметр совпадает с тем что в secrets находится?

кстати о различиях. отмеченные отличия не зависят от версий. set login или authname так же как и pap/chap не изменились. в одном из конфигов chap запрещен,в другом нет.

может все-таки попробовать сделать так чтобы конфиги делали одно и то же?

------
если дело в сбитой маршрутизации, и пакетики не бегают, то соединение должно разрываться ч-з 15 минут по idle (тоже кстати в старом конфиге 0, а в новом 15 мин)
-----
в старом конфиге модемам устанавливается init string. возможно это влияет на качество связи. также контролируется несущая.
-----
у меня похожая с первоначальным описанием проблема была с ppp. pap/chap авторизация. модемы соединялись, минуту-две обменивались какими-то пакетиками (моргали и по логам ppp) и благополучно разрывали связь. решилось все удалением set login и явным указанием authname и authkey в конфиге.

  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

6. "Mpd dialup multilink" 
Сообщение от Wraith emailИскать по авторуВ закладки(??) on 01-Окт-05, 22:26  (MSK)
Спасибо огромное за советы.
По поводу о том что все работает - да - устанавливается связь, начинают пинговаться удаленные узлы, работает инет, но после некоторого времени пропадает связь, линк есть и модемы моргают и все такое...
Насчет pap chap - мне казалось строки вида:
set link disable chap pap
set link accept chap pap
позволяют использовать либо то либо то без явного отключения какого-либо метода - я не прав?
authname и authkey - думаю вопрос отпадает так как происходит соединение.

в старом конфиге модемам устанавливается init string. возможно это влияет на качество связи. также контролируется несущая - можно по подробнее?

  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

7. "Mpd dialup multilink" 
Сообщение от mironmiron Искать по авторуВ закладки(??) on 02-Окт-05, 01:24  (MSK)

в старом конфиге:
set modem watch +cd - пасти несущую
set modem var $InitString "B1M1X7&R2&H0S10=100&N0" - строка инициализации модема. что она означает точно не могу сказать. можешь поискать список команд своего модема в интырнете. мне кажется или у тебя курьеры? или в терминалке (не иксовой, а модемной :) набрать at$ (кажется). кстати в какчестве терминалки можно попробовать старый-добрый нортон из под доса. у него есть такая штука.

два параметра специально для мультилинка:
set link latency 100000
set link bandwidth 33600

по идее нужен:
set link type modem

есть еще какие-то. посмотри в /usr/share/doc/mpd
если коннект плохой можно попробовать уменьшить MTU/MRU. по дефолту кажется 1500, можно поставить 576

  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

8. "Mpd dialup multilink" 
Сообщение от Wraith emailИскать по авторуВ закладки(ok) on 03-Окт-05, 00:26  (MSK)
Да у меня курьеры :)
Буду пробывать.
Спасибо.
Кстати подскажите что за фигня - пробывал ставить на FreeBSD 4.5 MPD 3.18 - нефига не собирается сначала выдает:
Warning: Object directory not changed from original /usr/ports/net/mpd_3.18/work/mpd-3.18/src
cc -O -pipe    -I/usr/include -DPATH_CONF_DIR=\"/usr/local/etc/mpd\" -DSYSLOG_FACILITY=LOG_DAEMON -DMPD_VERSION='"3.18 (root@sr2.vpk.ru 00:28  3-Oct-2005)"' -g -Wall  -Wcast-align  -Wchar-subscripts  -Wformat  -Winline  -Wmissing-declarations  -Wmissing-prototypes  -Wnested-externs  -Wpointer-arith  -Wwrite-strings -DPHYSTYPE_MODEM -DPHYSTYPE_UDP -DPHYSTYPE_NG_SOCKET -DPHYSTYPE_PPTP '-DPPTP_VENDOR_NAME="FreeBSD mpd-3.18"' -DPHYSTYPE_PPPOE -DENCRYPTION_DES -DENCRYPTION_MPPE -DCOMPRESSION_MPPC   -c pppoe.c
pppoe.c: In function `PppoeCtrlReadEvent':
pppoe.c:380: `NGM_PPPOE_SESSIONID' undeclared (first use in this function)
pppoe.c:380: (Each undeclared identifier is reported only once
pppoe.c:380: for each function it appears in.)
pppoe.c:381: warning: unreachable code at beginning of switch statement
pppoe.c:400: `NGM_PPPOE_ACNAME' undeclared (first use in this function)
*** Error code 1

Stop in /usr/ports/net/mpd_3.18/work/mpd-3.18/src.
*** Error code 1

Stop in /usr/ports/net/mpd_3.18/work/mpd-3.18.
*** Error code 1

Stop in /usr/ports/net/mpd_3.18.
*** Error code 1

Stop in /usr/ports/net/mpd_3.18.
*** Error code 1

Stop in /usr/ports/net/mpd_3.18.
Я убираю полностью PPPoE
начинаю заного, потом вываливается ошибка с файлом console.c, ее убираю
и понеслась в одном файле в другом куча ошибок лезет. Пробывал и из портов и из сырцов... а обновить то хочется :(

  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

9. "Mpd dialup multilink" 
Сообщение от Wraith Искать по авторуВ закладки(ok) on 09-Окт-05, 00:40  (MSK)
Конфиги подправил, соединение происходит теперь отлично, но главная проблема так и осталась. Ставил 4.5 и мпд 3.6  как и на той стороне, переносил полностью конфиги с рабочей машины (Фря 3.1 которая) ,менял местами сервер клиент (то есть менял местами кто кому звонит и принимает звонки) ситуация ничуть не изменилась. В воскресенье поеду на площадку сервера буду ставить новую систему на другую машину и все с нуля... если не заработает тогда не знаю... застрелиться остается))
Написал разрабочикам - молчат.
  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

10. "Mpd dialup multilink" 
Сообщение от kim emailИскать по авторуВ закладки(??) on 09-Окт-05, 00:55  (MSK)
IMHO незачем default router _2_ раза  ...
секция мульти отыгрывает два раза ...
в качастве експеримента можно поднять без оного а потом прописать руками,
если прокатит - подставить "костыли" :)

>Конфиги подправил, соединение происходит теперь отлично, но главная проблема так и осталась.
>Ставил 4.5 и мпд 3.6  как и на той стороне,
>переносил полностью конфиги с рабочей машины (Фря 3.1 которая) ,менял местами
>сервер клиент (то есть менял местами кто кому звонит и принимает
>звонки) ситуация ничуть не изменилась. В воскресенье поеду на площадку сервера
>буду ставить новую систему на другую машину и все с нуля...
>если не заработает тогда не знаю... застрелиться остается))
>Написал разрабочикам - молчат.


  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

11. "Mpd dialup multilink" 
Сообщение от Wraith Искать по авторуВ закладки(??) on 09-Окт-05, 01:07  (MSK)
Большое спасибо за ответ,
Не совсем понял про default router _2_ раза - это где в конфиге
? или тот который статически прописывается на машине?
И что за костыли?:) (Прошу меня простить если туплю, но голова уже в связи с этими событиями - на протяжении уже двух недель безвылазно мучаюсь, не варит)
  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх


Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Оцените тред (1=ужас, 5=супер)? [ 1 | 2 | 3 | 4 | 5 ]
Пожалуйста, прежде чем написать сообщение, ознакомьтесь с данными рекомендациями.




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру