FreeBSD 8.0 + MPD5 не видно компы в сети ...

Настройка сетевых служб, маршрутизации, фаерволлов. Проблемы с сетевым оборудованием.
Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Аватара пользователя
tray.irk
сержант
Сообщения: 266
Зарегистрирован: 2008-10-22 8:21:36
Откуда: Иркутск
Контактная информация:

Re: FreeBSD 8.0 + MPD5 не видно компы в сети ...

Непрочитанное сообщение tray.irk » 2009-12-28 12:18:12

кажись проблема описанна тут http://forum.lissyara.su/viewtopic.php?f=3&t=22301
Числа не управляют миром, но могут показать как управляется мир

Хостинговая компания 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/

Аватара пользователя
tray.irk
сержант
Сообщения: 266
Зарегистрирован: 2008-10-22 8:21:36
Откуда: Иркутск
Контактная информация:

Re: FreeBSD 8.0 + MPD5 не видно компы в сети ...

Непрочитанное сообщение tray.irk » 2009-12-28 15:31:24

Народ проблемма так и не решилась ( что делать?
Числа не управляют миром, но могут показать как управляется мир

Аватара пользователя
schizoid
подполковник
Сообщения: 3228
Зарегистрирован: 2007-03-03 17:32:31
Откуда: Украина, Чернигов
Контактная информация:

Re: FreeBSD 8.0 + MPD5 не видно компы в сети ...

Непрочитанное сообщение schizoid » 2009-12-28 16:34:49

какая версия mpd? и ОСи?
у меня

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

# pkg_info | grep mpd
mpd-5.3             Multi-link PPP daemon based on netgraph(4)
# uname -a
FreeBSD gate.brain.lan 7.1-RELEASE-p9 FreeBSD 7.1-RELEASE-p9 #2: Fri Dec  4 20:55:25 EET 2009     eugene@gate.brain.lan:/usr/obj/usr/src/sys/GENERIC  i386
все работает
ядерный взрыв...смертельно красиво...жаль, что не вечно...

Аватара пользователя
tray.irk
сержант
Сообщения: 266
Зарегистрирован: 2008-10-22 8:21:36
Откуда: Иркутск
Контактная информация:

Re: FreeBSD 8.0 + MPD5 не видно компы в сети ...

Непрочитанное сообщение tray.irk » 2009-12-28 16:59:24

я же говорю ... на 7.2 у меня тоже все работало.

Поставил 8.0 и на те ...

версия mpd 5.4
Числа не управляют миром, но могут показать как управляется мир


Аватара пользователя
schizoid
подполковник
Сообщения: 3228
Зарегистрирован: 2007-03-03 17:32:31
Откуда: Украина, Чернигов
Контактная информация:

Re: FreeBSD 8.0 + MPD5 не видно компы в сети ...

Непрочитанное сообщение schizoid » 2009-12-28 17:16:09

tray.irk писал(а):я же говорю ... на 7.2 у меня тоже все работало.

Поставил 8.0 и на те ...

версия mpd 5.4
может на 5.3 откатиться?
ядерный взрыв...смертельно красиво...жаль, что не вечно...

Аватара пользователя
tray.irk
сержант
Сообщения: 266
Зарегистрирован: 2008-10-22 8:21:36
Откуда: Иркутск
Контактная информация:

Re: FreeBSD 8.0 + MPD5 не видно компы в сети ...

Непрочитанное сообщение tray.irk » 2009-12-28 17:17:10

делал ... ноль

все же я грешу на маршрутизацию ... что то в ней не так
Числа не управляют миром, но могут показать как управляется мир

Аватара пользователя
Lord Beaver
рядовой
Сообщения: 31
Зарегистрирован: 2009-12-26 20:37:45
Откуда: Волгоград

Re: FreeBSD 8.0 + MPD5 не видно компы в сети ...

Непрочитанное сообщение Lord Beaver » 2009-12-28 22:25:28

У меня похожая ситуация. Обвил сервак 7.2 -> 8.0, появились такие баги с MPD5:
1. Первое подключение после загрузки всегда неудачно, все остальные проходят гладко.
2. После первого подключения bind отказывается отдает dns если нет ни одного подключенного клиента. При этом таблица маршрутов не меняется.
3. Не видна локалка, только сам сервак.

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

Аватара пользователя
tray.irk
сержант
Сообщения: 266
Зарегистрирован: 2008-10-22 8:21:36
Откуда: Иркутск
Контактная информация:

Re: FreeBSD 8.0 + MPD5 не видно компы в сети ...

Непрочитанное сообщение tray.irk » 2009-12-29 3:38:32

1 и 2 проблеммы я не наблюдал ... а вот 3 проблемма для меня критична!
Числа не управляют миром, но могут показать как управляется мир

Аватара пользователя
tray.irk
сержант
Сообщения: 266
Зарегистрирован: 2008-10-22 8:21:36
Откуда: Иркутск
Контактная информация:

Re: FreeBSD 8.0 + MPD5 не видно компы в сети ...

Непрочитанное сообщение tray.irk » 2009-12-29 8:00:15

В итоге плюнув на все это дело ... поставил OpenVPN и все пошло :)
Числа не управляют миром, но могут показать как управляется мир

