URL: https://www.opennet.ru/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 87358
[ Назад ]

Исходное сообщение
"mpd5 freebsd 7.* один пров несколько линков"

Отправлено KENTus , 20-Ноя-09 00:28 
Копался копался, но не выкопал.
Проблема следующая: имеется сервер FreeBSD 7.2 (AMD64), на нем стоит mpd 5.3. Не могу заставить работать несколько линков mpd (допустим 2) на одного провайдера. Все дело в том, что когда один интерфейс поднимается, то второй подняться не может по причине уже имеющегося шлюза в таблице маршрутизации, может быть где-то еще. Пользовался setfib - безрезультатно. Как мне заставить это все работать?
Похожую тему на форуме читал (https://www.opennet.ru/openforum/vsluhforumID1/85558.html), но не помогло, в интернете мейллисты почитал тоже - результатов нет.

Что я пробовал:
1. Запускаю mpd: setfib 6 ...mpd5 start
подключение есть, имеем:
ng0: flags=88d1<UP,POINTOPOINT,RUNNING,NOARP,SIMPLEX,MULTICAST> metric 0 mtu 1460
inet 10.10.1.244 --> 10.10.0.1 netmask 0xffffffff
не смотря на наличие опции в конфиге "set iface up-script ..." с содержимым "route delete 10.10.0.1", во всех таблицах маршрутизации маршрут остается.
На всякий случай делаю ручками: route delete 10.10.0.1 и setfib 7 route delete 10.10.0.1 (заготовка 7 таблицы под другой мпд). Проверяю - netstat -rn | grep 10.10.0.1 - чисто, в 7-й также, при этом в 6-й все на месте.
Запускаю еще один мпд с другим конфигом: setfib 7 ...mpd5_test start
подключение есть, имеем:
ng1: flags=88d1<UP,POINTOPOINT,RUNNING,NOARP,SIMPLEX,MULTICAST> metric 0 mtu 1500
т.е. тунель поднялся (флаг UP), но конфы нет и не робит (дело точно не в конфе).
в АП-скрипте: route add $4 -gateway 10.10.0.236 (пробовал route add $4 -interface $1 - тоже самое).
проверяем таблицу маршрутизации:
netstat -rn| grep 10.10.0.1:
     10.10.0.1          10.10.1.244        UH          0        0    ng0
setfib 6 netstat -rn| grep 10.10.0.1:
     10.10.0.1          10.10.1.244        UH          0        0    ng0
setfib 7 netstat -rn| grep 10.10.0.1:
     10.10.0.1          10.10.1.244        UH          0        0    ng1
в чем дело не понимаю.

2. Пробовал multilink:
Один конфиг, один мпд:
default:
        load director
        load test

director:
        create bundle static director_B
        set iface enable tcpmssfix
        set ipcp ranges 0.0.0.0/0 0.0.0.0/0

        create link static director_L pptp
        set link action bundle director_B
        set link enable multilink
        set auth authname login
        set auth password pass
        set link mtu 1460
        set link keep-alive 20 75
        set pptp peer 1.1.1.1
        open

test:
        create link static test_L pptp
        set link action bundle director_B
        set link enable multilink
        set auth authname login2
        set auth password pass2
        set link mtu 1460
        set link keep-alive 20 75
        set pptp peer 1.1.1.1
        open

Итог: поднимается интерфейс ng0 с конфой (в смысле IP) для login1, через секунду с конфой login2, потом снова для login1 и так постоянно...
Сервер куда я цеплялся также стоит на фре (6.4 i386), mpd5.2, link enable multilink в конфе имеется.

Цель подключить не к этому серву с мпд5.2, а просто к прову, у него там циска, но активирован ли на ней multilink - я хз.

Ищу помощи в этом вопросе, может кто сталкивался и подскажут рабочие конфиги или куда смотреть.


Содержание

Сообщения в этом обсуждении
"mpd5 freebsd 7.* один пров несколько линков"
Отправлено QuAzI , 20-Ноя-09 01:45 
bundle static, link static... вы mpd.conf.sample на пример multilink читали? Где там static?

"mpd5 freebsd 7.* один пров несколько линков"
Отправлено KENTus , 20-Ноя-09 02:11 
>bundle static, link static... вы mpd.conf.sample на пример multilink читали? Где там
>static?

с этим понял спасибо
что делать если multilink не поддерживается у провайдера? или такое обычно не бывает?


"mpd5 freebsd 7.* один пров несколько линков"
Отправлено KENTus , 20-Ноя-09 04:02 
>>bundle static, link static... вы mpd.conf.sample на пример multilink читали? Где там
>>static?
>
>с этим понял спасибо
>что делать если multilink не поддерживается у провайдера? или такое обычно не
>бывает?

попробовал я template bundle, а линк бывает либо static, либо forward. В примерах именно статик. Результат такое же - сначала первый цепляется, затем второй цепляется - первый отцепляется
вот что в логах в момент смены:
Nov 20 03:59:47 cryonic mpd: [director_L] CHAP: Using authname "login1"
Nov 20 03:59:47 cryonic mpd: [director_L] CHAP: sending RESPONSE #1 len: 63
Nov 20 03:59:47 cryonic mpd: [director_L] CHAP: rec'd SUCCESS #1 len: 46
Nov 20 03:59:47 cryonic mpd: [director_L]   MESG: S=59ACF8F510DBCDE0E8D9ABFEEC1669820AA32C47
Nov 20 03:59:47 cryonic mpd: [director_L] LCP: authorization successful
Nov 20 03:59:47 cryonic mpd: [director_L] Link: Join bundle "test_B-1"
Nov 20 03:59:47 cryonic mpd: [test_B-1] Bundle: Status update: up 2 links, total bandwidth 128000 bps
Nov 20 04:00:06 cryonic mpd: [test_L] LCP: rec'd Terminate Request #2 (Opened)
Nov 20 04:00:06 cryonic mpd: [test_L] LCP: state change Opened --> Stopping
Nov 20 04:00:06 cryonic mpd: [test_L] Link: Leave bundle "test_B-1"
Nov 20 04:00:06 cryonic mpd: [test_B-1] Bundle: Status update: up 1 link, total bandwidth 64000 bps
Nov 20 04:00:06 cryonic mpd: [test_L] LCP: SendTerminateAck #26
Nov 20 04:00:06 cryonic mpd: [test_L] LCP: LayerDown
Nov 20 04:00:06 cryonic mpd: [test_L] PPTP call terminated
Nov 20 04:00:06 cryonic mpd: [test_L] Link: DOWN event
Nov 20 04:00:06 cryonic mpd: [test_L] LCP: Down event
Nov 20 04:00:06 cryonic mpd: [test_L] LCP: state change Stopping --> Starting
Nov 20 04:00:06 cryonic mpd: [test_L] Link: reconnection attempt 1 in 4 seconds
Nov 20 04:00:07 cryonic mpd: [director_L] LCP: rec'd Terminate Request #2 (Opened)
Nov 20 04:00:07 cryonic mpd: [director_L] LCP: state change Opened --> Stopping
Nov 20 04:00:07 cryonic mpd: [director_L] Link: Leave bundle "test_B-1"
Nov 20 04:00:07 cryonic mpd: [test_B-1] Bundle: Status update: up 0 links, total bandwidth 9600 bps

туда-сюда меняет постоянно.


"mpd5 freebsd 7.* один пров несколько линков"
Отправлено QuAzI , 20-Ноя-09 08:41 
Значит мультилинк не ваш случай.

"mpd5 freebsd 7.* один пров несколько линков"
Отправлено PavelR , 20-Ноя-09 07:35 
>не смотря на наличие опции в конфиге "set iface up-script ..." с содержимым "route
>delete 10.10.0.1", во всех таблицах маршрутизации маршрут остается.

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


"mpd5 freebsd 7.* один пров несколько линков"
Отправлено KENTus , 20-Ноя-09 11:55 
>>не смотря на наличие опции в конфиге "set iface up-script ..." с содержимым "route
>>delete 10.10.0.1", во всех таблицах маршрутизации маршрут остается.
>
>отключите установку шлюза по умолчанию в конфиге подключения.
>после подключения, скриптом up-script выставьте нужный шлюз в нужную таблицу.

шлюз по умолчанию не встает, он отключен и проблема не в нем. Шлюз по умолчанию это все просто...
Должно быть два интерфейса: ng0 и ng1 с разными ипами, но одинаковыми шлюзами (это же соединение точка точка), а из-за того что шлюзы одинаковые - второй, третий и т.д. линки не поднимаются:
ng0: flags=88d1<UP,POINTOPOINT,RUNNING,NOARP,SIMPLEX,MULTICAST> metric 0 mtu 1460
inet 10.10.1.244 --> 10.10.0.1 netmask 0xffffffff

netstat -rn| grep 10.10.0.1:
     10.10.0.1          10.10.1.244        UH          0        0    ng0


"mpd5 freebsd 7.* один пров несколько линков"
Отправлено KENTus , 20-Ноя-09 11:57 
т.е. получается что не может быть второго маршрута в таблице вида:
    10.10.0.1          10.10.0.236        UH          0        0    ng1

т.к. уже один 10.10.0.1 имеется, удаление этого маршрута из все таблиц (setfib ... route delete ...) не решает вопроса (см. начало темы).


"mpd5 freebsd 7.* один пров несколько линков"
Отправлено samspeed , 27-Янв-10 00:00 
по сейчас есть такая проблема. временно решил установкой маршрутизатора с НАТом :(, но это хреновый метод. путь проделал примерно тот же самый. причина на мой взгляд в том что setfib не действует на MPD. в 8х и 9х тоже не работает.

"mpd5 freebsd 7.* один пров несколько линков"
Отправлено samspeed , 18-Окт-10 12:56 
с помощью RADIX_MPATH решил проблему