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

Исходное сообщение
"Как поднять несколько подключений PPPoE через MPD"

Отправлено hsasha , 08-Июн-09 18:24 
Нужно на FreeBSD поднять несколько клиентских PPPoE подключений к провайдеру Укртелеком через ADSL. Используя стандартный PPP корректно можно поднять только одно подключение из-за того что шлюз одинаковый для обоих подключений неполучаеться завернуть корректно траффик на ipfw fwd через другое PPPoE соединение. Поэтому решено использовать MPD.
Каким образом его настроить на 2 подключения, и как заворачивать траффик на другое подключение через ipfw fwd?

Содержание

Сообщения в этом обсуждении
"Как поднять несколько подключений PPPoE через MPD"
Отправлено Аноним , 08-Июн-09 23:32 
Первая мысль использовать что то типа виртуальных окружений?



"Как поднять несколько подключений PPPoE через MPD"
Отправлено mAdDuke , 09-Июн-09 04:07 
>Используя стандартный PPP корректно можно поднять только одно подключение из-за
>того что шлюз одинаковый для обоих подключений неполучаеться завернуть корректно траффик
>на ipfw fwd через другое PPPoE соединение. Поэтому решено использовать MPD.

C год примерно работал на двух соединениях к одному и тому же провайдеру через стандартный ppp. Всё заворачиволось и подключалось.


"Как поднять несколько подключений PPPoE через MPD"
Отправлено Deac , 09-Июн-09 11:44 
>Нужно на FreeBSD поднять несколько клиентских PPPoE подключений к провайдеру Укртелеком через
>ADSL. Используя стандартный PPP корректно можно поднять только одно подключение из-за
>того что шлюз одинаковый для обоих подключений неполучаеться завернуть корректно траффик
>на ipfw fwd через другое PPPoE соединение. Поэтому решено использовать MPD.
>
>Каким образом его настроить на 2 подключения, и как заворачивать траффик на
>другое подключение через ipfw fwd?

Лучшее решение - multilink, требуется поддержка со стороны провайдера.


"Как поднять несколько подключений PPPoE через MPD"
Отправлено den , 09-Июн-09 12:13 
startup:
        # configure mpd users
        set user admin blabla
        # configure the console
        set console self 127.0.0.1 5005
        set console open
        # configure the web server
        set web self 0.0.0.0 5006
        set web open


default:
        load pppoe_l1
        load pppoe_l2

pppoe_l1:
        create bundle static B1
        set iface route default
        set ipcp ranges 0.0.0.0/0 0.0.0.0/0
        set bundle disable compression

        create link static L1 pppoe
        set link action bundle B1
        set link enable multilink
        set auth authname test
        set auth password test_pass
        #set set link bandwidth
        set link max-redial 0
        set link mtu 1492
        set link keep-alive 10 60
        set pppoe iface em0
        set pppoe service ""
        open

pppoe_l2:

        create link static L2 pppoe
        set link action bundle B1
        set link enable multilink
        set auth authname test
        set auth password test_pass
        #set set link bandwidth
        set link max-redial 0
        set link mtu 1492
        set link keep-alive 10 60
        set pppoe iface rl1
        set pppoe service ""
        open


"Как поднять несколько подключений PPPoE через MPD"
Отправлено hsasha , 10-Авг-09 23:18 
А как потом завернуть траффик через ipfw на pppoe_l2 подключение? ipfw требует указания IP адреса шлюза, однако проблема в том что IP адрес шлюза динамический. Как можно задать для ipfw в команде fwd не IP адрес шлюза а адрес интерфейса?

"Как поднять несколько подключений PPPoE через MPD"
Отправлено hsasha , 22-Авг-09 23:16 
Фигня какая-то получаеться - линки не могут быть с одинаковыми шлюзами!
[B1] IFACE: Adding IPv4 address to ng0 failed: File exists
[B1] IFACE: IfaceChangeAddr() error, closing IPCP
[B1] IPCP: parameter negotiation failed
[B1] IPCP: state change Opened --> Stopping
[B1] IPCP: SendTerminateReq #4
[B1] IPCP: LayerDown
[B1] IPCP: rec'd Terminate Ack #4 (Stopping)
[B1] IPCP: state change Stopping --> Stopped
[B1] IPCP: LayerFinish

Что делать?

Пробовал даже через ppp http://opennet.ru/openforum/vsluhforumID1/83103.html
тоже самое... фря не пропускает линки с одинаковыми шлюзами!!!


"Как поднять несколько подключений PPPoE через MPD"
Отправлено hsasha , 23-Авг-09 21:15 
Выкладываю конфиги:
Конфиг ppp.conf

