Не знаю, как у вас, а у нас в доме уже три провайдера сменили pptp на l2tp =))
Поиск на Kubuntu.ru не нашёл ни чего полезного, поэтому, решил на всякий случай, выложить свою инструкцию, вдруг кому-нибудь пригодится.
Настраивать будем простым, но эффективным методом — ручной правкой конфигурационных файлов, например в Konsole через nano. То есть без использования нетворк-менеджера или другой GUI-утилиты.
Начнём пожалуй:
1) Отключаем Knetwork-manager:
Не знаю, как у вас, а у меня KNetworkManager вызывает нездоровое желание... закопать его!
По-этому, на ваше усмотрение: отключите или совсем удалите его.
2) Далее в зависимости от того есть ли у вас в сети DHCP-сервер, конфигурационные файлы могут быть разными (а или b):
2.а) Настройки сети раздаются через DHCP автоматический:
Правим файл /etc/network/interfaces:
$ sudo nano /etc/network/interfaces
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet dhcp
2.б) Настройки сети прописываются вручную:
Правим файл /etc/network/interfaces:
$ sudo nano /etc/network/interfaces
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet static
address ВАШ_IP
netmask ВАША_МАСКА
gateway ВАШ_ВНУТРЕННИЙ_ШЛЮЗ
#up route add -net x.x.x.0 netmask x.x.x.0 gw Ваш_Шлюз dev eth0
Правим файл /etc/resolv.conf
$ sudo nano /etc/resolv.conf
nameserver IP_АДРЕС_ПЕРВОГО_DSN
nameserver IP_АДРЕС_ВТОРОГО_DNS
3) На всякий случай перезагружаем компьютер, и проверяем соответствие параметров командой:
$ netstat -nr
x.x.x.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
169.254.0.0 0.0.0.0 255.255.0.0 U 0 0 0 eth0
0.0.0.0 x.x.x.x 0.0.0.0 UG 0 0 0 eth0
1) Для подключения к VPN серверу потребуется пакет xl2tp.
Ищем его для своей версии и архитектуры, где-нибудь там:
http://packages.ubuntu.com/ru/
Или конкретно для 9.10:
http://packages.ubuntu.com/ru/karmic/net/xl2tpd
2) Идём в папку /etc/ppp/ ($ cd /etc/ppp/), Делаем бекап файла options ($ cp options options.backup), открываем и стираем содержимое данного файла (options).
3) Правим файл /etc/ppp/options.xl2tpd:
$ sudo nano /etc/ppp/options.xl2tpd
unit 0
name ВАШ_ЛОГИН_ИНТЕРНЕТ
remotename l2tp
ipparam provaider
connect /bin/true
mru 1450
mtu 1450
nodeflate
nobsdcomp
persist
maxfail 0
nopcomp
noaccomp
#usepeerdns
defaultroute
replacedefaultroute
4) Правим файл /etc/ppp/chap-secrets:
$ sudo nano /etc/ppp/chap-secrets
# Secrets for authentication using CHAP
# client server secret IP addresses
Ваш_Логин_Интернет l2tp Ваш_Пароль *
5) Правим файл nano /etc/xl2tpd/xl2tpd.conf
$ sudo nano /etc/xl2tpd/xl2tpd.conf
[global]
access control = yes
[lac provaider]
lns = АДРЕС VPN СЕРВЕРА, НАПРИМЕР: vpn.internet.beeline.ru
redial = yes
redial timeout = 1
require chap = yes
require authentication = no
name = ВАШ_ЛОГИН_ИНТЕРНЕТ
ppp debug = yes
pppoptfile = /etc/ppp/options.xl2tpd
require pap = no
autodial = yes
6) На всякий случай перезагружаем компьютер.
7) Даём команду:
$ sudo /etc/init.d/xl2tpd start
Ждём секунд пять и проверяем, поднялся ли туннель. Даем команду: ifconfig и получаем результат!
многа буков, а в конце:
ppp0 Link encap:Point-to-Point Protocol
inet addr:88.85.218.217 P-t-P:217.76.183.249 Mask:255.255.255.255
UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1500 Metric:1
RX packets:4 errors:0 dropped:0 overruns:0 frame:0
TX packets:4 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:3
RX bytes:40 (40.0 B) TX bytes:46 (46.0 B)
Если же туннель не установлен (нет третьего абзаца), переходим в /var/log/messages, идем в конец файла и смотрим, что там не срослось. Наиболее вероятная причина отказа - небрежно заполненные файлы, о которых речь шла выше. Может просто лечь VPN-сервер: это проверяется пингом. Иногда он действительно выпадает.
8) Создаём в папке /etc/ppp/ip-up.d исполняемый(!) (Если не знаете как сделать исполняемый файл, можете скопировать файл скриптов лежащий в данной папке, переименовать его (но убрать вначале имени цифры, чтобы ваш файл исполнялся последним), и заменить текст на этот) файл со следующим текстом:
#!/bin/sh
for i in $(grep "^nameserver" /etc/resolv.conf | awk '{print $2}') ; do
route add -host $i gw ВАШ_ВНУТРЕННИЙ_ШЛЮЗ
done
route del $5 dev $1
route add -host $5 gw ВАШ_ВНУТРЕННИЙ_ШЛЮЗ
9) Создаём в папке /etc/ppp/ip-down.d исполняемый(!) файл со следующим текстом:
#!/bin/sh
route add default gw Ваш_внутренний_шлюз
10) Интернет настроен!
Стартуем: $ sudo /etc/init.d/xl2tpd start
Останавливаем: $ sudo /etc/init.d/xl2tpd stop
____________________________________________________
Некоторые ремарочки:
1) Опция autodial = yes — поднимет интернет автоматический при старте машины, но работает эта хрень раз через другой, поэтому зачастую необходимо, сначала остановить псевдоподнятый-нерабочий тунель, а затем снова поднять его:
$ sudo /etc/init.d/xl2tpd stop
$ sudo /etc/init.d/xl2tpd start
2) Данной настройкой мы будем пускать весть трафик через внешний шлюз — грубо говоря откажемся от внутри-сети. Если вам нужна внутрисеть вам необходимо добавить маршрут на внутрисеть:
Либо в /etc/network/interfaces:
up route add -net Подсеть netmask Маска gw Шлюз dev eth0
Либо в скрипте старта (/etc/ppp/ip-up.d/Ваш_Скрипт):
route add -net Подсеть netmask Маска gw Шлюз