Евгенийй

VPN в Unix/Linux/FreeBSD - PPPD

Рекомендованные сообщения

Смотрю я на этот раздел и грустно - в каждой теме люди бьются над тем, что в винде достигается в windows элементарно и без дополнительных манипуляций... Оставлю в стороне вопрос "что делать" и "кто виноват" и опишу ситуацию с демоном pppd, которые и ответственен в вышеперечисленных ОС за установление связи с pptp-сервером Корбины.

 

Особенность Корбины в том, что PPTP-сервер (vpn-сервер, далее "сервер") находится не в одной подсети с вами и этот сервер достижим через стандартный шлюз (default gateway, далее DG). Когда интернет отключен, маршрутом по умолчанию (default route, далее DR) в таблице маршрутизации является маршрут на DG.

 

Для установки связи с Интернет необходимо, чтобы DR указывал в интернет, то есть на образующийся при подключении интерфейс ppp0. Для этого в конфигах pppd нужно прописывать параметр defaultroute. Проблема в том, что в некоторых сборках pppd отказывается замещать DR на DG: "will not replace defaultroute". В таких случаях нужно добавить недокументированный параметр replacedefaultroute, благодаря которому всякие манипуляции с удалением маршрутов по умолчанию на DG становятся ненужными. Однако я слышал, что этот параметр работает не во всех сборках.

 

Когда устанавливается pptp-соединение, маршрут по умолчанию указывает на интерфейс ppp0 и, соответственно, pptp-сервер. В связи с замещением этим маршрутом предыдушего DR, система не знает, как добраться до pptp-сервера. Поэтому маршрут до него (до них) нужно прописать.

 

PPTP-серверов у Корбины много и из список (резолвящийся по nslookup vpn.corbina.net) постоянно меняется. Все появляющиеся у меня pppd-серверы лежат в подсетях 195.14.40.0/24 и 195.14.38.0/24. И тут мы встречаемся с мерзким и гадким багом pppd, встречающимся практически везде. После прописывания маршрута

route add -net 195.14.40.0/24 gw 10.x.0.17

ничего не работает. Почему? Потому, что гадкий pppd при установлении соединения создаёт слежующий маршрут:

route add -host $IP.OF.VPN.SERVER dev ppp0

. Этот маршрут имеет приоритет перед маршрутами на подсети /24 и, естественно, что маршрут до pptp-сервера не может дойти таким образом.

 

Что делают большинство пользователей? Прописывают маршруты до IP до всех им известных PPTP-серверов вручную таким образом:

 

route add -host 195.14.40.5 gw 10.x.0.17
route add -host 195.14.40.6 gw 10.x.0.17
route add -host 195.14.40.7 gw 10.x.0.17

 

и так маршрутов 8. Эти маршруты помимо того, что работают сами, не позволяют pppd добавить свой маршрут на этот же сервер через ppp0, так как такой маршрут уже существует. Этим и предотвращается баг. Проблема, однако, в том, что серверов больше как минимум в 2 раза и когда DNS начинает вам по имени vpn.corbina.net выдавать непрописанный вами адрес, ваше соединение глючит и работать "перестаёт". И происходит это не каждый раз, каждый 5ый раз, например.

 

Выводы:

 

1) При настройке соединения сервер надо прописывать в буквенном виде: vpn.corbina.net.

 

2) Паразитный маршрут нужно удалять в ip-up сразу же после установления pptp-соединения:

route del $5 dev ppp0

.

 

3) Маршрут до pptp-сервера необходимо прописывать при установлении соединения в ip-up и по желанию удалять при разрыве соединения в ip-down. В ip-up:

route add -host $5 gw 10.x.0.17

 

4) Для тех, у кого не работает параметр replacedefaultroute, соответсвующую работу нужно выполнять в ip-up и ip-down.

 

Прошу прощения за сумбур вместо музыки.

Изменено пользователем Евгенийй

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

о а с этого места поподробнее =)

как где что какие версии пакетов с этим работают....

а то блин подключаюсь и этот vpn начинает траф гнать а при route del $5 dev ppp0 в ip-up вообще ни фига работать не хочет....

Изменено пользователем borgez

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Все работает как часы :)

Вот поправил скрипт звонилки... теперь он работает всегда корректно

 

#!/bin/sh
# 
# VPN Dialer
#

PROVIDER_NAME=corbina
RECONNECT_INTERVAL=60

while true; do
  pppd call $PROVIDER_NAME nodetach
  killall pppd --wait
  sleep $RECONNECT_INTERVAL
  rm -rf /var/run/ppp*.pid
done

exit 0

