Настройка VPN по L2TP в Ubuntu 8.04 Hardy Heron

Исторически сложилось, что многие российские провайдеры предоставляют подключение к интернет через VPN-соединение. Соответственно, пользователям Linux для этого приходится настраивать подключение по PPTP. Относительно недавно у некоторых провайдеров появилась возможность подключения по протоколу L2TP. Не вдаваясь в технические подробности, скажу, что для пользователей Linux теперь появилась возможность кардинально улучшить свое интернет-соединение. Забегая вперед, замечу, что результат превзошел все мои ожидания.

Такая возможность появилась с поддержкой OpenL2TP в последних ядрах Linux. В этой заметке пойдет речь о настройке L2TP-соединения в Ubuntu Linux на примере провайдера Corbina Telecom. Для других провайдеров, думаю, настройка будет не сильно отличаться. Выражаю огромную благодарность sdvn, написавшему очень толковую инструкцию по настройке.

Настройка L2TP-соединения

1. Вначале необходимо установить пакет xl2tp. В репозиториях Ubuntu 8.04 он уже есть.

$ sudo apt-get install xl2tpd

2. Редактируем файл /etc/xl2tpd/xl2tpd.conf:

$ sudo gedit /etc/xl2tpd/xl2tpd.conf

Необходимо прописать в него следующее:

[global]
access control = yes
 
[lac corbina]
lns = l2tp.corbina.net
redial = yes
redial timeout = 1
require chap = yes
require authentication = no
name = <corbina-user-name-without-brackets>
ppp debug = yes
pppoptfile = /etc/ppp/options.xl2tpd
require pap = no
autodial = yes

где <corbina-user-name-without-brackets> - ваше имя пользователя в Corbina.

3. Редактируем /etc/ppp/options.xl2tpd:

$ sudo gedit /etc/ppp/options.xl2tpd

Прописываем в него:

unit 0
name <corbina-user-name-without-brackets>
remotename l2tp
ipparam corbina
connect /bin/true
mru 1460
mtu 1460
nodeflate
nobsdcomp
persist
maxfail 0
nopcomp
noaccomp
defaultroute
replacedefaultroute

4. В /etc/ppp/chap-secrets добавляем строку (если ее еще там нет):

<corbina-user-name-without-brackets> * <corbina-password-without-brackets>

5. Вносим изменения в /etc/init.d/xl2tpd:

$ sudo gedit /etc/init.d/xl2tpd

Необходимо поменять секцию start следующим образом:

start)
      if !([ -f /var/run/xl2tpd/l2tp-control ]) ; then
              mkdir -p /var/run/xl2tpd
              touch /var/run/xl2tpd/l2tp-control
      fi
 
      echo -n "Starting $DESC: "
      start-stop-daemon --start --quiet --pidfile /var/run/$NAME.pid \
               --exec $DAEMON -- $DAEMON_OPTS
      echo "$NAME."
 
      route add -host <host l2tp.corbina.ru> gw <default-gw>
      route add -host <dns-server-1> gw <default-gw>
      route add -host <dns-server-2> gw <default-gw>

Здесь <host l2tp.corbina.ru> (L2TP-сервер провайдера), <dns-server-1> (первый DNS-сервер), <dns-server-2> (второй DNS-сервер), <default-gw> (шлюз по умолчанию) определяются для каждого случая свои. Для их определения можно воспользоваться командами:

$ host l2tp.corbina.ru
$ cat /etc/resolv.conf
$ route -n

Или уточнить их в службе технической поддержки провайдера. Очень важно, чтобы маршруты были прописаны правильно.

6. Прописываем в /etc/network/interfaces свои настройки сети для карточки:

auto lo eth0
iface lo inet loopback
address 127.0.0.1
netmask 255.0.0.0
iface eth0 inet dhcp

7. Удаляем network-manager из системы, чтобы не мешал работать стандартной дебиановской сетевой системе и позволил проинициализировать eth0 до того, как будет подниматься ppp0 через xl2tpd:

$ sudo aptitude remove network-manager

8. Теперь можно перезагрузиться и посмотреть на результат. Если все нормально, то по команде ifconfig мы получим три интерфейса - lo, eth0 и ppp0. Что и требовалось.

9. В случае, если необходимо расшарить интернет на другие машины, можно в /etc/init.d/xl2tpd в секцию start после route -add добавить строчки:

echo 1 >/proc/sys/net/ipv4/ip_forward
iptables -F
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
iptables -t nat -I POSTROUTING -o ppp0 -j MASQUERADE
iptables -I FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu

Возможные проблемы

В случае неправильных настроек может наблюдаться следующая проблема: соединение устанавливается, но через минуту-две обрывается либо без каких-либо сообщений, либо с сообщением в /var/log/messages:

No response to 4 echo-requests

В таком случае можно попытаться сделать следующее:

  • Убедиться, что network-manager удален из системы. Кроме того, убедиться, что нет еще каких-либо факторов, мешающих стандартной дебиановской сетевой системе. Таковым может являться firestarter или некорректные настройки dnsmasq или ipmasq.
  • Убедиться, что указан верный маршрут к L2Tp-серверу провайдера. В случае чего уточнить его в службе технической поддержки.

Если же интерфейс ppp0 успешно поднимается и не обрывается, но сайты не открываются, то проблема скорее всего в DNS-серверах. Нужно указать их правильные адреса в маршрутах.

Результаты

В моем случае результаты оказались следующими.

При работе через PPTP:

При работе через L2TP:

Результат потрясающий и говорит сам за себя.

Комментарии

Re: Настройка VPN по L2TP в Ubuntu 8.04 Hardy Heron

SolarWind аватар

А вот это уже похоже на то, что xl2tpd стартует слишком рано при старте, еще до инициализации интерфейсов. Можно попробовать его прописать самым последним:

$ sudo update-rc.d xl2tpd defaults 99

Только перед этим надо обязательно удалить его из автостарта. Не помню точно ключик, сейчас под рукой нет линукса, но man update-rc.d поможет. :-)

Re: Настройка VPN по L2TP в Ubuntu 8.04 Hardy Heron

DRONx117 аватар

Полтергейтс какой-то...
Поменял порядок, чтобы демон запускался последним(99) - не помогло.
Удалил полностью пакет и пересобрал из исходников, поставил последним - снова не помогло.
Забил на это дело на пару дней...
Сегодня загрузился всё работает.

Спасибо за помощь!
P.S. Удобнее юзать bum вместо update-rc.d

Re: Настройка VPN по L2TP в Ubuntu 8.04 Hardy Heron

SolarWind аватар

Да, действительно мистика какая-то. Но хорошо хоть заработало. :-)

Re: Настройка VPN по L2TP в Ubuntu 8.04 Hardy Heron

Золотой аватар

$ sudo update-rc.d xl2tpd remove

Re: Настройка VPN по L2TP в Ubuntu 8.04 Hardy Heron

Егор аватар

У меня Ubuntu 8.04 (Hardy Heron). Не могу найти пакет xl2tp Подскажите где он находится?

Re: Настройка VPN по L2TP в Ubuntu 8.04 Hardy Heron

SolarWind аватар

В стандартных репозиториях.

Re: Настройка VPN по L2TP в Ubuntu 8.04 Hardy Heron

-Vlad- аватар

sudo apt-get update - обновим-ка базу
sudo apt-cache search xl2tpd - а есть ли он вообще?
sudo apt-get install xl2tpd - ну и поставим его

Re: Настройка VPN по L2TP в Ubuntu 8.04 Hardy Heron

-Vlad- аватар

Сделал всё по инструкции, но никаких телодвижений в сторону поднятия интерфейса нет.
При старте в логи кладётся это:
Jun 3 22:29:45 host xl2tpd[10676]: This binary does not support kernel L2TP.
Jun 3 22:29:45 host xl2tpd[10677]: xl2tpd version xl2tpd-1.1.12 started on host PID:10677
Jun 3 22:29:45 host xl2tpd[10677]: Written by Mark Spencer, Copyright (C) 1998, Adtran, Inc.
Jun 3 22:29:45 host xl2tpd[10677]: Forked by Scott Balmos and David Stipp, (C) 2001
Jun 3 22:29:45 host xl2tpd[10677]: Inherited by Jeff McAdams, (C) 2002
Jun 3 22:29:45 host xl2tpd[10677]: Forked again by Xelerance (www.xelerance.com) (C) 2006
Jun 3 22:29:45 host xl2tpd[10677]: Listening on IP address 0.0.0.0, port 1701
При останове - это:
Jun 3 22:33:37 host xl2tpd[10704]: death_handler: Fatal signal 15 received
Какие будут идеи?
Спасибо!

Re: Настройка VPN по L2TP в Ubuntu 8.04 Hardy Heron

SolarWind аватар

А какое ядро? Поддержка L2TP появилась только в последних версиях ядра.

Re: Настройка VPN по L2TP в Ubuntu 8.04 Hardy Heron

-Vlad- аватар

Kubuntu 8.04 Hadry Heron
2.6.24-17-generic

Re: Настройка VPN по L2TP в Ubuntu 8.04 Hardy Heron

Zombieff аватар