Аватара пользователя
schizoid
подполковник
Сообщения: 3228
Зарегистрирован: 2007-03-03 17:32:31
Откуда: Украина, Чернигов
Контактная информация:

Re: FreeBSD 8.0 + MPD5 не видно компы в сети ...

Непрочитанное сообщение schizoid » 2009-12-29 19:58:24

грустно. может тогда Мотину отписаться?

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

MAINTAINER=     mav@FreeBSD.org
ядерный взрыв...смертельно красиво...жаль, что не вечно...

Orator
рядовой
Сообщения: 36
Зарегистрирован: 2008-07-16 11:21:58

Re: FreeBSD 8.0 + MPD5 не видно компы в сети ...

Непрочитанное сообщение Orator » 2010-01-04 13:04:17

Очень грустно, ибо та же проблема, на 7,2 все работало.
Но на 7,2 был другой глюк который мне жить не давал пришлось на 8-рку обновится.

net0 - физ. интерфейс, внутреняя локалка 192.168.40.2/24
mpd раздает адреса в диапазоне 192.168.40.0/24{40-254}
адрес машины в внутренней локалке 192.168.40.20
tcpdump -i net0 при запущеном пинге с удаленной тачки (при подключенном впн соответственно)

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

tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on net0, link-type EN10MB (Ethernet), capture size 68 bytes
11:48:23.837674 IP 192.168.40.254 > 192.168.40.20: ICMP echo request, id 768, seq 31489, length 40
11:48:23.837904 ARP, Request who-has 192.168.40.254 tell 192.168.40.20, length 46
11:48:29.338073 IP 192.168.40.254 > 192.168.40.20: ICMP echo request, id 768, seq 31745, length 40
11:48:29.338305 ARP, Request who-has 192.168.40.254 tell 192.168.40.20, length 46
11:48:34.838082 IP 192.168.40.254 > 192.168.40.20: ICMP echo request, id 768, seq 32001, length 40
11:48:34.838315 ARP, Request who-has 192.168.40.254 tell 192.168.40.20, length 46
192.168.40.254 - адрес получаемый впн клиентом
Также клиент получает маршрут от впн сервера 192.168.40.0/24 192.168.40.254

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

netstat -rn
192.168.40.0/24    link#1             U             0     2069   net0
192.168.40.4         link#6             UHS         0        0    lo0
192.168.40.254     link#6              UH          0        9    ng1
192.168.40.4 - это set ipcp ranges 192.168.40.4/32 ippool pool1
Перепробовал столько вариантов с маршрутами что описывать сил нету.

Также отмечу что маршрутизации между двумя впнками тоже как-то...

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

tcpdump -i ng2 | grep ICMP
11:57:08.346619 IP 192.168.40.254 > 192.168.40.151: ICMP echo request, id 768, seq 55809, length 40
11:57:08.427624 IP 192.168.40.151 > 192.168.40.254: ICMP echo reply, id 768, seq 55809, length 40
11:57:13.846740 IP 192.168.40.254 > 192.168.40.151: ICMP echo request, id 768, seq 56065, length 40
11:57:14.045764 IP 192.168.40.151 > 192.168.40.254: ICMP echo reply, id 768, seq 56065, length 40
11:57:19.346913 IP 192.168.40.254 > 192.168.40.151: ICMP echo request, id 768, seq 56321, length 40
11:57:19.530073 IP 192.168.40.151 > 192.168.40.254: ICMP echo reply, id 768, seq 56321, length 40
11:57:24.847083 IP 192.168.40.254 > 192.168.40.151: ICMP echo request, id 768, seq 56577, length 40
11:57:24.909381 IP 192.168.40.151 > 192.168.40.254: ICMP echo reply, id 768, seq 56577, length 40
Отмечу что, ng2 - интерфейс второй впнки с адресом 192.168.40.151
Дамп пингов с 254 на 151. Не бегают.