Изменено пользователем TWINc

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

У меня к сожалениею ни pptp ни mpd не работает.

 

кто настроит и покажет за 500 руб. на выходных

стоит frenzy (freebsd) mpd скидывает при подкючении

 

daniel_sl@rambler.ru

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Никак не хочет работать VPN! Вот наконец-то настроил pptp. Начинает подключаться, как я понимаю, получает IP алреса, но на строчке

add default gw 10.57.15.15 всё прекращается. Прочитал на форуме, что это адрес шлюза, нашел его на районном форуме, но результат тот же, может кто знает что сдеать надо? Где взять адреса или правильно прописать роутинг?

Вот так всё это выглядит:

 

#pptp-command start corbina

Using interface ppp0

Connect: ppp0 <--> /dev/pts/2

CHAP authentication succeeded

local IP address 89.178.9.107

remote IP address 195.14.38.6

SIOCADDRT: Network is unreachable

route failed on add default gw 10.57.15.15 at /usr/sbin/pptp-command line 806.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Адрес шлюза - 10.57.0.17, а у вас что? Непонятно.

 

Связь рвётся из-за недоступности pptp-сервера после установления связи.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Адрес шлюза - 10.57.0.17, а у вас что? Непонятно.

 

Связь рвётся из-за недоступности pptp-сервера после установления связи.

Вот из-за таких людей долгое время бытовало мнение, что Земля - плоская :D)))

 

Вообще-то, у Корбины почти в каждом районе свой шлюз и 10.57.15.15 - это вполне правильный шлюз, если человек живет в Бирюлево-Восточном (насчет Западного уже не помню...)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

тем не менее, всё верно... после установки связи default gw должен смотреть в инет, а не на шлюз.

 

Согласен :angry:)))

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Если кому интересно как подключиться к vnp из FreeBSD по средствам pptpclient, mpd или pptpclient+mpd магу рассказать, тока если это дейстительно кому нада.

Правдо к corbina я не соединялся. по этмоу возможны какие-то отличия.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Ubuntu кто пользовался? не работает интернет, а etho только трафик показывает на net monitore

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Если кому интересно как подключиться к vnp из FreeBSD по средствам pptpclient, mpd или pptpclient+mpd магу рассказать, тока если это дейстительно кому нада.

Правдо к corbina я не соединялся. по этмоу возможны какие-то отличия.

 

 

Теперь интересно - точно! После недельного мучения системы FreeBsd 6.0, - подсоединиться к VPN так и не смог. Вкратце расскажу что сделано:

1. Прописал в etc/rc.conf :

network_interfaces=bfe0 # сетевая карта

ifconfig_bfe0=dhcp # ip автоматически

- Заработала локальная сеть.

2. Установил mpd 3.1

в /usr/local/etc/mpd/mpd.conf прописал :

default:

load pptp1

pptp1:

new pptp1 pptp1

load standart

standart:

set bundle authname "Мой_логин"

set bundle password "Мой_пароль"

set bundle disable multilink

set iface route default

set iface enable tcpmssfix

set iface mtu 1460

set ipcp enable req-pri-dns

set ipcp enable req-sec-dns

open

set link type pptp

set link disable chap-md5

set link accept chap-md5

set pptp enable origin outcall

set pptp peer vpn.corbina.net

# set pptp self 10.1.41.108

set pptp disable incoming

set pptp mode active

set pptp enable always-ack

open

 

в /usr/local/etc/mpd/mpd.links :

vpn:

set link type pptp

set pptp peer vpn.corbina.net

set pptp enable originate

set pptp disable incoming

set pptp disable delayed-ack

set pptp disable windowing

 

в /etc/syslog.conf :

! mpd

*.* /var/log/mpd.log

 

в /etc/newsyslog.conf :

/var/log/mpd.log 640 3 100 * JC

 

скрипт mpd.sh - оставил без изменений.

- запустить пытался командой # mpd -b vpn - без результатно.

 

3. Установил pptpclient 1.7 и вместе с ним libgnugetopt-1.2

написал в /etc/ppp/ppp.conf :

vpn:

set authname <Мой_логин>

set authkey <Мой_пароль>

set timeout 0

set ifaddr 0 0

add default HISADDR

alias enable yes

 

прописал в терминале маршрут: # /sbin/route add -host vpn.corbina.net 10.1.0.17

далее ввел: # /usr/local/sbin/pptp vpn.corbina.net vpn &

на что получил : [1] 13506

 

- Вкратце все!

4. Не понял для чего нужны файлы mpd.conf.sample и mpd.links.sample?

