MPD5 FreeBSD8

Проблемы установки, настройки и работы Правильной Операционной Системы

Модератор: terminus

Правила форума
Убедительная просьба юзать теги [cоde] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
QuAzI
мл. сержант
Сообщения: 79
Зарегистрирован: 2009-08-04 16:41:09

MPD5 FreeBSD8

Непрочитанное сообщение QuAzI » 2009-11-21 13:29:25

Есть конфиг.

Код: Выделить всё

pppoe_quazi:
        create bundle static B2
        set iface route default
        set iface up-script /usr/local/etc/mpd5/up_quazi.sh
        set iface down-script /usr/local/etc/mpd5/down_quazi.sh
        set iface enable tcpmssfix
        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 "login"
        set auth password "pass"
        set link max-redial 0
        set link mtu 1460
        set link keep-alive 10 60
        set pppoe iface nfe0
        set pppoe service ""
        open

pppoe_guest:
        create bundle static B1
        set iface up-script /usr/local/etc/mpd5/up_guest.sh
        set iface down-script /usr/local/etc/mpd5/down_guest.sh
        set iface enable tcpmssfix
        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 "login"
        set auth password "pass"
        set link max-redial 0
        set link mtu 1460
        set link keep-alive 10 60
        set pppoe iface nfe0
        set pppoe service ""
        open
Он вроде работает, но работает раз через раз. Один раз запущу, поднимутся ng0 и ng1, маршруты поднимаются из скриптов, всё красиво. В следующий раз может один из интерфейсов не подняться, причём наугад. В логах
Nov 21 11:18:24 QUAZIS mpd: [B1] IPCP: rec'd Configure Reject #4 (Req-Sent)
Nov 21 11:18:24 QUAZIS mpd: [B1] COMPPROTO VJCOMP, 16 comp. channels, no comp-cid
Nov 21 11:18:24 QUAZIS mpd: [B1] IPCP: SendConfigReq #5
Nov 21 11:18:24 QUAZIS mpd: [B1] IPADDR 0.0.0.0
Nov 21 11:18:24 QUAZIS mpd: [B1] IPCP: rec'd Configure Nak #5 (Req-Sent)
Nov 21 11:18:24 QUAZIS mpd: [B1] IPADDR 1.3.114.21
Nov 21 11:18:24 QUAZIS mpd: [B1] 1.3.114.21 is OK
Nov 21 11:18:24 QUAZIS mpd: [B1] IPCP: SendConfigReq #6
Nov 21 11:18:24 QUAZIS mpd: [B1] IPADDR 1.3.114.21
Nov 21 11:18:25 QUAZIS mpd: [B1] IPCP: rec'd Configure Ack #6 (Req-Sent)
Nov 21 11:18:25 QUAZIS mpd: [B1] IPADDR 1.3.114.21
Nov 21 11:18:25 QUAZIS mpd: [B1] IPCP: state change Req-Sent --> Ack-Rcvd
Nov 21 11:18:27 QUAZIS mpd: [B1] IPCP: state change Ack-Rcvd --> Req-Sent
Nov 21 11:18:27 QUAZIS mpd: [B1] IPCP: SendConfigReq #7
Nov 21 11:18:27 QUAZIS mpd: [B1] IPADDR 1.3.114.21
Nov 21 11:18:27 QUAZIS mpd: [B1] IPCP: rec'd Configure Ack #7 (Req-Sent)
Nov 21 11:18:27 QUAZIS mpd: [B1] IPADDR 1.3.114.21
Nov 21 11:18:27 QUAZIS mpd: [B1] IPCP: state change Req-Sent --> Ack-Rcvd
Nov 21 11:18:27 QUAZIS mpd: [B1] IPCP: rec'd Configure Request #1 (Ack-Rcvd)
Nov 21 11:18:27 QUAZIS mpd: [B1] IPADDR 82.209.200.37
Nov 21 11:18:27 QUAZIS mpd: [B1] 82.209.200.37 is OK
Nov 21 11:18:27 QUAZIS mpd: [B1] IPCP: SendConfigAck #1
Nov 21 11:18:27 QUAZIS mpd: [B1] IPADDR 82.209.200.37
Nov 21 11:18:27 QUAZIS mpd: [B1] IPCP: state change Ack-Rcvd --> Opened
Nov 21 11:18:27 QUAZIS mpd: [B1] IPCP: LayerUp
Nov 21 11:18:27 QUAZIS mpd: [B1] 1.3.114.21 -> 82.209.200.37
Nov 21 11:18:27 QUAZIS mpd: [B1] IFACE: Adding IPv4 address to ng0 failed: File exists
Nov 21 11:18:27 QUAZIS mpd: [B1] IFACE: IfaceChangeAddr() error, closing IPCP
Nov 21 11:18:27 QUAZIS mpd: [B1] IPCP: parameter negotiation failed
Nov 21 11:18:27 QUAZIS mpd: [B1] IPCP: state change Opened --> Stopping
Nov 21 11:18:27 QUAZIS mpd: [B1] IPCP: SendTerminateReq #8
Nov 21 11:18:27 QUAZIS mpd: [B1] IPCP: LayerDown
Nov 21 11:18:27 QUAZIS mpd: [B1] IPCP: rec'd Terminate Ack #8 (Stopping)
Nov 21 11:18:27 QUAZIS mpd: [B1] IPCP: state change Stopping --> Stopped
Nov 21 11:18:27 QUAZIS mpd: [B1] IPCP: LayerFinish
Nov 21 11:18:27 QUAZIS mpd: [B1] Bundle: No NCPs left. Closing links...
Вывод ifconfig
ng0: flags=88d1<UP,POINTOPOINT,RUNNING,NOARP,SIMPLEX,MULTICAST> metric 0 mtu 1500
ng1: flags=88d1<UP,POINTOPOINT,RUNNING,NOARP,SIMPLEX,MULTICAST> metric 0 mtu 1460
inet 93.85.196.19 --> 82.209.200.37 netmask 0xffffffff
Тоесть видно что поднялось два интерфейса. Ng0 адрес получил, но не присвоил и в логе "IFACE: Adding IPv4 address to ng0 failed: File exists", второй интерфейс адрес получил (причём адреса РАЗНЫЕ) и с ним всё красиво. В следующий раз может быть с точностью до наоборот - первый поднимется, второй с такой же диагностикой откажется запускаться.
Таблица маршрутизации
QUAZIS# netstat -rn
Routing tables