З.Ы. Интернет на те же впн подключения раздается без проблем.
З.З.Ы. Нат убирать тоже побывал.

Orator
рядовой
Сообщения: 36
Зарегистрирован: 2008-07-16 11:21:58

Re: FreeBSD 8.0 + MPD5 не видно компы в сети ...

Непрочитанное сообщение Orator » 2010-01-05 0:19:03

Добрался до интернета.
Проведение раскопок в данном направлении привело к незамедлительному обнаружению виновника -
опции из mpd.conf.

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

#       set iface enable proxy-arp
Попытка прописать в ручную закончилось ошибкой команды arp (намекаю mpd не виноват на самом деле).

Гугление ошибки и отбор из мусора хоть чего-то, привело к двум ссылкам.
1. это ссылка на патч который решает проблему: [читай до конца]
http://people.freebsd.org/~qingli/ppp-p ... 21515.diff
Патч оказался рабочим, но после него возникла проблема что на ip адресе висело несколько мак адресов.

2. http://www.freebsd.org/cgi/query-pr.cgi?pr=140358
Здесь прояснилось что проблема возникла в rc2, ибо не раз встречал в процессе гугления что в rc1 восьмерки все работало.
А также стало ясно, что 100% панацеи еще нету.

Ждемс!
Ну или патчим патч)

Аватара пользователя
tray.irk
сержант
Сообщения: 266
Зарегистрирован: 2008-10-22 8:21:36
Откуда: Иркутск
Контактная информация:

Re: FreeBSD 8.0 + MPD5 не видно компы в сети ...

Непрочитанное сообщение tray.irk » 2010-01-05 4:35:30

Можно уточнить как применять патч? я честно признаться это первый раз делаю и не знаю ... a то что проблемма с proxy-arp это было видно сразу при запуске mpd ручками /usr/local/sbin/mpd5 и там сразу вываливалась .....

Можно подробнее про патч? ... как что ставил? и решилась ли проблемма? стало ли видно сетку?
Числа не управляют миром, но могут показать как управляется мир

Orator
рядовой
Сообщения: 36
Зарегистрирован: 2008-07-16 11:21:58

Re: FreeBSD 8.0 + MPD5 не видно компы в сети ...

Непрочитанное сообщение Orator » 2010-01-05 10:52:05

tray.irk писал(а):Можно уточнить как применять патч? я честно признаться это первый раз делаю и не знаю ... a то что проблемма с proxy-arp это было видно сразу при запуске mpd ручками /usr/local/sbin/mpd5 и там сразу вываливалась .....

Можно подробнее про патч? ... как что ставил? и решилась ли проблемма? стало ли видно сетку?
Я не надолго, так как с вайфая на вокзале и спешу очень!
Заходим по ссылке патча, содержимое сохраняем в текстовый файл.
http://www.cyberciti.biz/faq/freebsd-pa ... e-bind-9x/
http://forum.lissyara.su/viewtopic.php? ... ch#p218940
Вот несколько примеров как патчить. а вообще конечно man patch.
Вместо имени файлика с патчем подставляем тот что сохранили.

У меня патч заработал, сети стали доступными, но ненужные маки начали светится на ip адресе.
Разбираться почему нет времени. Такое положение дел меня не устраивало.
Да и вашего провайдера врятли устроит, хотя кто знает.

Собственно говоря я в качестве временного решения, подкинул ему старый arp и все что к нему прилагается.
Не самое элегантное решение конечно, но у меня сейчас куча работы и в основном по командировкам, так что некогда заниматься вопросом.
Сегодня ночью уезжал в командировку где-то в часа 2 ночи (GMT+2), все работало.
uptime системы после замены арп 6,5 часов, 481 впн подключений, и как говорится полет нормальный.

З.Ы. Но все-таки жду адекватного решения, а не то как я сделал.