$ sudo xl2tpd -D
xl2tpd[3200]: setsockopt recvref: Protocol not available
xl2tpd[3200]: L2TP kernel support not detected.
xl2tpd[3200]: xl2tpd version xl2tpd-1.2.0 started on cerebron PID:3200
xl2tpd[3200]: Written by Mark Spencer, Copyright (C) 1998, Adtran, Inc.
xl2tpd[3200]: Forked by Scott Balmos and David Stipp, (C) 2001
xl2tpd[3200]: Inherited by Jeff McAdams, (C) 2002
xl2tpd[3200]: Forked again by Xelerance (www.xelerance.com) (C) 2006
xl2tpd[3200]: Listening on IP address 0.0.0.0, port 1701

ядро 2.6.25, пробовал той же версии самосборное, тогда вместо
xl2tpd[3200]: L2TP kernel support not detected.
пишет
xl2tpd[3200]: Using L2TP kernel support.
Но результат одинаков. (В debian в ядре нет поддержки l2tp, потому пробовал собирать сам)

P.S. В убунте всё работало.

Re: Настройка VPN по L2TP в Ubuntu 8.04 Hardy Heron

Hombit аватар

Пользуюсь 9-ой Федорой. Всё настроил, потом наткнулся на пункт о изменении настроек сетевухи. И не нашёл сей папочки /etc/network/ . Подскажите, кто знает, что мне делать.
Спасибо

Re: Настройка VPN по L2TP в Ubuntu 8.04 Hardy Heron

-Vlad- аватар

В RedHat-based дистрибутивах, к каковым относится Fedora, идеология немного отличается от Debian-based (*Ubuntu). В них настройки относящиеся к сети находятся в /etc/sysconfig/network-scripts. Загляните, например, в ifup-eth0. Думаю, многое станет понятно

Re: Настройка VPN по L2TP в Ubuntu 8.04 Hardy Heron

Hombit аватар

Спасибо
Но теперь взникла ещё одна проблема: в Федоре, видать, нет команды start-stop-daemon. Не подскажете что делать?

Re: Настройка VPN по L2TP в Ubuntu 8.04 Hardy Heron

_Vlad- аватар

Заменить start-stop-daemon --start --quiet --pidfile /var/run/$NAME.pid \
--exec $DAEMON -- $DAEMON_OPTS
на $DAEMON -- $DAEMON_OPTS &

Re: Настройка VPN по L2TP в Ubuntu 8.04 Hardy Heron

Hombit аватар

Спасибо за поддержку.
Заменил. Теперь выдаёт сообщение, о том, что не знает команды "--".

Re: Настройка VPN по L2TP в Ubuntu 8.04 Hardy Heron

self-perfection аватар

Отлично, настроил с полпинка и всё отлично заработало! Спасибо! Но не хочет авто переподключаться при разрыве.
redial = yes
redial timeout = 1

в /etc/xl2tpd/xl2tpd.conf есть. Что может быть не так?

Re: Настройка VPN по L2TP в Ubuntu 8.04 Hardy Heron

SolarWind аватар

А что в логах при разрыве пишется?

Re: Настройка VPN по L2TP в Ubuntu 8.04 Hardy Heron

self-perfection аватар

Хм. Как-то удивительно. Похоже, ложная тревога. Вчера просыпаюсь, проверяю комп - сети нет, в логах
$ tail /var/log/messages
Jun 8 07:16:09 Rebma -- MARK --
Jun 8 07:36:09 Rebma -- MARK --
Jun 8 07:56:09 Rebma -- MARK --
Jun 8 08:12:05 Rebma kernel: [48994.977600] eth0: link down.
Jun 8 08:12:07 Rebma kernel: [48996.830542] eth0: link up.
Jun 8 08:36:09 Rebma -- MARK --
Jun 8 08:56:09 Rebma -- MARK --
Jun 8 09:16:09 Rebma -- MARK --
Jun 8 09:36:09 Rebma -- MARK --
Jun 8 09:56:09 Rebma -- MARK --

Проверил указанные строчки - вроде редиал включен. Переподнял сеть руками:

$ sudo invoke-rc.d xl2tpd stop
[sudo] password for self:
Stopping xl2tpd: xl2tpd.
self@Rebma:~$ sudo invoke-rc.d xl2tpd start
Starting xl2tpd: xl2tpd.
SIOCADDRT: File exists
invoke-rc.d: initscript xl2tpd, action "start" failed.

Хотя написало failed - сеть поднялась. Попробовал докудрить /etc/xl2tpd/xl2tpd.conf:
redial = yes
redial timeout = 5
max redials = 100

Выткнул-воткнул провод - не переподключает. Пошёл жаловаться. Сейчас дабы зафиксировать что в логах при разрыве опять выткнул-воткнул сетевой шнур - и xl2tpd сам переподключился o_O Потыкал туда-сюда - вроде отлично пашет и реконнектит (хотя invoke-rc.d и ругается по-прежнему при старте). Полагаю где-то меня вчера наглючило. Вопрос снимается.

