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

Исходное сообщение
"l2tpd ipparam"

Отправлено br41n , 14-Окт-09 15:19 
Добрый всем день.

Centos 5.3. Для нужд поставили l2tpd сервер для впн подключений без ipsec реализации.

l2tpd.conf:

[global]
rand source = dev

[lns default]
assign ip = no
exclusive = yes
local ip = 192.168.0.1
require chap = yes
ppp debug = no
pppoptfile = /etc/ppp/options.l2tpd

etc/ppp/options.l2tpd:

lock
nodeflate
name l2tpd
proxyarp
refuse-pap
require-mschap-v2
require-mschap
lcp-echo-failure 12
lcp-echo-interval 5
novj
novjccomp
nobsdcomp
nolog
192.168.0.1:
ms-dns 192.168.0.1
ms-dns 192.168.0.2
plugin radius.so
plugin radattr.so


авторизация и выдача ip адресов по radius


l2tpd вызывает процесс pppd с такими параметрами:

/usr/sbin/pppd passive -detach 192.168.0.1:0.0.0.0 file /etc/ppp/options.l2tpd /dev/pts/8


вроде все замечательно, все работает, но вот мне позарез нужен параметр ipparam

одновременно на этом же впн сервере стоит pptpd, он дает параметр ipparam нормально:
/usr/sbin/pppd local file /etc/ppp/options.pptpd 115200 ipparam 10.2.35.208


мне этот параметр позарез для логов и для контроля нужен нужен.

l2tpd собирал из src.rpm. Просматривал исходники, там есть упоминания об ipparam.
Есть отдельные процедуры с комментами типа /* mf, 08.04.2003: used to construct ipparam arg to pppd */


В кодинге я не силен, так что что к чему в исходниках я ни бум бум.


Может есть другой способ забирания параметра пира-источника?


Содержание

Сообщения в этом обсуждении
"l2tpd ipparam"
Отправлено ALex_hha , 15-Окт-09 01:24 
Что за сервер, где брал src.rpm?

"l2tpd ipparam"
Отправлено br41n , 15-Окт-09 08:11 
>Что за сервер, где брал src.rpm?

VPN L2TP сервер, l2tpd

брал тут: ftp://distro.ibiblio.org/pub/linux/distributions/aurora/extr...


"l2tpd ipparam"
Отправлено ovas , 24-Авг-10 21:01 
Может кому пргодится

В исходниках в файле control.c добавить
в начале файла, там где объявляются переменные

char ipnn[STRLEN];

Найти кусок кода ,вставить то , что выделено плюсами.

        if (c->lns->pppoptfile[0])
        {
            po = add_opt (po, "file");
            po = add_opt (po, c->lns->pppoptfile);
        }
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
        if (t->peer.sin_addr.s_addr)
        {
        strncpy (ipnn, IPADDY (t->peer.sin_addr), sizeof (ipnn));
            po = add_opt (po, "ipparam");
            po = add_opt (po, ipnn );
        }
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
        start_pppd (c, po);
        opt_destroy (po);
        l2tp_log (LOG_NOTICE,
             "Call established with %s, Local: %d, Remote: %d, Serial: %d\n",
             IPADDY (t->peer.sin_addr), c->ourcid, c->cid,
             c->serno)