5. Что я сделал не правильно или (если совсем все плохо) то подробно и с нуля.

(до этой системы юзал Windows - так что не судите строго :( )

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

FreeBSD 6.1, pptpclient 1.7 (устанавливал из исходников, никаких дополнительных пакетов не нужно)

/etc/ppp/ppp.conf

default:
 set device /dev/tun0
 set device "!/work/pptp/pptp 195.14.38.11 --nolaunchpppd --loglevel 0 --nobuffer --logstring pptp"
 set log Phase Chat LCP IPCP CCP tun command
 set timeout 0
 set authname <login>
 set authkey <pass>
 set ifaddr 0 0

/etc/ppp/ppp.linkup

default:
 !bg /etc/ppp/linkup

/etc/ppp/ppp.linkdown

default:
 !bg /etc/ppp/linkdown

/etc/ppp/linkup

/sbin/route delete -host 195.14.38.11
/sbin/route add -host 195.14.38.11 10.xxx.0.17
/sbin/route delete default
/sbin/route add default 195.14.38.11

/etc/ppp/linkdown

/sbin/route delete default
/sbin/route add default 10.xxx.0.17
/sbin/route delete -host 195.14.38.11

#chmod +x linkup linkdown

Для запуска вручную

#/usr/sbin/ppp -ddial default

автозапуск из /usr/local/etc/rc.d/

#!/bin/sh
echo -n ' internet'

case "$1" in
start)
	/usr/sbin/ppp -ddial default
   ;;
stop)
	kill -9 `cat /var/run/tun0.pid`
   ;;
*)
	echo "Usage: `basename $0` {start|stop}" >&2
	exit 64
   ;;
esac

exit 0

и сделать его исполняемым

 

Для автоматического запуска вместо скрипта можно использовать /etc/rc.conf. Добавь строки

ppp_enable="YES"
ppp_mode="ddial"
ppp_profile="default"

 

Все файлы *.sample - примеры конфигов.

 

далее ввел: # /usr/local/sbin/pptp vpn.corbina.net vpn &

на что получил : [1] 13506

Это говорит, что pptp запустился и процесс получил номер 13506. А не работало потому что

Роут до 195.14.40.x (vpn.corbina.net ) должен всегда идти через 10.xxx.0.17

НЕЛЬЗЯ дать pptpclient-у изменить его. А он меняет его используя как гейт внешний ip полученный от vpn сервера. И все - круг замкнулся. Мы перестаем видеть vpn сервер и соединение после подьема закрывается.

Лечить как я понимаю можно через прописывание внешнего скрипта, выполняющегося при подьеме vpn, в котором и грохнуть это роут. Схему привел -=ace=- где самое важное в linkup это -

/sbin/route delete -host 195.14.40.8

,где 195.14.40.8 ip vpn сервера с которым работаем

 

PS: Спасибо -=ace=- помощь :lol:

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Благодарю :thanx: вечером попробую...кстати, все это проделываю на ноуте Aspire 5500z

 

 

Для запуска вручную

#/usr/sbin/ppp -ddial default

 

 

..вот и вечер..

сделал все как написанно (кстати логин и пароль писать в <> или без? пробывал и так и так), результат:

 

# /usr/sbin/ppp -ddial default

Working in ddial mode

Using interface: tun0

 

# netstat -rn

Routing tables

 

Internet:

Destination Gateway Flags Refs Use Netif Expire

default 10.1.0.17 UGS 0 123 bfe0

10.1/16 link#1 UC 0 0 bfe0

10.1.0.17 00:16:9d:24:78:61 UHLW 2 0 bfe0 1200

 

# ifconfig -a

bfe0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500

options=8<VLAN_MTU>

inet 10.1.41.108 netmask 0xffff0000 broadcast 10.1.255.255

ether 00:0f:b0:ef:24:20

media: Ethernet autoselect (100baseTX <full-duplex>)

status: active

lo0: flags=8008<LOOPBACK,MULTICAST> mtu 16384

tun0: flags=8010<POINTOPOINT,MULTICAST> mtu 1500

Opened by PID 1140

 

# ping vpn.corbina.net

PING vpn.corbina.net (195.14.38.5): 56 data bytes

64 bytes from 195.14.38.5: icmp_seq=0 ttl=249 time=13.674 ms

64 bytes from 195.14.38.5: icmp_seq=1 ttl=249 time=27.507 ms

64 bytes from 195.14.38.5: icmp_seq=2 ttl=249 time=48.255 ms

^C

--- vpn.corbina.net ping statistics ---

3 packets transmitted, 3 packets received, 0% packet loss