Re: Настройка VPN по L2TP в Ubuntu 8.04 Hardy Heron

Гость аватар

Нет, всё-таки отваливается :( Но теперь я поймал его за хвост! Вот что свалилось в /var/log/daemon.log:
Jun 14 18:05:03 Rebma xl2tpd[6214]: Maximum retries exceeded for tunnel 34897. Closing.
Jun 14 18:05:03 Rebma xl2tpd[6214]: Untrustingly terminating pppd: sending KILL signal to pid 6287
Jun 14 18:05:03 Rebma xl2tpd[6214]: pppd 6287 successfully terminated
Jun 14 18:05:03 Rebma xl2tpd[6214]: Connection 33250 closed to 85.21.0.255, port 1701 (Timeout)
Jun 14 18:05:08 Rebma xl2tpd[6214]: Unable to deliver closing message for tunnel 34897. Destroying anyway.
Jun 14 18:05:48 Rebma xl2tpd[6214]: Host name lookup failed for l2tp.corbina.net.
Jun 14 18:06:00 Rebma ntpd[6337]: Deleting interface #6 ppp0, 93.80.165.92#123, interface stats: received=533, sent=535, dropped=0, active_time=86700 secs

Фраза "Maximum retries exceeded" наводит на мысль, а не прописан ли у меня лимит redial'ов. К сожалению, дело не в этом:

$ head -20 /etc/xl2tpd/xl2tpd.conf
[global]
access control = yes
[lac corbina]
lns = l2tp.corbina.net
redial = yes
redial timeout = 5
;max redials = 100
require chap = yes
require authentication = no
name = selfperfection
ppp debug = yes
pppoptfile = /etc/ppp/options.xl2tpd
require pap = no
autodial = yes

;
; Sample l2tpd configuration file
;
; This example file should give you some idea of how the options for l2tpd
; should work. The best place to look for a list of all options is in

Ну и там ещё длинный закоментаренный хвост. Нет идей, из-за чего бы такое могло быть?

Re: Настройка VPN по L2TP в Ubuntu 8.04 Hardy Heron

Pixel аватар

В /etc/xl2tpd/xl2tpd.conf вместо l2tp.corbina.net (в поле lns = ) впиши ip адрес данного хоста. По всей видимости это 85.21.0.254.

Re: Настройка VPN по L2TP в Ubuntu 8.04 Hardy Heron

Гость аватар

Jun 14 18:05:48 Rebma xl2tpd[6214]: Host name lookup failed for l2tp.corbina.net.

По видимому была проблема с днс или сетью.

Re: Настройка VPN по L2TP в Ubuntu 8.04 Hardy Heron

Гость аватар

Сделал все по инструкции, но команда ifconfig не отображает ppp0. Я могу выйти на корбиновский сайт, но не в интернет.
Как поднять ррр0? Помогите пожалуйста!!!

Re: Настройка VPN по L2TP в Ubuntu 8.04 Hardy Heron

SolarWind аватар

А что в логах пишет?

Re: Настройка VPN по L2TP в Ubuntu 8.04 Hardy Heron

Гость аватар

В линуксе я новичок. Какую команду набрать в консоли, что бы высветить лог?

Re: Настройка VPN по L2TP в Ubuntu 8.04 Hardy Heron

SolarWind аватар

gedit /var/log/messages

Или, если это ubuntu, system->administration->system log.

Re: Настройка VPN по L2TP в Ubuntu 8.04 Hardy Heron

Гость аватар

Вот что выдает команда main@main-desktop:~$ tail /var/log/messages:
Jun 14 15:00:07 main-desktop kernel: [ 228.878622] USB Mass Storage support registered.
Jun 14 15:00:12 main-desktop kernel: [ 233.874780] scsi 2:0:0:0: Direct-Access JetFlash TS128MJF110 0.00 PQ: 0 ANSI: 2
Jun 14 15:00:12 main-desktop kernel: [ 233.889137] sd 2:0:0:0: [sdb] 246784 512-byte hardware sectors (126 MB)
Jun 14 15:00:12 main-desktop kernel: [ 233.889884] sd 2:0:0:0: [sdb] Write Protect is off
Jun 14 15:00:12 main-desktop kernel: [ 233.891483] sd 2:0:0:0: [sdb] 246784 512-byte hardware sectors (126 MB)
Jun 14 15:00:12 main-desktop kernel: [ 233.892101] sd 2:0:0:0: [sdb] Write Protect is off
Jun 14 15:00:12 main-desktop kernel: [ 233.892112] sdb: sdb1
Jun 14 15:00:12 main-desktop kernel: [ 234.062753] sd 2:0:0:0: [sdb] Attached SCSI removable disk
Jun 14 15:00:12 main-desktop kernel: [ 234.062809] sd 2:0:0:0: Attached scsi generic sg2 type 0
Jun 14 15:04:09 main-desktop kernel: [ 470.900140] usb 4-4: USB disconnect, address 3

А вот что выдает команда sudo invoke-rc.d xl2tpd stop:
main@main-desktop:~$ sudo invoke-rc.d xl2tpd stop
[sudo] password for main:
/etc/init.d/xl2tpd: 40: Syntax error: newline unexpected
invoke-rc.d: initscript xl2tpd, action "stop" failed.
main@main-desktop:~$

Вот прилагается конфигурация этого файла посмотрите пожалуйста: где ошибка?
sudo gedit /etc/init.d/xl2tpd

! /bin/sh

### BEGIN INIT INFO

# Provides: xl2tpd l2tpd

# Required-Start: $network $syslog

# Required-Stop: $network $syslog

# Should-Start: ipsec

# Should-Stop: ipsec

# Default-Start: 2 3 4 5

# Default-Stop: 0 1 6

# Short-Description: layer 2 tunelling protocol daemon

# Description: xl2tpd is usually used in conjunction with an ipsec

# daemon (such as openswan).

### END INIT INFO

PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin

DAEMON=/usr/sbin/xl2tpd

NAME=xl2tpd

DESC=xl2tpd

test -x $DAEMON || exit 0

# Include xl2tpd defaults if available

if [ -f /etc/default/xl2tpd ] ; then

. /etc/default/xl2tpd

fi

set -e

case "$1" in

start)