default:
  set log Phase tun command # you can add more detailed logging if you wish
  set device PPPoE:rl1 # replace xl1 with your Ethernet device
  set dial
  set login
  set mru 1492
  set mtu 1492
  set speed sync
  set timeout 0
  set redial 0 0
  set reconnect 3 0
  disable ipv6cp
uplink1:
  set ifaddr 10.0.0.3/0 10.0.0.4/0 255.255.255.255 0.0.0.0
  set authname login1
  set authkey pass1
uplink2:
  set ifaddr 10.0.0.5/0 10.0.0.6/0 255.255.255.255 0.0.0.0
  set authname login2
  set authkey pass2

Конфиг mpd.conf

startup:
        #configure mpd users
        #set user vpngod 12345 admin
        # configure the console
        set console self 127.0.0.1 5005
        set console open
        # configure the web server
        #set web self 192.168.0.5 5006
        #set web open
        #set netflow peer 127.0.0.1 9996

default:
        load pppoe_l1
        load pppoe_l2

pppoe_l1:
        create bundle static B1
        set iface enable nat
        set iface route default
        set ipcp ranges 0.0.0.0/0 0.0.0.0/0

        create link static L1 pppoe
        set link action bundle B1
        set auth authname login1
        set auth password pass1
        set link max-redial 0
        set link mtu 1492
        set link keep-alive 10 60
        set pppoe iface rl1
        set pppoe service ""
        open

pppoe_l2:

        create bundle static B2
        set iface enable nat
        #set iface route default
        set ipcp ranges 0.0.0.0/0 0.0.0.0/0

        create link static L2 pppoe
        set link action bundle B2
        set auth authname login2
        set auth password pass2
        set link max-redial 0
        set link mtu 1492
        set link keep-alive 10 60
        set pppoe iface rl0
        set pppoe service ""
        open



"Как поднять несколько подключений PPPoE через MPD"
Отправлено hsasha , 06-Сен-09 00:11 
Неужели никто не знает как побороть эту проблему?

"Как поднять несколько подключений PPPoE через MPD"
Отправлено hsasha , 20-Сен-09 01:27 
Проблема ещё актуальна, как её решить? Подскажите, пожалуйста!


"Как поднять несколько подключений PPPoE через MPD"
Отправлено grayich , 02-Окт-09 16:06 
>Проблема ещё актуальна, как её решить? Подскажите, пожалуйста!

freebsd 7.x + setfib


"Как поднять несколько подключений PPPoE через MPD"
Отправлено hsasha , 10-Окт-09 18:51 
>>Проблема ещё актуальна, как её решить? Подскажите, пожалуйста!
>
>freebsd 7.x + setfib

Проблема в том что при подключении через PPPoE к провайдеру выдаеться динамический IP и может быть разный шлюз, как передавать эти параметры от ppp демона для setfib для обновления таблиц маршрутизации?


"Как поднять несколько подключений PPPoE через MPD"
Отправлено grayich , 10-Окт-09 19:06 
>Проблема в том что при подключении через PPPoE к провайдеру выдаеться динамический
>IP и может быть разный шлюз, как передавать эти параметры от
>ppp демона для setfib для обновления таблиц маршрутизации?

вот к примеру мой скрипт
set iface up-script "/usr/local/etc/mpd5/up.sh"


#!/bin/sh
if [ "$1" = "ng0" ]
then
        /sbin/ipfw nat 1 delete
        /sbin/ipfw nat 1 config if $1 same_ports
fi
if [ "$1" = "ng1" ]
then
        /usr/sbin/setfib -1 /sbin/route delete default
        /usr/sbin/setfib -1 /sbin/route add default $4

        /sbin/ipfw nat 2 delete
        /sbin/ipfw nat 2 config if $1 same_ports
fi
exit 0



"Как поднять несколько подключений PPPoE через MPD"
Отправлено hsasha , 24-Янв-10 15:17 
Все получилось! Спасибо grayich за скрипт!
Теперь занимаюсь другой проблемой https://www.opennet.ru/openforum/vsluhforumID1/87949.html

"Как поднять несколько подключений PPPoE через MPD"
Отправлено abdulla_drps , 16-Апр-10 04:49 
>Все получилось! Спасибо grayich за скрипт!
>Теперь занимаюсь другой проблемой https://www.opennet.ru/openforum/vsluhforumID1/87949.html

можете выложить netstat -rn после поднятия первого интерфейса и после второго.
у моего провайдера два шлюза, два pppoe подключаются, третье не хочет

[L2] PPPoE connection timeout after 9 seconds