round-trip min/avg/max/stddev = 13.674/29.812/48.255/14.211 ms

fren#

 

--- Как я понял тунель установлен а маршрута нет (соответственно и инета) vpn.corbina.net - пингуется

---якобы нужно прописать маршрут, прописываю :

 

# route add -host vpn.corbina.net 10.1.0.17

add host vpn.corbina.net: gateway 10.1.0.17

 

проверяю :

 

# netstat -rn

Routing tables

 

Internet:

Destination Gateway Flags Refs Use Netif Expire

default 10.1.0.17 UGS 0 338 bfe0

10.1/16 link#1 UC 0 0 bfe0

10.1.0.17 00:16:9d:24:78:61 UHLW 3 0 bfe0 1199

10.1.125.150 00:0d:87:69:cf:83 UHLW 1 3 bfe0 1200

195.14.38.6 10.1.0.17 UGHS 0 0 bfe0

 

все вобщемто OK - только инета(VPN) также нет

 

удаляю (как сказанно выше: добавить и удалить...)

 

# /sbin/route delete -host vpn.corbina.net

route: writing to routing socket: No such process

delete host vpn.corbina.net: not in table

 

-...это я и получаю а не инет... Какие будут предложения?

 

Последняя точка в решении проблем VPN for freebsd (последние решение...) - я тоже делал

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

> ---якобы нужно прописать маршрут, прописываю :

> # route add -host vpn.corbina.net 10.1.0.17

> add host vpn.corbina.net: gateway 10.1.0.17

> проверяю :

>

> 195.14.38.6 10.1.0.17 UGHS 0 0 bfe0

>

> все вобщемто OK - только инета(VPN) также нет

 

все не ок. vpn.corbina.net это десятки серверов:

 

$ host vpn.corbina.net

vpn.corbina.net has address 195.14.38.21

vpn.corbina.net has address 195.14.38.2

vpn.corbina.net has address 195.14.38.3

vpn.corbina.net has address 195.14.38.4

vpn.corbina.net has address 195.14.38.5

vpn.corbina.net has address 195.14.38.6

vpn.corbina.net has address 195.14.38.7

vpn.corbina.net has address 195.14.38.8

vpn.corbina.net has address 195.14.38.9

vpn.corbina.net has address 195.14.38.10

vpn.corbina.net has address 195.14.38.11

vpn.corbina.net has address 195.14.38.12

vpn.corbina.net has address 195.14.38.13

vpn.corbina.net has address 195.14.38.14

vpn.corbina.net has address 195.14.38.15

vpn.corbina.net has address 195.14.38.16

vpn.corbina.net has address 195.14.38.17

vpn.corbina.net has address 195.14.38.18

vpn.corbina.net has address 195.14.38.19

vpn.corbina.net has address 195.14.38.20

 

твоя команда route прописала путь только к одному из них, выбранному случайно

 

ВПН-соединение ты тоже наверняка установил с сервером случайно выбранным из этих 20.

 

Таким образом с 95% вероятности они не совпадут и ничего не будет работать

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

 

твоя команда route прописала путь только к одному из них, выбранному случайно

 

ВПН-соединение ты тоже наверняка установил с сервером случайно выбранным из этих 20.

 

Таким образом с 95% вероятности они не совпадут и ничего не будет работать

 

 

 

Так что мне надо сделать??? :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

> Так что мне надо сделать??? blink.gif

 

ну например заменить

route add -host vpn.corbina.net 10.1.0.17

 

на:

 

for vpn in `host vpn.corbina.net | awk '{ print $NF }'`; do route add -host $vpn 10.1.0.17; done

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

> Так что мне надо сделать??? blink.gif

 

ну например заменить

route add -host vpn.corbina.net 10.1.0.17

 

на:

 

for vpn in `host vpn.corbina.net | awk '{ print $NF }'`; do route add -host $vpn 10.1.0.17; done

 

 

 

если правильно понял то прописать это нужно в терминал, тогда ;

 

# for vpn in `host vpn.corbina.net | awk'{print $NF}'`; do rute add -host $vpn 10.1.0.17; done

awk{print $NF}: Command not found.

for: Command not found.

vpn: Undefined variable.

#

 

или ее лучше прописать в /etc/ppp/linkup - ?

 

Все !!! Пошел коннект!!! настроил mpd (конфиги из архива выложенного на этом форуме VPN - ничего не добавлял!!!! ОГРОМНОЕ ЧЕЛОВЕЧЕСКОЕ СПАСИБО Юзеру =sc0ch= !!!! :D)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Все !!! Пошел коннект!!! настроил mpd (конфиги из архива выложенного на этом форуме VPN - ничего не добавлял!!!! ОГРОМНОЕ ЧЕЛОВЕЧЕСКОЕ СПАСИБО Юзеру =sc0ch= !!!! :blink:)

 