if !([ -f /var/run/xl2tpd/l2tp-control ]) ; then

mkdir -p /var/run/xl2tpd

touch /var/run/xl2tpd/l2tp-control

fi

echo -n "Starting $DESC: "

start-stop-daemon --start --quiet --pidfile /var/run/$NAME.pid \

--exec $DAEMON -- $DAEMON_OPTS

echo "$NAME."

route add -host <83.102.254.244> gw <10.38.0.17>

route add -host <213.234.192.8> gw <10.38.0.17>

route add -host <85.21.192.3> gw <10.38.0.17>

echo 1 >/proc/sys/net/ipv4/ip_forward

iptables -F

iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

iptables -t nat -I POSTROUTING -o ppp0 -j MASQUERADE

iptables -I FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu

;;

stop)

echo -n "Stopping $DESC: "

start-stop-daemon --oknodo --stop --quiet --pidfile /var/run/$NAME.pid \

--exec $DAEMON

echo "$NAME."

;;

force-reload)

# check whether $DAEMON is running. If so, restart

start-stop-daemon --stop --test --quiet --pidfile \

/var/run/$NAME.pid --exec $DAEMON \

&& $0 restart \

|| exit 0

;;

restart)

echo -n "Restarting $DESC: "

start-stop-daemon --stop --quiet --pidfile \

/var/run/$NAME.pid --exec $DAEMON

sleep 1

start-stop-daemon --start --quiet --pidfile \

/var/run/$NAME.pid --exec $DAEMON -- $DAEMON_OPTS

echo "$NAME."

;;

*)

N=/etc/init.d/$NAME

echo "Usage: $N {start|stop|restart|force-reload}" >&2

exit 1

;;

esac

exit 0

Re: Настройка VPN по L2TP в Ubuntu 8.04 Hardy Heron

SolarWind аватар

У вас синтаксическая ошибка в скрипте старта xl2tp. Перепроверьте правильность форматирования. Насколько я понял, начиная с iptables надо дополнить табом (блок кода неверен).

Pingback

Настройка VPN по L2TP в Ubuntu 8.04 Hardy Heron | Для систем аватар

[...] Оригинал   Print This Post Похожие постыUbuntu 7.10Почти готов Windows Server 2008, плагин для Firefox, создание своего дистриба UbuntuПро новую категорию, задержку при отправке писем, UbuntuРусские буквы в amarokПревращаем Windows XP в Убунту, Samsung говно, библиотека и по мелочи.Ubuntu 7.10. Так сказать первые шаги.Ubuntu, проблема с разрешением экранаАртефакты в Totem. Ubuntu 7.04Настройка VPN сервера в Windows 2003GfxBoot или украшаем GRUB. Продолжаю терзать Ubuntu 7.10 [...]

Re: Настройка VPN по L2TP в Ubuntu 8.04 Hardy Heron

Гость аватар