----------------------edit-------------------------
a то что проблемма с proxy-arp это было видно сразу при запуске mpd ручками /usr/local/sbin/mpd5 и там сразу вываливалась .....
А вот таки не у всех и не сразу, во первых у меня не так часто перезапускается а во вторых я использую /usr/local/etc/rc.d/mpd5 restart, так имхо правильней.
Плюс можно убрать прокси арп из конфига мпд и тогда ругани небудет. Интеренет раздается на ура и все что надо, небудет только прямого доступа к другим интерфейсам.
Я где нету удаленного доступа во внутреннюю сеть так и зделал, а арп подменял только на роутере конторы, где люди на свои компы удаленно ходят.

kodzero
проходил мимо
Сообщения: 4
Зарегистрирован: 2009-06-27 2:33:50

Re: FreeBSD 8.0 + MPD5 не видно компы в сети ...

Непрочитанное сообщение kodzero » 2010-01-10 0:36:29

Поднял OpenVPN.
Клиент ОпенВПН подсоединяется к серверу и видит виртуальный туннель клиентов MPD5 – сервера, но клиенты MPD5 не видят виртуальную подсеть OpenVpn клиентов.
Тоесть это второй способ , чтобы увидеть клиента MPD5, но MPD5 не видит OpenVPN клиентов. Первый способ MPD5 видит MPD5 клиента.
Из локалки офиса MPD5 клиент не пинговался вообще.
Можно только пропинговать виртуальный шлюз 172.16.253.1 ,а все остальное из виртуальной подсети ОпенВПН , MPD5 никак не пингует. Наверно проблема таже что и с локалкой, все теже симптомы .
Клиенты MPD5 видят только полностью свою виртуальную подсеть и все Гетвеи на сервере ФриБСД.

Одна сетевая карта смотрит в локальную сеть офиса 10.30.111.8:255.255.255.128 , сервер является шлюзом для офиса и имеет IP 10.30.111.8.

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

ifconfig_re0="inet 10.30.111.8 netmask 255.255.255.128"
Вторая сетевая карта смотрит в сторону провайдера с настройками 10.44.111.220:255.255.255.0.

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

ifconfig_em0="inet 10.44.111.220 netmask 255.255.255.0"
Шлюз провайдера 10.44.111.5.

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

defaultrouter="10.44.111.5"
Виртуальная подсеть MPD5 клиентов.
10.30.111.128:255.255.255.128.

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

vpn:
set ippool add pool1 10.30.111.129 10.30.111.254

set ipcp ranges 10.30.111.128/25 ippool poolsat
Виртуальная подсеть OpenVPN клиентов.
172.16.253.1:255.255.255.0.

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

server 172.16.253.0 255.255.255.0


Соответственно задача: клиенту VPN MPD5 видеть OpenVPN клиента. Тяжело перевести большую базу клиентов MPD5 на ОпенВПН , да для многих неудобно и не нужно …

Может есть у кого какие мысли или уже результаты ?

Настройки для OpenVpn

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

#Ядро
options         IPSEC
options         IPSEC_DEBUG
options         IPFIREWALL             
options         IPFIREWALL_VERBOSE
options         IPFIREWALL_VERBOSE_LIMIT=100
options         IPFIREWALL_FORWARD
options         IPDIVERT
options         DUMMYNET
device          crypto
device          tun
device          tap
Пример конфига одного из клиентов ” client01 ” на сервере в папке /usr/local/etc/openvpn/ccd/

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

ifconfig-push 172.16.253.2 172.16.253.1
#iroute 172.16.253.0 255.255.255.0
#iroute 10.44.111.0 255.255.255.0
#iroute 10.30.111.0 255.255.255.128

Пример конфига одного из клиентов ” client02 ” на сервере в папке /usr/local/etc/openvpn/ccd/

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

ifconfig-push 172.16.253.6 172.16.253.5
#iroute 172.16.253.0 255.255.255.0
#iroute 10.44.111.0 255.255.255.0
#iroute 10.30.111.0 255.255.255.128

Конфиг сервера server.conf

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