Вэлкам :blink:

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Это просто невыносимо. Корбине платит майкрософт. Вторую неделю пытаю уже третий дистрибутив, ни черта не получается. Я уже задолбался переписывать маршруты, дописывать опции и читать логи. В убунте просто ничего не работает, в федоре закольцовывается трафик через какой-то ppp0, в СуСЕ рвётся связь.

ПОЧЕМУ, ПОЧЕМУ Я ВАС СПРАШИВАЮ, В ВИНДЕ ДЛЯ ВПН ДОСТАТОЧНО НАПИСАТЬ ТРИ СТРОЧКИ? Нет ответа... Может, посоветуете чего? (только не про стену)

Изменено пользователем Kefka

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

> Может, посоветуете чего? (только не про стену)

 

В кратце. Устанавливается соединение одной строкой:

 

pppd pty "pptp ВПН_СЕРВЕР --nolaunchpppd --loglevel 0 --timeout 8" connect 'sh -c true' name ЛОГИН ipparam corbina noauth nobsdcomp nodeflate noipdefault usepeerdns defaultroute debug

 

Перед ее запуском желательно удалить default route, а пути до всего что нужно прописать прямо.

 

В /etc/ppp/chap-secrets нужно прописать ЛОГИН/ПАРОЛЬ

 

И в /etc/ppp/ip-up нужно написать скриптик который правильно установит пути: путь до впн-сервера нужно заменить так чтобы он шел через локальный шлюз (это избегает закольцовывания о котором ты писал), а default route должен идти через ppp-интерфейс.

 

Все предельно ясно.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Это просто невыносимо. Корбине платит майкрософт. Вторую неделю пытаю уже третий дистрибутив, ни черта не получается. Я уже задолбался переписывать маршруты, дописывать опции и читать логи. В убунте просто ничего не работает, в федоре закольцовывается трафик через какой-то ppp0, в СуСЕ рвётся связь.

ПОЧЕМУ, ПОЧЕМУ Я ВАС СПРАШИВАЮ, В ВИНДЕ ДЛЯ ВПН ДОСТАТОЧНО НАПИСАТЬ ТРИ СТРОЧКИ? Нет ответа... Может, посоветуете чего? (только не про стену)

 

Не знаю...

Я забубенил 4 файла на флэшку и поднимаю ВПН под ЛЮБОЙ убунтой (включая 7-ю бету и любые LiveCD) минут за 5.

 

Ставим Убунту.

Потом ставим pptp (есть в дистрибутиве)

Копируем 4 файла

Даем команду на запуск

После подьема ppp0 - даем команду правки маршрута.

Усе.

 

З.Ы.

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

К тому-же работает почти везде.

 

З.З.Ы.

Кстати.

Хорошая новость для Убунтоводов.

В Семерку включен некий Network Manager с помощью которого можно ВПН поднимать.

Правда для этого ИЗ ИНЕТА надо плагин скачать :-)

Изменено пользователем Radiohead

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

dilmah, Radiohead, спасибо за советы, не получилось. Значь, судьба моя такая.

Но я не уныл. Как выяснилось, впн можно поднять ещё c mpd из под фрибсд. Слил себе pc bsd, написал в гугле pcbsd vpn, и по второму результату как по маслу настроил Mpd. Работает стабильно, включается автоматом при загрузке системы, дополнительных скриптов не требует.

Сделал всё как тут написано - http://forums.pcbsd.org/viewtopic.php?t=47...ee599814675e4e5, хотя PC BSD такая удобная, что там в каталоге /usr/local/etc/mpd/ валяются примеры файлов настройки и комментами к доступным опциям, так что в принципе можно было и самому попробовать настроить.

Субъективно: ПС БСД самый простой и юзабильный никс. Хотя если б mpd портировали в убунту, то пользовал бы её.

Изменено пользователем Kefka

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Какой default gw у марьино? 10.185.0.17?

 

У меня OpenSUSE 10.2, слил скрипт TWINc и запустил его с указанным выше шлюзом, ничего не заработало... Попытка замены в /etc/ppp/corbina vpn.corbina.net, на vpn.corbina.ru, тоже не помогла... Пытался настраивать конфиги и другими образами, но результат был то-же...

 

Если пытаться делать через KVpnc, он падает с ошибкой, по крайней мере в гноме, хоть устанавливался из родных пакетов Сьюзи (морочится с KDE, пока не хочется), а стандартный Network Manager, не подерживает PPTP вариант VPN.

 