Здраствуйте
делал всё по гайду
но оно не хочет работать...
сижу на корбине
лог следующий:
Jun 29 00:15:14 server pppd[2927]: The remote system (l2tp) is required to authenticate itself
Jun 29 00:15:14 server pppd[2927]: but I couldn't find any suitable secret (password) for it to use to do so.
Jun 29 00:15:16 server xl2tpd[2925]: Can not find tunnel 60145 (refhim=0)
Jun 29 00:15:16 server xl2tpd[2925]: network_thread: unable to find call or tunnel to handle packet. call = 45787, tunnel = 60145 Dumping.
Jun 29 00:15:18 server xl2tpd[2925]: Can not find tunnel 60145 (refhim=0)
Jun 29 00:15:18 server xl2tpd[2925]: network_thread: unable to find call or tunnel to handle packet. call = 45787, tunnel = 60145 Dumping.
Jun 29 00:15:20 server xl2tpd[2925]: Can not find tunnel 60145 (refhim=0)
Jun 29 00:15:20 server xl2tpd[2925]: network_thread: unable to find call or tunnel to handle packet. call = 45787, tunnel = 60145 Dumping.
Jun 29 00:15:22 server xl2tpd[2925]: Can not find tunnel 60145 (refhim=0)
Jun 29 00:15:22 server xl2tpd[2925]: network_thread: unable to find call or tunnel to handle packet. call = 45787, tunnel = 60145 Dumping.
Jun 29 00:15:24 server xl2tpd[2925]: Can not find tunnel 60145 (refhim=0)
Jun 29 00:15:24 server xl2tpd[2925]: network_thread: unable to find call or tunnel to handle packet. call = 45787, tunnel = 60145 Dumping.
Jun 29 00:15:25 server xl2tpd[2925]: Can not find tunnel 60145 (refhim=0)
Jun 29 00:15:25 server xl2tpd[2925]: network_thread: unable to find call or tunnel to handle packet. call = 45787, tunnel = 60145 Dumping.
Jun 29 00:15:29 server xl2tpd[2925]: Can not find tunnel 60145 (refhim=0)
Jun 29 00:15:29 server xl2tpd[2925]: network_thread: unable to find call or tunnel to handle packet. call = 45787, tunnel = 60145 Dumping.

Re: Настройка VPN по L2TP в Ubuntu 8.04 Hardy Heron

SolarWind аватар

А вы точно прописали пароль в chap-secrets? Похоже, она его не видит.

Re: Настройка VPN по L2TP в Ubuntu 8.04 Hardy Heron

AVReg аватар

Править /etc/init.d/xl2tpd не Debian-way, вот мой вариант подключения к корбине.
Использовался Debian Etch, xl2tpd был взят из backports (в Lenny уже включён).
Кстати, корбина могла бы избавить от прописывания статических маршрутов,
несколько донастроив свои концентраторы доступа,
но, похоже, их позиция "под виндой автоматически настраивается, а на остальных по..."

1) прописываем статические маршруты на DNS сервера корбины
по входу в локалку корбины (получению инфы c DHCP-сервера/локального маршрутизатора):

% sudo cat > /etc/dhcp3/dhclient-exit-hooks.d/corbina-dns-static-route <<__EOF__
# add static routes to dns servers for save it if pppd replace default route
# for install copy this script to "/etc/dhcp3/dhclient-exit-hooks.d/"
# "routers" and "domain-name-servers" dhcp's options must be enabled
# see /etc/dhcp3/dhclient.conf

if [ "$reason" = 'BOUND' -o "$reason" = 'RENEW' ]; then
if [ -n "$old_routers" -a ! "$old_routers" = "$new_routers" \
-a -n "$old_domain_name_servers" \
-a ! "$old_domain_name_servers" = "$new_domain_name_servers" ]; then
for dns in $old_domain_name_servers ; do
for gw in $old_routers ; do
route add -host "$dns" gw "$old_routers" || true
done
done
fi
if [ -n "$new_routers" -a -n "$new_domain_name_servers" ]; then
for dns in $new_domain_name_servers ; do
for gw in $new_routers ; do
route add -host "$dns" gw "$new_routers" || true
done
done
fi
fi
__EOF__

2) по подключению через VPN (поднятию ppp-интерфейса)
добавляем маршрут до vpn сервера,
но не через ppp-интерфейс (этот маршрут прописывает pppd),
а через локальный маршрутизатор, адрес читаем в leases-файле dhcp3-client-а.

% sudo cat >/etc/ppp/ip-up.d/corbina <<__EOF__
#!/bin/sh -e

# need set linkname=corbina in pppd options
[ "$LINKNAME" = 'corbina' ] || exit 0

CORBINA_IF='eth1'

# we mast use dhcp3-client
CORBINA_GW=$(cat /var/lib/dhcp3/dhclient.$CORBINA_IF.leases 2>/dev/null |\
sed -n 's/\s*option\s\+routers\s\+\([0-9]\+\.[0-9]\+\.[0-9]\+\.[0-9]\+\).*/\1/p' |\
tail -n1)

