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

Исходное сообщение
"Заметки о настройке MPD-клиента под BSD"

Отправлено SandDevil , 25-Сен-05 01:55 
Подымаю я, понимаешь, MPD-клиент на FreeBSD 5.2.1. Накопал инфы в этом форуме, интерфейс подымается, да вот пакеты до шлюза не долетают. Конфиг сети: (мой комп 10,0,11,21 адрес даёт DHCP) --- (роутер 10,0,11,254) --- (ВПН-шлюз 10,0,254,254 - внутренний, 192,168,1,2 - внешний). Вот некоторые заметки, надеюсь помогут кому-нибудь:

Вырезка с сайта netbynet:
но как выяснилось конфиги это пол беды, дальше надо пропатчить ядро ибо имеются проблемы толи в бсд, толи в линуховом софте у нас на сервере, вообщем они по разному упаковывают заголовки пакетов, короче заходим в файл /sys/netgraph/ng_ppp.c и ищем там следующий кусок, он одинаковый и для 4.x и для 5.х на сколько я успел заметить

case HOOK_INDEX_VJC_UNCOMP:
case HOOK_INDEX_VJC_VJIP:
if (priv->conf.enableCompression
&& priv->hooks[HOOK_INDEX_COMPRESS] != NULL) {
if ((m = ng_ppp_addproto(m, proto, 1)) == NULL) {
NGI_M(item) = NULL;
NG_FREE_ITEM(item);
return (ENOBUFS);

и меняем на

case HOOK_INDEX_VJC_UNCOMP:
case HOOK_INDEX_VJC_VJIP:
if (priv->conf.enableCompression
&& priv->hooks[HOOK_INDEX_COMPRESS] != NULL) {
if ((m = ng_ppp_addproto(m, proto, 0)) == NULL) {
NGI_M(item) = NULL;
NG_FREE_ITEM(item);
return (ENOBUFS);

то есть строка (на 5.2.1 это 756 строка файла, в других версиях номер может отличаться)
if ((m = ng_ppp_addproto(m, proto, 1)) == NULL) {
заменяется на
if ((m = ng_ppp_addproto(m, proto, 0)) == NULL) {

после этого пересобираем ядро и модули и все шикарно работает

Далее понадобилось настроить роут:
запускаю МПД
Прописываю роут до внутреннего айпи ВПН-сервера, чтобы коннект не сбрасывал - route add 10.0.0.0 10.0.11.254
удаляю дефолтный роут - route delete 0.0.0.0
Добавляю новый route add 0.0.0.0 192.168.1.2 (добавлять ТОЛЬКО ПОСЛЕ запуска МПД)

Вот только не понял как сделать чтобы это всё автоматом делалось, может кто подскажет?


Содержание

Сообщения в этом обсуждении
"Заметки о настройке MPD-клиента под BSD"
Отправлено forgot , 25-Сен-05 17:56 

в mpd.conf вставляешь примерно следующее

set iface up-script <bla-bla-bla>/up.sh
set iface down-script <bla-bla-bla>/down.sh

зыришь п хелпе от mpd как он там передает параметры
скриптам и то что ты делал ручками пишешь в эти скрипты.

за сим усе.


1Help   2Save   3Mark   4Replac 5Copy   6Move   7Search 8Delete 9PullDn 10Quit


"Заметки о настройке MPD-клиента под BSD"
Отправлено SandDevil , 26-Сен-05 00:32 
Спасибо, посмотрел ман по МПД - скриптам - всё в ажуре :)