Так вот, как настроить VPN в OpenSUSE 10.2, примерительно к Марьино?...

 

Что и где надо прописать, с подробностями?

 

Уже вторые сутки бьюсь...

 

С уважением...

Изменено пользователем unihorn

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

В общем поставил, запустил KVpnc в режиме мастера, сработал без глюков (хоть и не самым лучшим образом), а второй VPN, основной, тот которым я сейчас пользуюсь поставил нормальным способом...

 

А сборки Network Manager с подержкой PPTP есть?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Впервые поставил Linux, а точнее ASPLinux 11.2. Знания на уровне обычного юзера, методом научного тыка настроил VPN. А именно вот так:

1) Пингую vpn.corbina.net, узнаю IP на данный момент пусть будет примерно 195.14.38.18

ping -c5 vpn.corbina.net

2) добавляю рут через шлюз

route add -host 195.14.38.18 gw 10.119.0.17

3) соответственно меняю данные в созданном мною файле /etc/ppp/peer/corbina на полученный IP.

4) поднимаю VPN

pppd call corbina debug nodetach

проверяю наличие устройства ppp0

5) делаю его по умолчанию

route add default dev ppp0

 

Все начинает работать, ничего плохого не происходит. Но при перезагрузке-включении-выключении-смене пользователя, а могу настроить VPN только от root, настойки теряются. Приходится заново повторять вышеописанные действия. Вообще говоря, получается настроиться довольно быстро, но поступают претензии от домашних, для них крайне все запутанно и непривычно. Помогите, пож-та справиться.

Да, еще добавлю, если попытаться автоматизировать процесс настройки, то есть поставить vpn.corbina.net в файле /etc/ppp/peer/corbina и выставить все IP в ip-up, затем довавить команды в ip-down, то ничего не выходит.

Спасибо заранее тем, кто откликнется.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Доброй ночи,

Относительно ASP 11 все на много проще, можно все настроить стандартными средствами:

 

1) управление сетевыми устройствами/ выбрать сетевую катру,(настроить)/Маршрут (статические сетевые маршруты)прописать.

Можно просто вписать файл настройки:

#cat/etc/sysconfig/network-scripts/route-eth0

#cat/etc/sysconfig/networking/devices/route-eth0

######

GATEWAY20=10.197.255.255

NETMASK20=255.255.255.255

GATEWAY19=10.197.0.17

NETMASK19=255.255.255.255

ADDRESS19=195.14.38.20

GATEWAY18=10.197.0.17

NETMASK18=255.255.255.255

ADDRESS18=195.14.38.19

GATEWAY17=10.197.0.17

NETMASK17=255.255.255.255

ADDRESS17=195.14.38.18

GATEWAY16=10.197.0.17

NETMASK16=255.255.255.255

ADDRESS16=195.14.38.17

GATEWAY15=10.197.0.17

NETMASK15=255.255.255.255

ADDRESS15=195.14.38.16

GATEWAY14=10.197.0.17

NETMASK14=255.255.255.255

ADDRESS14=195.14.38.15

GATEWAY13=10.197.0.17

NETMASK13=255.255.255.255

ADDRESS13=195.14.38.14

GATEWAY12=10.197.0.17

NETMASK12=255.255.255.255

ADDRESS12=195.14.38.13

GATEWAY11=10.197.0.17

NETMASK11=255.255.255.255

ADDRESS11=195.14.38.12

GATEWAY10=10.197.0.17

NETMASK10=255.255.255.255

ADDRESS10=195.14.38.11

GATEWAY9=10.197.0.17

NETMASK9=255.255.255.255

ADDRESS9=195.14.38.10

GATEWAY8=10.197.0.17

NETMASK8=255.255.255.255

ADDRESS8=195.14.38.9

GATEWAY7=10.197.0.17

NETMASK7=255.255.255.255

ADDRESS7=195.14.38.8

GATEWAY6=10.197.0.17

NETMASK6=255.255.255.255

ADDRESS6=195.14.38.7

GATEWAY5=10.197.0.17

NETMASK5=255.255.255.255

ADDRESS5=195.14.38.6

GATEWAY4=10.197.0.17

NETMASK4=255.255.255.255

ADDRESS4=195.14.38.5

GATEWAY3=10.197.0.17

NETMASK3=255.255.255.255

ADDRESS3=195.14.38.4

GATEWAY2=10.197.0.17

NETMASK2=255.255.255.255

ADDRESS2=195.14.38.3

GATEWAY1=10.197.0.17

NETMASK1=255.255.255.255