if [ -n "$CORBINA_GW" ]; then
route add -host "$PPP_REMOTE" gw $CORBINA_GW || true
fi

exit 0
__EOF__

3) вместо /etc/ppp/options.xl2tpd использую файл /etc/ppp/peers/corbina.xl2tp
и добавляю в него linkname=corbina

4) и в /etc/network/interfaces

...
# External network - Corbina
auto eth1
iface eth1 inet dhcp
up /etc/init.d/xl2tpd start || true

pre-down /etc/init.d/xl2tpd stop || true
pre-down killall pppd || true
...

Re: Настройка VPN по L2TP в Ubuntu 8.04 Hardy Heron

AVReg аватар

Забыл,
5) нужно убрать автозапуск x2ltpd
$ sudo update-rc.d -f x2ltpd remove

Re: Настройка VPN по L2TP в Ubuntu 8.04 Hardy Heron

Elkaz аватар

После всех манипуляций в # ifconfig
у меня не появляется ppp0

Re: Настройка VPN по L2TP в Ubuntu 8.04 Hardy Heron

Мак Сим аватар

Простите великодушно, я просто точно знаю, что штатный телепат Солара в отпуске и не сможет вас принять.
Вы бы хоть логи что ли показали потому, что пока можно сказать только "Ах, как я Вам сочувствую!"

С уважением, Мак Сим.
http://mak-sim.ru

Re: Настройка VPN по L2TP в Ubuntu 8.04 Hardy Heron

SolarWind аватар

Значит что-то сделано неправильно. Но без логов ничего сказать нельзя. Поэтому могу только присоединиться к Мак Симу - что при попытке соединения пишется в логах?

Re: Настройка VPN по L2TP в Ubuntu 8.04 Hardy Heron

Elkaz аватар

Ну, а смысл иронии-то? Я не спорю, первый раз попытался настроить VPN под линукс и с первого же раза ничего не получилось. Выполнил все шаги, вроде правильно. Меня тревожат только то, что я прописал в качестве DNS-серверов и шлюза по умолчанию.

Скажите, пожалуйста, какие именно логи и откуда их стоит брать?

P.s
Сети на том компьютере нет, т.к снес network-manager

Re: Настройка VPN по L2TP в Ubuntu 8.04 Hardy Heron

SolarWind аватар

Логи лежат в /var/log/messages. Покажите кусок лога, в котором производится попытка соединения.

У вас корбина? Если да, то какой l2tp-сервер вы указали?

Re: Настройка VPN по L2TP в Ubuntu 8.04 Hardy Heron

Мак Сим аватар

Поверьте смысл иронии не в том чтобы вас обидеть. Просто это как если бы вы пришли к врачу и сказали "Доктор у меня болит" и всё. Даже не указав где, не отдав ему свою карту. Потому и ирония, а так понимаю, что трудности возникают у всех, сам далеко не с первого раза настроил.

Скачайте этот файл. Дальше вот по этой инструкции. Это создаст вам инет на домашней машине. Не через L2TP но разбираться будет однозначно проще.

С уважением, Мак Сим.
http://mak-sim.ru

Re: Настройка VPN по L2TP в Ubuntu 8.04 Hardy Heron

SolarWind аватар

Да, еще. Пока могу сказать только, что проблема у вас точно не в DNS. Проблема скорее всего в l2tp-сервере или шлюзе. Могу предположить, что они у вас прописаны неверные. Отсюда неверные маршруты и интерфейс не поднимается. Точнее можно сказать, только увидев логи.

Re: Настройка VPN по L2TP в Ubuntu 8.04 Hardy Heron

Elkaz аватар

Максим, я понимаю смысл вашей иронии, потому что сам иронизирую над новичками-программистами на наших спец. форумах :) Просто сейчас столкнулся с достаточно серьезной проблемой по моим меркам, потому что я еще практически не знаю устройство Ubuntu. Это меня несколько волнует, т.к это моя рабочая машина. Файлы сейчас скачаю и попробую воспользоваться инструкцией, спасибо. А будет ли возможно потом поднять там L2TP?

SolarWind, даже не знаю. Вроде действовал по инструкции, а в ней не было ничего сложного. Логи сейчас покажу, просто система в данный момент проходит проверку памяти. Спасибо

Re: Настройка VPN по L2TP в Ubuntu 8.04 Hardy Heron

Мак Сим аватар

Слабо связанно с L2TP. Это способ подключиться по более плохому протоколу pptp. Хотя понятее плохой - относительное. жил же я так два года до появление L2TP

С уважением, Мак Сим.
http://mak-sim.ru

Re: Настройка VPN по L2TP в Ubuntu 8.04 Hardy Heron

Elkaz аватар

Максим, я сделал все точно по инструкции. Когда дошел до шага "ping ya.ru" У меня выводится ошибка: ping: unknown host ya.ru