Internet:
Destination Gateway Flags Refs Use Netif Expire
default 82.209.200.37 UGS 0 571 ng1
82.209.200.37 link#6 UH 0 12 ng1
93.85.196.230 link#6 UHS 0 1 lo0
127.0.0.1 link#3 UH 0 227 lo0
192.168.0.0/24 link#1 U 5 79342 nfe0
192.168.0.1 link#1 UHS 0 150114 lo0
Гейтвей неподнявшегося интерфейса - 82.209.200.36.
Борюсь пока скриптом, который проверяет наличие обоих маршрутов и если какого-то нет, перезапускает mpd, но это не вариант - перезапускается всё что работает через mpd, а так же при нескольких неудачных логинах провайдер блокирует на 10 минут подключение.
До этого на 7-ой ветке FreeBSD оба pppoe-подключения работали через ppp. В 8-ой ветке пришлось от него отказаться так как при переподключении в логах писало что routed не может удалить старый маршрут, по ifconfig видел с полсотни адресов и маршрутов к ним на одном интерфейсе, само подключение не работало, а routed грузил процессор почти на 100%. Сижу, жду 8-RELEASE, буду пробовать назад на ppp перейти, если никто не подскажет, что с MPD делать :(

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

Гость
проходил мимо

Re: MPD5 FreeBSD8

Непрочитанное сообщение Гость » 2009-11-21 19:08:35

Nov 21 11:18:27 QUAZIS mpd: [B1] 1.3.114.21 -> 82.209.200.37
Nov 21 11:18:27 QUAZIS mpd: [B1] IFACE: Adding IPv4 address to ng0 failed: File exists
Nov 21 11:18:27 QUAZIS mpd: [B1] IFACE: IfaceChangeAddr() error, closing IPCP
Nov 21 11:18:27 QUAZIS mpd: [B1] IPCP: parameter negotiation failed
ng0: flags=88d1<UP,POINTOPOINT,RUNNING,NOARP,SIMPLEX,MULTICAST> metric 0 mtu 1500
ng1: flags=88d1<UP,POINTOPOINT,RUNNING,NOARP,SIMPLEX,MULTICAST> metric 0 mtu 1460
inet 93.85.196.19 --> 82.209.200.37 netmask 0xffffffff
MPD не при чем внимательно смотрите в лог

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

QuAzI
мл. сержант
Сообщения: 79
Зарегистрирован: 2009-08-04 16:41:09

Re: MPD5 FreeBSD8

Непрочитанное сообщение QuAzI » 2009-11-21 19:41:05

Прикольный провайдер "БелТелеком", его саппорт не поймёт таких умных слов.
С другой стороны у меня на данный момент
QUAZIS# ifconfig
nfe0: flags=8943<UP,BROADCAST,RUNNING,PROMISC,SIMPLEX,MULTICAST> metric 0 mtu 1500
options=8<VLAN_MTU>
ether 00:1a:4d:7f:de:a4
inet 192.168.0.1 netmask 0xffffff00 broadcast 192.168.0.255
media: Ethernet autoselect (100baseTX <full-duplex>)
status: active
plip0: flags=8810<POINTOPOINT,SIMPLEX,MULTICAST> metric 0 mtu 1500
lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> metric 0 mtu 16384
options=3<RXCSUM,TXCSUM>
inet6 fe80::1%lo0 prefixlen 64 scopeid 0x3
inet6 ::1 prefixlen 128
inet 127.0.0.1 netmask 0xff000000
tap0: flags=8802<BROADCAST,SIMPLEX,MULTICAST> metric 0 mtu 1500
ether 00:bd:84:1f:00:00
ng0: flags=88d1<UP,POINTOPOINT,RUNNING,NOARP,SIMPLEX,MULTICAST> metric 0 mtu 1460
inet 1.3.116.97 --> 82.209.200.37 netmask 0xffffffff
ng1: flags=88d1<UP,POINTOPOINT,RUNNING,NOARP,SIMPLEX,MULTICAST> metric 0 mtu 1460
inet 93.85.193.206 --> 82.209.200.36 netmask 0xffffffff
Непонятно, почему у MPD при переподключении (а т.к. set max redial 0 он постоянно пытается переподключиться) получаются эти же параметры, но если перезапустить всего демона, то параметры приходят в норму (Как и получилось сейчас - подняты оба интерфейса).

Гость
проходил мимо

Re: MPD5 FreeBSD8

Непрочитанное сообщение Гость » 2009-11-21 19:45:04

ng0: flags=88d1<UP,POINTOPOINT,RUNNING,NOARP,SIMPLEX,MULTICAST> metric 0 mtu 1460
inet 1.3.116.97 --> 82.209.200.37 netmask 0xffffffff
ng1: flags=88d1<UP,POINTOPOINT,RUNNING,NOARP,SIMPLEX,MULTICAST> metric 0 mtu 1460
inet 93.85.193.206 --> 82.209.200.36 netmask 0xffffffff
как видите сечас айпишники разные

QuAzI
мл. сержант
Сообщения: 79
Зарегистрирован: 2009-08-04 16:41:09

Re: MPD5 FreeBSD8

Непрочитанное сообщение QuAzI » 2009-11-21 20:10:32

Вижу что разные, хочу понять почему они становятся разные только когда я MPD перезапускаю. Если бы это был косяк провайдера и каждый раз выдавались разные IP в качестве гейтвея, то это проходило бы прозрачно для меня, в порядке реконнекта самого MPD. Мне кажется что у MPD проблема с таблицами и периодически его клинит и он гейтвей выданный одному интерфейсу предлагает и для второго.

Гость
проходил мимо

Re: MPD5 FreeBSD8

Непрочитанное сообщение Гость » 2009-11-21 20:16:44

нет это не проблема MPD
это провайдер так выдает

а вот почему он выдает один раз два разных а второй раз два одинаковых это вопрос к провайдеру
предполагаю что там какойто железное оборудование которое криво отконфигурировано

попробуйте на mpd включить мультилинк
хз что будет
но попробуйте

QuAzI
мл. сержант
Сообщения: 79
Зарегистрирован: 2009-08-04 16:41:09

Re: MPD5 FreeBSD8

Непрочитанное сообщение QuAzI » 2009-11-21 21:39:52

Я по другому извратился.

Код: Выделить всё

pppoe_quazi:
        set ipcp ranges 0.0.0.0/0 82.209.200.36

pppoe_guest:
        set ipcp ranges 0.0.0.0/0 82.209.200.37
Конечно если провайдер опять поменяет гейтвеи (а такое раза 4 уже было за пару лет), мне будет не весело и придётся ручками править настройки, но это лучше чем костыльный скрипт.

Гость
проходил мимо

Re: MPD5 FreeBSD8

Непрочитанное сообщение Гость » 2009-11-21 21:45:26

ну можно и так
просто это не всегда срабатывает
и некоторые серверы pppoe напроч разрывают соединение если им предлагают какойто айпи со стороны клииента

QuAzI
мл. сержант
Сообщения: 79
Зарегистрирован: 2009-08-04 16:41:09

Re: MPD5 FreeBSD8

Непрочитанное сообщение QuAzI » 2009-11-21 22:45:11

Жёсткий адрес будет только если поставлю перед ним восклицательный знак, а в таком варианте если от провайдера прийдёт другой адрес, а этот будет забракован, интерфейс получит адрес выданный провайдером. Пока что провайдером мои конфиги не бракуются и это работает.
Только что перезапустил его ещё раз, видел как на одном из интерфейсов раз 5 сменился ip прежде чем снова пошёл пинг через него. Самый крупный провайдер в Беларуси :(