port 1194
proto udp
local 10.44.111.220
dev tun0
ca /usr/local/etc/openvpn/keys/ca.crt
cert /usr/local/etc/openvpn/keys/lacktic.spb.ru.crt
key /usr/local/etc/openvpn/keys/lacktic.spb.ru.key
dh /usr/local/etc/openvpn/keys/dh1024.pem
tls-auth /usr/local/etc/openvpn/keys/ta.key 0
daemon
server 172.16.253.0 255.255.255.0
push "route 10.30.111.0 255.255.255.0"
route 172.16.253.0 255.255.255.252
#route 10.44.111.0 255.255.255.0
#route 10.30.111.128 255.255.255.128
push "redirect-gateway" # full gateway
client-config-dir ccd
client-to-client
ifconfig-pool-persist ipp.txt
push "dhcp-option DNS 195.67.160.3"
tls-server
tls-timeout 120
auth MD5
cipher AES-256-CBC
keepalive 10 120
comp-lzo
max-clients 250
user nobody
group nobody
persist-key
persist-tun
status /var/log/openvpn/openvpn-status.log
log /var/log/openvpn/openvpn.log
verb 3
Конфиг клиента

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

dev tun
proto udp
remote 10.44.111.220
port 1194
client
push "redirect-gateway"
resolv-retry infinite
auth MD5
keepalive 10 120
cipher AES-256-CBC
comp-lzo
persist-key
persist-tun
verb 3
#mute 5
log C:/OpenVPN/openvpn.log
status C:/OpenVPN/openvpn.stat
ca C:/OpenVPN/ca.crt 
cert C:/OpenVPN/client02.crt 
key C:/OpenVPN/client02.key 
tls-auth C:/OpenVPN/ta.key 1
tls-client

Конфиг MPD5

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

startup:
        set user lacktic Password  admin
        set user kodzero Password
        set console self 10.30.111.8 8181
        set console open
        set web self 10.30.111.8 8182
        set web open
default:
        load vpn
vpn:
        set ippool add pool1 10.30.111.129 10.30.111.254

# Create clonable bundle template named B
        create bundle template B
        set iface enable proxy-arp
        set iface idle 1800
        set iface enable tcpmssfix
        set ipcp yes vjcomp
# Specify IP address pool for dynamic assigment.
        set ipcp ranges 10.30.111.128/25 ippool poolsat
        set ipcp dns 213.115.226.2 213.199.96.131
# The five lines below enable Microsoft Point-to-Point encryption
# (MPPE) using the ng_mppc(8) netgraph node type.
        set bundle enable compression
        set ccp yes mppc
        set mppc yes e40
        set mppc yes e128
        set mppc yes stateless
# Create clonable link template named L
        create link template L pptp
# Set bundle template to use
        set link action bundle B
# Multilink adds some overhead, but gives full 1500 MTU.
        set link enable multilink
        set link yes acfcomp protocomp
        set link no pap chap
        set link enable chap
        set link keep-alive 10 60
# We reducing link mtu to avoid GRE packet fragmentation
        set link mtu 1460
# Configure PPTP
        set pptp self 10.44.111.220
# Allow to accept calls
        set link enable incoming
IPFW

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

add 03500 allow all from any to any in via tun0
add 03600 allow all from any to any out via tun0
Зарание спасибо за Ваш ответ.

Dr. Bob
проходил мимо

Re: FreeBSD 8.0 + MPD5 не видно компы в сети ...

Непрочитанное сообщение Dr. Bob » 2010-02-09 3:00:35

Обратите внимание на применение патча http://people.freebsd.org/~qingli/ppp-p ... 21515.diff для FreeBSD8.0 RELEASE x86
у меня было так:

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

|Index: sys/netinet/in.c
|===================================================================
|--- sys/netinet/in.c   (revision 200582)
|+++ sys/netinet/in.c   (working copy)
--------------------------
Patching file sys/netinet/in.c using Plan A...
Hunk #1 succeeded at 924.
Hunk #2 succeeded at 1059.
Hunk #3 succeeded at 1073.
Hunk #4 succeeded at 1352.
Hunk #5 failed at 1361.
Hunk #6 succeeded at 1414.
1 out of 6 hunks failed--saving rejects to sys/netinet/in.c.rej
посмотрел исходники, ошибка скрывалась вот тут:

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

@@ -1326,7 +1361,8 @@
 
 	/* XXX rtalloc1 should take a const param */
 	rt = rtalloc1(__DECONST(struct sockaddr *, l3addr), 0, 0);
-	if (rt == NULL || (rt->rt_flags & RTF_GATEWAY) || rt->rt_ifp != ifp) {
+	if (rt == NULL || (rt->rt_flags & RTF_GATEWAY) || 
+	    ((rt->rt_ifp != ifp) && !(flags & LLE_PUB))) {
 #ifdef DIAGNOSTIC
нужно заменить на "#ifdef DIAGNOSTICS", не хватает "S"