Вот файл messages, я загрузил его на свой ФТП.

www.elkaz.ru/trash/messages

Re: Настройка VPN по L2TP в Ubuntu 8.04 Hardy Heron

SolarWind аватар

Совершенно однозначно что-то не то с маршрутами. Либо l2tp-сервер неправильный, либо шлюз. Я гляжу по логам, он соединяется успешно, но через минуту рубит соединение. У меня такое было. У вас корбина? Какой ip-адрес l2tp указываете?

Re: Настройка VPN по L2TP в Ubuntu 8.04 Hardy Heron

Мак Сим аватар

Значит так.
sudo /etc/init.d/xl2tpd stop
sudo dhclient3 eth0
sudo /путь куда архив распоковали/dialer.sh

С уважением, Мак Сим.
http://mak-sim.ru

Re: Настройка VPN по L2TP в Ubuntu 8.04 Hardy Heron

Elkaz аватар

Короче, теперь такая фича.
Я 3 дня занимался сексом с этой проблемой, в данный момент что я имею:
+ заново переустановленный Ubuntu 8.04, на которым сумел настроить PPTP (не сразу, но получилось).

Что хочу: настроить L2TP.
Network-manager'a в системе уже нет, проследовал опять по инструкции xl2tpd, но все еще ничего не вышло. Скорее всего активно соединение PPTP, его надо вынести? Т.е без sudo pon corbina я в интернет войти не могу. Секция старт:


start)
if !([ -f /var/run/xl2tpd/l2tp-control ]) ; then
mkdir -p /var/run/xl2tpd
touch /var/run/xl2tpd/l2tp-control
fi
echo -n "Starting $DESC: "
start-stop-daemon --start --quiet --pidfile /var/run/$NAME.pid \
--exec $DAEMON -- $DAEMON_OPTS
echo "$NAME."
route add -host 85.21.0.253 gw 10.210.24.1
route add -host 10.210.24.0 gw 10.210.24.1
route add -host 169.254.0.0 gw 10.210.24.1
;;

По поводу шлюза и l2tp.corbina.ru уверен на 100%. DNS-ы взял из route -n, где destination.

Re: Настройка VPN по L2TP в Ubuntu 8.04 Hardy Heron

Elkaz аватар

Я уже по N-ому кругу ставлю одно и то же, строго следуя инструкциям. Все еще ничего :(

Re: Настройка VPN по L2TP в Ubuntu 8.04 Hardy Heron

Гость аватар

блин, как все сложно.

Re: Настройка VPN по L2TP в Ubuntu 8.04 Hardy Heron

_Vetal_ аватар

Дядьки, нид хелп.
Не подымается ppp0 интерфейс(
В логах пишет вот чего:
Aug 10 11:08:20 vetal-desktop pptpd[5266]: MGR: Manager process started
Aug 10 11:08:20 vetal-desktop pptpd[5266]: MGR: Maximum of 100 connections available
Aug 10 11:08:20 vetal-desktop xl2tpd[5274]: This binary does not support kernel L2TP.
Aug 10 11:08:20 vetal-desktop xl2tpd[5275]: xl2tpd version xl2tpd-1.1.12 started on vetal-desktop PID:5275
Aug 10 11:08:20 vetal-desktop xl2tpd[5275]: Written by Mark Spencer, Copyright (C) 1998, Adtran, Inc.
Aug 10 11:08:20 vetal-desktop xl2tpd[5275]: Forked by Scott Balmos and David Stipp, (C) 2001
Aug 10 11:08:20 vetal-desktop xl2tpd[5275]: Inherited by Jeff McAdams, (C) 2002
Aug 10 11:08:20 vetal-desktop xl2tpd[5275]: Forked again by Xelerance (www.xelerance.com) (C) 2006
Aug 10 11:08:20 vetal-desktop xl2tpd[5275]: Listening on IP address 0.0.0.0, port 1701
Aug 10 11:08:20 vetal-desktop xl2tpd[5275]: Host name lookup failed for l2tp.corbina.net.

В чем может быть проблема?

Re: Настройка VPN по L2TP в Ubuntu 8.04 Hardy Heron

_Vetal_ аватар

Еще добавлю одну странность, при настройке не был найден файл /etc/ppp/options.xl2tpd, просто /etc/ppp/options был, а этого не было, пришлось создавать его вручную.
Ну и по умолчанию у меня так же не был найден пакет xl2tpd, пришлось качать через венду с репозитория и устанавливать.

Отправить комментарий

Содержание этого поля является приватным и не предназначено к показу. Если у вас есть аккаунт в Gravatar, он будет использован для показа вашей аватарки.
  • Доступны HTML теги: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • Строки и параграфы переносятся автоматически.