ADDRESS1=195.14.38.2

GATEWAY0=10.197.0.17

NETMASK0=255.255.255.255

ADDRESS0=195.14.38.1

#####

после перезапуска серевых служб можно увидеть в консоле:

[root@localhost ~]# route -n

Kernel IP routing table

Destination Gateway Genmask Flags Metric Ref Use Iface

195.14.38.7 10.197.0.17 255.255.255.255 UGH 0 0 0 eth0

195.14.38.6 10.197.0.17 255.255.255.255 UGH 0 0 0 eth0

195.14.38.5 10.197.0.17 255.255.255.255 UGH 0 0 0 eth0

195.14.38.20 10.197.0.17 255.255.255.255 UGH 0 0 0 eth0

195.14.38.4 10.197.0.17 255.255.255.255 UGH 0 0 0 eth0

195.14.38.19 10.197.0.17 255.255.255.255 UGH 0 0 0 eth0

195.14.38.3 10.197.0.17 255.255.255.255 UGH 0 0 0 eth0

195.14.38.18 10.197.0.17 255.255.255.255 UGH 0 0 0 eth0

195.14.38.2 10.197.0.17 255.255.255.255 UGH 0 0 0 eth0

195.14.38.17 10.197.0.17 255.255.255.255 UGH 0 0 0 eth0

195.14.38.1 10.197.0.17 255.255.255.255 UGH 0 0 0 eth0

195.14.38.16 10.197.0.17 255.255.255.255 UGH 0 0 0 eth0

195.14.38.15 10.197.0.17 255.255.255.255 UGH 0 0 0 eth0

195.14.38.14 10.197.0.17 255.255.255.255 UGH 0 0 0 eth0

195.14.38.13 10.197.0.17 255.255.255.255 UGH 0 0 0 eth0

195.14.38.12 10.197.0.17 255.255.255.255 UGH 0 0 0 eth0

195.14.38.11 10.197.0.17 255.255.255.255 UGH 0 0 0 eth0

195.14.38.10 10.197.0.17 255.255.255.255 UGH 0 0 0 eth0

195.14.38.9 10.197.0.17 255.255.255.255 UGH 0 0 0 eth0

195.14.38.8 10.197.0.17 255.255.255.255 UGH 0 0 0 eth0

10.197.0.0 0.0.0.0 255.255.0.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 10.197.0.17 0.0.0.0 UG 0 0 0 eth0

 

2) настроить само подкючение Среда GNOME/системные параметры/PPTP/

общие

сервер VPN:vpn.corbina.net

пользователь:***

пароль:***

система

устройство: pptp0

Опции

опции PPP:(оставить пустым-используется при шифровании)

MRU : (пусто)

MTU : 1464

 

ВСЁ!!!

Вот еще пару ссылок в нете:

ASP . Как настроить VPN соединение?

 

КЛУБ пользователей ASPLinux

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Доброй ночи,

Относительно ASP 11 все на много проще, можно все настроить стандартными средствами:

 

1) управление сетевыми устройствами/ выбрать сетевую катру,(настроить)/Маршрут (статические сетевые маршруты)прописать.

Можно просто вписать файл настройки:

#cat/etc/sysconfig/network-scripts/route-eth0

#cat/etc/sysconfig/networking/devices/route-eth0

######

GATEWAY20=10.197.255.255

NETMASK20=255.255.255.255

GATEWAY19=10.197.0.17

NETMASK19=255.255.255.255

ADDRESS19=195.14.38.20

GATEWAY18=10.197.0.17

NETMASK18=255.255.255.255

ADDRESS18=195.14.38.19

GATEWAY17=10.197.0.17

NETMASK17=255.255.255.255

ADDRESS17=195.14.38.18

GATEWAY16=10.197.0.17

NETMASK16=255.255.255.255

ADDRESS16=195.14.38.17

GATEWAY15=10.197.0.17

NETMASK15=255.255.255.255

ADDRESS15=195.14.38.16

GATEWAY14=10.197.0.17

NETMASK14=255.255.255.255

ADDRESS14=195.14.38.15

GATEWAY13=10.197.0.17

NETMASK13=255.255.255.255

ADDRESS13=195.14.38.14

GATEWAY12=10.197.0.17

NETMASK12=255.255.255.255

ADDRESS12=195.14.38.13

GATEWAY11=10.197.0.17

NETMASK11=255.255.255.255

ADDRESS11=195.14.38.12

GATEWAY10=10.197.0.17

NETMASK10=255.255.255.255

ADDRESS10=195.14.38.11

GATEWAY9=10.197.0.17

NETMASK9=255.255.255.255

ADDRESS9=195.14.38.10

GATEWAY8=10.197.0.17

NETMASK8=255.255.255.255

ADDRESS8=195.14.38.9

GATEWAY7=10.197.0.17

NETMASK7=255.255.255.255

ADDRESS7=195.14.38.8

GATEWAY6=10.197.0.17

NETMASK6=255.255.255.255

ADDRESS6=195.14.38.7

GATEWAY5=10.197.0.17

NETMASK5=255.255.255.255

ADDRESS5=195.14.38.6

GATEWAY4=10.197.0.17

NETMASK4=255.255.255.255

ADDRESS4=195.14.38.5

GATEWAY3=10.197.0.17

NETMASK3=255.255.255.255

ADDRESS3=195.14.38.4

GATEWAY2=10.197.0.17

NETMASK2=255.255.255.255

ADDRESS2=195.14.38.3

GATEWAY1=10.197.0.17

NETMASK1=255.255.255.255

ADDRESS1=195.14.38.2

GATEWAY0=10.197.0.17

NETMASK0=255.255.255.255

ADDRESS0=195.14.38.1

#####

после перезапуска серевых служб можно увидеть в консоле:

[root@localhost ~]# route -n

Kernel IP routing table

Destination Gateway Genmask Flags Metric Ref Use Iface

195.14.38.7 10.197.0.17 255.255.255.255 UGH 0 0 0 eth0

195.14.38.6 10.197.0.17 255.255.255.255 UGH 0 0 0 eth0

195.14.38.5 10.197.0.17 255.255.255.255 UGH 0 0 0 eth0

195.14.38.20 10.197.0.17 255.255.255.255 UGH 0 0 0 eth0

195.14.38.4 10.197.0.17 255.255.255.255 UGH 0 0 0 eth0

195.14.38.19 10.197.0.17 255.255.255.255 UGH 0 0 0 eth0

195.14.38.3 10.197.0.17 255.255.255.255 UGH 0 0 0 eth0

195.14.38.18 10.197.0.17 255.255.255.255 UGH 0 0 0 eth0

195.14.38.2 10.197.0.17 255.255.255.255 UGH 0 0 0 eth0

195.14.38.17 10.197.0.17 255.255.255.255 UGH 0 0 0 eth0

195.14.38.1 10.197.0.17 255.255.255.255 UGH 0 0 0 eth0

195.14.38.16 10.197.0.17 255.255.255.255 UGH 0 0 0 eth0

195.14.38.15 10.197.0.17 255.255.255.255 UGH 0 0 0 eth0

195.14.38.14 10.197.0.17 255.255.255.255 UGH 0 0 0 eth0

195.14.38.13 10.197.0.17 255.255.255.255 UGH 0 0 0 eth0

195.14.38.12 10.197.0.17 255.255.255.255 UGH 0 0 0 eth0

195.14.38.11 10.197.0.17 255.255.255.255 UGH 0 0 0 eth0

195.14.38.10 10.197.0.17 255.255.255.255 UGH 0 0 0 eth0

195.14.38.9 10.197.0.17 255.255.255.255 UGH 0 0 0 eth0

195.14.38.8 10.197.0.17 255.255.255.255 UGH 0 0 0 eth0

10.197.0.0 0.0.0.0 255.255.0.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 10.197.0.17 0.0.0.0 UG 0 0 0 eth0

 

2) настроить само подкючение Среда GNOME/системные параметры/PPTP/

общие

сервер VPN:vpn.corbina.net

пользователь:***

пароль:***

система

устройство: pptp0

Опции

опции PPP:(оставить пустым-используется при шифровании)

MRU : (пусто)

MTU : 1464

 

ВСЁ!!!

Вот еще пару ссылок в нете:

ASP . Как настроить VPN соединение?

 

КЛУБ пользователей ASPLinux

 

 

Спасибо за подробный ответ, все получилось!

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

.net.

2) Паразитный маршрут нужно удалять в ip-up сразу же после установления pptp-соединения:

route del $5 dev ppp0

.

3) Маршрут до pptp-сервера необходимо прописывать при установлении соединения в ip-up и по желанию удалять при разрыве соединения в ip-down. В ip-up:

route add -host $5 gw 10.x.0.17

спасибо за совет, все работает (почти). но есть один нюанс, после прекращения выполнения скрипта из ip-up.d/ паразитный маршрут снова появляется. Если его не удалять из скрипта, то их вообще два будет.

Как это лечить? кто-нибудь сталкивался?

 

P.S. стоит Debian Etch, версия pptpclient-а 1.7.0

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас