Решено: OpenVPN-подключение к спут.провайдеру (Raduga (Yamal201/102), TT-budget S-1401, Mandriva 2007)

Для новичков как вообще в Linux, так и в конкретной теме, к которой относится вопрос.

Модератор: Bizdelnick

Netman
Сообщения: 145
Статус: Просто прохожий...
ОС: Debian GNU/Linux, FreeBSD

Решено: OpenVPN-подключение к спут.провайдеру

Сообщение Netman »

Здравствуйте.

Вот уже который день н могу настроить подключение к спутниковуму провайдре... Драйвера для карты установлены (из снапшота, скаченого с linuxtv.org), и прием Сат-ТВ есть, но с интернетом пока не справился... Нужна помощь.

Провайдер - Радуга-Интернет (на Ямал201/102)
Тип подключения - OpenVPN
DVB-карта - TT-budget S-1401
OS - Mandrivalinux 2007, LAR.i586
"Наземный" канал - GPRS

Подклюение по OpenVPN выбрал именно потому, что нет другой возможности - в качестве "наземки" используется GRPS. Перечитал множество инструкций, в большинстве не для моей карты, пробовл множество вариантов, но так ничего не получилось. Вот начем я сейчас остановился:

Устанавливаю "наземное" соединение и запускаю скрипт подключения:

Код: Выделить всё

#!/bin/sh
#
#Данные на вход:
#
#рабочая директория
DIR=/usr/
#пид провайдера
PID=4158
#интерфейс
DEV_NAME=dvb0_0
#IP dvb-карты
IP_ADDR=10.95.2.1
# MAC адрес
MAC_ADDR=00:00:0A:FA:3E:90

#
#Cкрипт поднятия интерфейса и подлючения:
#
cd $DIR/bin
#подгрузка модуля для карты
modprobe budget
# Лочим сигнал
$DIR/bin/szap -c /etc/channels.conf -n 1 -x
# создаем сетевой адаптер
$DIR/bin/dvbnet -p $PID
#подгрузка модуля для tun/tap-устройства
modprobe tun
lsmod | grep tun
# присваеваем карте IP
/sbin/ifconfig $DEV_NAME $IP_ADDR netmask 255.255.255.255 broadcast
# присваеваем карте MAC
/sbin/ifconfig $DEV_NAME hw ether $MAC_ADDR
#маршрутизация
route add $IP_ADDR dev $DEV_NAME
#старт OpenVPN соединения
openvpn --config /etc/openvpn/client.config

Здесь, как я понял и инструкций, IP_ADDR выбирается "от балды", с некоторыми ограничениями - он не должен нигде больше использоваться. MAC_ADDR - это переведенный в шестнадцатиричную форму IP, выделенный мне провайдером (фильтрация по IP, не по MAC карты). PID - мой пид, выдан провайдером.

Вот результат выполнения скрипта:

Код: Выделить всё

# ./dvb1.sh

reading channels from file '/root/.szap/channels.conf'
zapping to 1 'Raduga':
sat 0, frequency = 11672 MHz V, symbolrate 14600000, vpid = 0x0000, apid =0x0000
using '/dev/dvb/adapter0/frontend0' and '/dev/dvb/adapter0/demux0'
status 00 | signal 7272 | snr fafa | ber 00000000 | unc 00000000 |
status 1f | signal 7373 | snr 5e5e | ber 00001d81 | unc 0000007f | FE_HAS_LOCK

DVB Network Interface Manager
Version 1.1.0-TVF (Build Fri Jun 02 20:11:18 2006)
Copyright (C) 2003, TV Files S.p.A
Device: /dev/dvb/adapter0/net0
Status: device dvb0_0 for pid 4158 created successfully.

tun              9312                  0

Sat Mar 3 23:13:38 2007 OpenVPN 2.0.7 i586-mandriva-linux-gnu [SSL] [LZO] [EPOLL] built on Apr 19 2006
Sat Mar 3 23:13:38 2007 IMPORTANT: OpenVPN's default port number is now 1194, based on an official port number assignment by IANA. OpenVPN 2.0-beta16 and earlier used 5000 as the default port.
Sat Mar 3 23:13:38 2007 WARNING: file '/etc/openvpn/DpRY200_4213.key' is group or others accessible
Sat Mar 3 23:13:38 2007 LZO compression initialized
Sat Mar 3 23:13:38 2007 Control Channel MTU parms [ L:1574 D:138 EF:38 EB:0 ET:0 EL:0 ]
Sat Mar 3 23:13:38 2007 Data Channel MTU parms [ L:1574 D:1450 EF:42 EB:135 ET:32 EL:0 AF:3/1 ]
Sat Mar 3 23:13:38 2007 Local Options hash (VER=V4): 'd79ca330'
Sat Mar 3 23:13:38 2007 Expected Remote Options hash (VER=V4): 'f7df56b8'
Sat Mar 3 23:13:38 2007 NOTE: UID/GID downgrade will be delayed because of --client, --pull, or --up-delay
Sat Mar 3 23:13:38 2007 UDPv4 link local: [undef]
Sat Mar 3 23:13:38 2007 UDPv4 link remote: 80.81.208.66:55460
Sat Mar 3 23:13:41 2007 TLS: Initial packet from 80.81.208.66:55460, sid=2bac64d1 d04130b0
Sat Mar 3 23:13:46 2007 VERIFY OK: depth=1, /C=RU/ST=MW/L=MOSCOW/O=RadugaVPN/emailAddress=support@telecom-service.net
Sat Mar 3 23:13:46 2007 VERIFY OK: nsCertType=SERVER
Sat Mar 3 23:13:46 2007 VERIFY OK: depth=0, /C=RU/ST=MW/O=RadugaVPN/CN=RadugaVPN/emailAddress=support@telecom-service.net
Sat Mar 3 23:13:53 2007 Data Channel Encrypt: Cipher 'BF-CBC' initialized with 128 bit key
Sat Mar 3 23:13:53 2007 Data Channel Encrypt: Using 160 bit message hash 'SHA1' for HMAC authentication
Sat Mar 3 23:13:53 2007 Data Channel Decrypt: Cipher 'BF-CBC' initialized with 128 bit key
Sat Mar 3 23:13:53 2007 Data Channel Decrypt: Using 160 bit message hash 'SHA1' for HMAC authentication
Sat Mar 3 23:13:53 2007 Control Channel: TLSv1, cipher TLSv1/SSLv3 DHE-RSA-AES256-SHA, 1024 bit RSA
Sat Mar 3 23:13:53 2007 [RadugaVPN] Peer Connection Initiated with 80.81.208.66:55460
Sat Mar 3 23:13:54 2007 SENT CONTROL [RadugaVPN]: 'PUSH_REQUEST' (status=1)
Sat Mar 3 23:13:55 2007 PUSH: Received control message: 'PUSH_REPLY,redirect-gateway,dhcp-option DNS 80.81.208.66,route-gateway 10.250.35.1,ping 30,ping-restart 120,route 0.0.0.0 0.0.0.0 10.250.62.1,dhcp-option DNS 80.81.208.34,ifconfig 10.250.62.144 255.255.255.0'
Sat Mar 3 23:13:55 2007 OPTIONS IMPORT: timers and/or timeouts modified
Sat Mar 3 23:13:55 2007 OPTIONS IMPORT: --ifconfig/up options modified
Sat Mar 3 23:13:55 2007 OPTIONS IMPORT: route options modified
Sat Mar 3 23:13:55 2007 OPTIONS IMPORT: --ip-win32 and/or --dhcp-option options modified
Sat Mar 3 23:13:55 2007 TUN/TAP device tap0 opened
Sat Mar 3 23:13:55 2007 /sbin/ifconfig tap0 10.250.62.144 netmask 255.255.255.0 mtu 1500 broadcast 10.250.62.255
Sat Mar 3 23:13:55 2007 /sbin/route add -net 80.81.208.66 netmask 255.255.255.255 gw 192.168.254.254
Sat Mar 3 23:13:55 2007 /sbin/route del -net 0.0.0.0 netmask 0.0.0.0
Sat Mar 3 23:13:55 2007 /sbin/route add -net 0.0.0.0 netmask 0.0.0.0 gw 10.250.35.1
SIOCADDRT: ???? ??????????
Sat Mar 3 23:13:55 2007 ERROR: Linux route add command failed: shell command exited with error status: 7
Sat Mar 3 23:13:55 2007 /sbin/route add -net 0.0.0.0 netmask 0.0.0.0 gw 10.250.62.1
Sat Mar 3 23:13:56 2007 GID set to nobody
Sat Mar 3 23:13:56 2007 UID set to nobody
Sat Mar 3 23:13:56 2007 Initialization Sequence Completed


Таблица route:

Код: Выделить всё

# route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
80.81.208.66  |   192.168.254.254  |   255.255.255.255  |   UGH  |   0  |   0  |   0  |   ppp0
192.168.254.254  |   0.0.0.0  |   255.255.255.255  |   UH  |   0  |   0  |   0  |   ppp0
10.95.2.1  |   0.0.0.0  |   255.255.255.255  |   UH  |     0  |   0  |   0  |   dvb0_0
10.250.62.0  |   0.0.0.0  |   255.255.255.0  |   U  |   0  |   0  |   0  |   tap0
169.254.0.0  |   0.0.0.0  |   255.255.0.0  |   U  |   0  |   0  |   0  |   lo
127.0.0.0  |   0.0.0.0  |   255.0.0.0  |   U  |   0  |   0  |   0  |   lo
0.0.0.0  |   10.250.62.1  |   0.0.0.0  |   UG  |   0  |   0  |   0  |   tap0


Но результат нулевой... ответы на запросы не приходят. Так, например, дав команду "ping ya.ru" вижу, что запросы есть (судя по монитуру KPPP, через которую устанавливаю наземное подключение), но ответа нет.

Прошу подсказать и "подтолкнуть" в нужном направлении.

Заранее спасибо
Hi! I'm a signature virus. Copy me into your signature to help me spread.
Спасибо сказали:
Лис
Сообщения: 1639
ОС: Zenwalk

Re: Решено: OpenVPN-подключение к спут.провайдеру

Сообщение Лис »

По-моему, вручную маршруты прописывать ненужно. Программа сама все прописывает. По крайней мере, у меня не нужно было.
Спасибо сказали:
Netman
Сообщения: 145
Статус: Просто прохожий...
ОС: Debian GNU/Linux, FreeBSD

Re: Решено: OpenVPN-подключение к спут.провайдеру

Сообщение Netman »

Лис писал(а): ↑
03.03.2007 21:14
По-моему, вручную маршруты прописывать ненужно. Программа сама все прописывает. По крайней мере, у меня не нужно было.


т.е. нужно убрать вот эту часть из скрипта?

Код: Выделить всё

#маршрутизация
route add $IP_ADDR dev $DEV_NAME
Hi! I'm a signature virus. Copy me into your signature to help me spread.
Спасибо сказали:
Лис
Сообщения: 1639
ОС: Zenwalk

Re: Решено: OpenVPN-подключение к спут.провайдеру

Сообщение Лис »

Попробуйте. Тем более, что, судя по всему, ошибка именно в маршрутизации.
Спасибо сказали:
Netman
Сообщения: 145
Статус: Просто прохожий...
ОС: Debian GNU/Linux, FreeBSD

Re: Решено: OpenVPN-подключение к спут.провайдеру

Сообщение Netman »

Попробовал... Попробовл еще несколько вариантов - результата нет. В логах OpenVPN есть вот эти ошибки:

Sun Mar 4 01:35:06 2007 OpenVPN 2.0.7 i586-mandriva-linux-gnu [SSL] [LZO] [EPOLL] built on Apr 19 2006
Sun Mar 4 01:35:06 2007 IMPORTANT: OpenVPN's default port number is now 1194, based on an official port number assignment by IANA. OpenVPN 2.0-beta16 and earlier used 5000 as the default port.
Sun Mar 4 01:35:06 2007 WARNING: file '/etc/openvpn/DpRY200_4213.key' is group or others accessible
Sun Mar 4 01:35:06 2007 LZO compression initialized
Sun Mar 4 01:35:06 2007 Control Channel MTU parms [ L:1574 D:138 EF:38 EB:0 ET:0 EL:0 ]
Sun Mar 4 01:35:06 2007 Data Channel MTU parms [ L:1574 D:1450 EF:42 EB:135 ET:32 EL:0 AF:3/1 ]
Sun Mar 4 01:35:06 2007 Local Options hash (VER=V4): 'd79ca330'
Sun Mar 4 01:35:06 2007 Expected Remote Options hash (VER=V4): 'f7df56b8'
Sun Mar 4 01:35:06 2007 NOTE: UID/GID downgrade will be delayed because of --client, --pull, or --up-delay
Sun Mar 4 01:35:06 2007 UDPv4 link local: [undef]
Sun Mar 4 01:35:06 2007 UDPv4 link remote: 80.81.208.66:55480
Sun Mar 4 01:35:07 2007 TLS: Initial packet from 80.81.208.66:55480, sid=70be6715 8b143e6e
Sun Mar 4 01:35:12 2007 VERIFY OK: depth=1, /C=RU/ST=MW/L=MOSCOW/O=RadugaVPN/emailAddress=support@telecom-service.net
Sun Mar 4 01:35:12 2007 VERIFY OK: nsCertType=SERVER
Sun Mar 4 01:35:12 2007 VERIFY OK: depth=0, /C=RU/ST=MW/O=RadugaVPN/CN=RadugaVPN/emailAddress=support@telecom-service.net
Sun Mar 4 01:35:19 2007 Data Channel Encrypt: Cipher 'BF-CBC' initialized with 128 bit key
Sun Mar 4 01:35:19 2007 Data Channel Encrypt: Using 160 bit message hash 'SHA1' for HMAC authentication
Sun Mar 4 01:35:19 2007 Data Channel Decrypt: Cipher 'BF-CBC' initialized with 128 bit key
Sun Mar 4 01:35:19 2007 Data Channel Decrypt: Using 160 bit message hash 'SHA1' for HMAC authentication
Sun Mar 4 01:35:19 2007 Control Channel: TLSv1, cipher TLSv1/SSLv3 DHE-RSA-AES256-SHA, 1024 bit RSA
Sun Mar 4 01:35:19 2007 [RadugaVPN] Peer Connection Initiated with 80.81.208.66:55480
Sun Mar 4 01:35:20 2007 SENT CONTROL [RadugaVPN]: 'PUSH_REQUEST' (status=1)
Sun Mar 4 01:35:21 2007 PUSH: Received control message: 'PUSH_REPLY,redirect-gateway,dhcp-option DNS 80.81.208.66,route-gateway 10.250.62.1,ping 30,ping-restart 120,route 0.0.0.0 0.0.0.0 10.250.62.1,dhcp-option DNS 80.81.208.34,ifconfig 10.250.62.144 255.255.255.0'
Sun Mar 4 01:35:21 2007 OPTIONS IMPORT: timers and/or timeouts modified
Sun Mar 4 01:35:21 2007 OPTIONS IMPORT: --ifconfig/up options modified
Sun Mar 4 01:35:21 2007 OPTIONS IMPORT: route options modified
Sun Mar 4 01:35:21 2007 OPTIONS IMPORT: --ip-win32 and/or --dhcp-option options modified
Sun Mar 4 01:35:21 2007 TUN/TAP device tap0 opened
Sun Mar 4 01:35:21 2007 /sbin/ifconfig tap0 10.250.62.144 netmask 255.255.255.0 mtu 1500 broadcast 10.250.62.255
Sun Mar 4 01:35:21 2007 /sbin/route add -net 80.81.208.66 netmask 255.255.255.255 gw 192.168.254.254
Sun Mar 4 01:35:21 2007 /sbin/route del -net 0.0.0.0 netmask 0.0.0.0
Sun Mar 4 01:35:21 2007 /sbin/route add -net 0.0.0.0 netmask 0.0.0.0 gw 10.250.62.1
Sun Mar 4 01:35:21 2007 /sbin/route add -net 0.0.0.0 netmask 0.0.0.0 gw 10.250.62.1
SIOCADDRT: Файл существует
Sun Mar 4 01:35:21 2007 ERROR: Linux route add command failed: shell command exited with error status: 7

Sun Mar 4 01:35:21 2007 GID set to nobody
Sun Mar 4 01:35:21 2007 UID set to nobody
Sun Mar 4 01:35:21 2007 Initialization Sequence Completed

Что они означают?


PS Не могли бы вы подлится своими настройками (конфиг для OpenVPN и скрипт для поднятия сети), на работающем примере мне бы проще было разобраться, чем практически на угад по различным инструкциям...
Hi! I'm a signature virus. Copy me into your signature to help me spread.
Спасибо сказали:
Лис
Сообщения: 1639
ОС: Zenwalk

Re: Решено: OpenVPN-подключение к спут.провайдеру

Сообщение Лис »

PS Не могли бы вы подлится своими настройками (конфиг для OpenVPN и скрипт для поднятия сети), на работающем примере мне бы проще было разобраться, чем практически на угад по различным инструкциям...

У меня все просто было. Провайдер предоставил конфиг и pkcs12 файл. Запускал я его просто

Код: Выделить всё

/sbin/openvpn --daemon  --config /etc/openvpn/openvpn.conf --log /var/log/openvpn &

конфиг следующий:

Код: Выделить всё

client
dev tap
remote <gateway> <port, the default is 1194>
resolv-retry infinite
persist-key
mute-replay-warnings
pkcs12 <path to pkcs12>
ns-cert-type server
verb 3
auth-user-pass
Спасибо сказали:
Netman
Сообщения: 145
Статус: Просто прохожий...
ОС: Debian GNU/Linux, FreeBSD

Re: Решено: OpenVPN-подключение к спут.провайдеру

Сообщение Netman »

Спасибо, но у вас действительно все проще... Ни на сайте Радуги, ни на их форуме нет толкового объяснения, как подключиться ч/з OpenVPN - кое-какая информация есть, но... все уж больно разрозненно, и у каждого по разному, даже для одной платформы разные варианты встречаются :(

От ошибок при коннекте OpenVPN к серверу избавился, подправил конфиг, но беда в том, что автоматом, как в Windows, маршруты нужные не прописываются - а я с ними пока особо-то не сталкивася :(
Hi! I'm a signature virus. Copy me into your signature to help me spread.
Спасибо сказали:
Лис
Сообщения: 1639
ОС: Zenwalk

Re: Решено: OpenVPN-подключение к спут.провайдеру

Сообщение Лис »

Просто добавьте дефолтный на tap0.

Код: Выделить всё

route add default gw <tour_gateway> dev tap0

Возможно, что перед этим придется удалить предыдущий дефолтный с eth0
Спасибо сказали:
Netman
Сообщения: 145
Статус: Просто прохожий...
ОС: Debian GNU/Linux, FreeBSD

Re: Решено: OpenVPN-подключение к спут.провайдеру

Сообщение Netman »

Ура!!! Я наконец-то настроил спутниковый интернет! Перечитав множество разрозненой информации, кучу инструкций для различных карт и провайдеров, отдельные фразы про настройку маршрутизации... наконец разобрался с маршрутами!

Написал пару скриптов для поднятия DVB-интерфейса и установки OpenVPN-подключения. Ниже опишу свои действия и приведу скрипты:

И так, мы имеем:
- Mandriva 2007 LAR.i586;
- DVB-карта TT-budget S-1401;
- Провайдер: Raduga-Internet, Yamal 201/102;
- Тип подключения: OpenVPN (+Sprint опционально);

Для подключения через OpenVPN нам понадобятся конфиги, которые вы получить у провайдера. Радуга дает толко версию конфига под OpenVPN-Win32 - нам придется его немного изменить. Конфиг имеет следующий вид:

Код: Выделить всё

dev tap
port 55480
proto udp
remote 80.81.208.66

comp-lzo
comp-noadapt

ifconfig 10.250.62.144 255.255.255.0

tun-mtu 250
tls-client

ca /etc/openvpn/raduga/ca.crt
cert /etc/openvpn/raduga/<login>.crt
key /etc/openvpn/raduga/<login>.key

ns-cert-type server
user nobody
group nobody
verb 4

и так, несколько пояснений, сверху вниз:
- поле port - номер порта VPN-сервера, значение см. в конфиге для Windows-версии OpenVPN;
- поле remote - IP-адрес сервер провайдера, значание см. в конфиге для Windows-версии OpenVPN;
- поле ifconfig: здесь вместо 10.250.62.144 вам нужно указать ВАШ IP-АДРЕС ПОДПИСКИ;
- в поле ca указать путь до файла ca.crt, который должне находится в архиве с конфигом для Windows-версии OpenVPN;
- в поле cert указать путь до файла <login>.crt, где вместо login указать ваш логин подписки( файл должен находится в архиве с конфигом для Windows-версии OpenVPN);
- в поле key указать путь до файла <login>.key, где вместо login указать ваш логин подписки( файл должен находится в архиве с конфигом для Windows-версии OpenVPN);

На этом OpenVPN пока оставим в покое, составление конфиг-файла для OpenVPN окончено.

Теперь перейдем к поднятию интерфейса DVB-карты. Положим, что драйвера карты уже установлены, это отдельный и более менее освещенный вопрос, хотя возможно, "по заявкам желающих", если таковые будут, я опишу свои действия, которые я проделал "поднимая" карту и приводя ее в состояние "боеготовности" :)
Для поднятия интерфейса и использую следующий скрипт:

dvb.sh

Код: Выделить всё

#!/bin/sh
#
#Данные для подключения
#
#Ваш пид
PID=4158
#MAC адрес, высчитанный по IP подписки
IPMAC=00:02:0A:FA:3E:90
#Имя DVB-интерфейса
DVBNAME=dvb0_0
#IP DVB-карты
IPDVB=192.168.44.21

#
#Лочим сигнал
#
szap -n 1 -x

#
#Старт DVB-интерфейса
#
dvbnet -p $PID -a 0
ifconfig $DVBNAME $IPDVB netmask 255.255.255.255 broadcast 255.255.255.255
ifconfig $DVBNAME hw ether $IPMAC
/sbin/ip route add $IPDVB dev $DVBNAME
echo 1000000 > /proc/sys/net/core/rmem_max
echo -n 0 > /proc/sys/net/ipv4/conf/dvb0_0/rp_filter

Я постарался выделить все переменные, которые вам возможно придется изменить. И так:
- PID - ваш пид, см. в личном кабинете или на странице биллинга;
- IPMAC - MAC-адрес карты. Для сервисов, на которых фильтрация идет по MAC-адресу, нужно будет вписать MAC-адрес вашей DVB-карты. Случаях же, когда фильтрация происходит по IP-адресу подписки, как в нашем случае, нужно будет "посчитать" MAC-адрес самостоятельно: сначало нужно будет перевести ваш IP подписки в шестнадцатиричную сис-му счисления (например, 10.250.62.144 => 0A:FA:3E:90 - можно сделать в любом "инженерном" калькуляторе, или в KCalc), а затем получить к добавленному адресу значения 00 02 (в зависимости от провайдера спутника и, быть может, случая нужно будет подставлять 00 00 или 00 01), итого мы плолучим адрес ледующего вида - 00:02:0A:FA:3E:90;
- DVBNAME - имя интерфейса, в большинстве случае лучше не менять;
- IPDVB - IP для поднятого интерфейса, фактически взят "с потолка", т.е. можно взять любой IP, который не исользуется вами и желательно не будет использован - я взял такой же IP, какой по умолчанию присваевается в Windows;
Далее следует сам скрипт, комментарии присутствуют.
отдельно бы хотелось сказать о команде "szap" - эта утилита, входящая в пакет dvb-apps, который обязателен в нашем случае. Она по умолчанию использует файл /home/<user_name>/.szap/channels.conf или /root/.szap/channels.conf, в зависимости от того, из под кого вы запускаете скрипт (из под пользователя и суперпользователя, соответсвенно). Содержание этого файла должно иметь следующий вид:

Код: Выделить всё

Raduga:11672:v:0:14600:0:0
, где:
Raduga - назание провайдре, указывайте любое на ваш вкус,
11672 - частоста,
v - поляризация
0 (первый ноль) - порт дисека (0, 1, 2 или 3 - соответственно, нет или 1й, 2й, 3й, 4й),
14600 - символьная скорость,
0:0:0 - pid'ы и id которые нам не понадобятся.

Предположим, что операции поднятия интерфейса прошли удачно. Перейдем к самому OpenVPN подключению.
Певое, что надо сделать, - установить наземное соединение. Устанавливаем... Установили? Хорошо, идем дальше.
Для осуществления OpenVPN-подключения я использую следующий скрипт:

connect.sh

Код: Выделить всё

#!/bin/sh
#
#Данные для подключения
#
#Директория OpenVPN
ODIR=/etc/openvpn
#Относительный путь до OpenVPN-конфига
CONF=raduga/client
#IP адрес подписки
IPP=10.250.62.144
#Шлюз
IPS=10.250.62.1
#Имя TUN/TAP интерфейса
TUNTAP=tap0
#Адрес OpenVPN-сервера
VPNIP=80.81.208.66
#Шлюз наземнного провайдера
IPGS=192.168.254.254
#Директория Sprint
SDIR=/etc/sprint

#
#Подключение
#
echo 'Trying to establish OpenVPN connection...'
echo ' '
cd $ODIR
openvpn --config $CONF --daemon --log connection.log
sleep 10
echo 'Connection established'

#
#Маршрутизация
#
echo 'Routing...'
route add $VPNIP gw $IPGS
/sbin/ip route del default
/sbin/ip route add default via $IPS src $IPP
echo 'Done'

#
#Запуск Sprint
#
echo 'Starting Sprint...'
cd $SDIR
./sprint

Здесь мы имеем слудующие переменные:
ODIR - дериктория, в которой находятся конфиги OpenVPN;
CONF - путь до файла-конфига относительно ODIR (т.е. у меня в директории /etc/openvpn есть поддиректория raduga, в которой находится конфиг с именем client);
IPP - адрес вашей подписки, где искать - сказано выше;
IPS - адрес шлюза, обычно это адрес подписки с цифрой "1" в конце (например, адрем - 10.250.62.144, шлюз - 10.250.62.1);
TUNTAP - Имя TUN/TAP интерфейса - в большинстве случае можно не трогать;
VPNIP - адрес VPN-сервера, где искать - сказано выше;
IPGS - шлюз наземного провайдера, можно посмотреть в мониторе сети, после установки наземного подключения
SDIR - директория в которой находится ускоритель Sprint (если вы не пользуетесь этим ускорителем, то эту строчку, как и всю секцию, в которой идет запуск ускорителя, можно удалить или закомментировать).


После того как скрипт отработает, таблица маршрутизации будет иметь примерно следующий вид:

Код: Выделить всё

# route
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
192.168.44.21   *               255.255.255.255 UH    0      0        0 dvb0_0
80.81.208.66    192.168.254.254 255.255.255.255 UGH   0      0        0 ppp0
192.168.254.254 *               255.255.255.255 UH    0      0        0 ppp0
10.250.62.0     *               255.255.255.0   U     0      0        0 tap0
169.254.0.0     *               255.255.0.0     U     0      0        0 lo
127.0.0.0       *               255.0.0.0       U     0      0        0 lo
default         10.250.62.1     0.0.0.0         UG    0      0        0 tap0



Теперь поговорим о некотором удобстве... Справедливости ради, стоит сказать, что скрипты будут работать, если они запущены от root в консоли... Более того, если запускаете ускоритель Sprint, то консоль нельзя будет закрыть после его запуска, т.к. Sprint не запускается демоном, и будет закрыт вместе с консолью :(

Однако, для себя я нашел решение - использование sudo. О том как пользоваться sudo я описывать не буду, вы можете почитать man'ы (команда "man sudo") или поискать информацию в интернете
Применение следующее: на рабочем столе создал ссылку на приложение, и на вкладке "Приложение" в поле "команда" прописал следующую строчку:

Код: Выделить всё

sudo <путь до директории со скриптом>/dvb-connetc.sh
, где "dvb-connect.sh" - имя скрипта (у меня один скрипт - я "склеил" выше описанные два в один).
Теперь я устанавливаю наземное соединение и делаю двойной клик на созданной ссылке и... ву а-ля! Через несколько секунд у меня настроен спутниковый Интернет :)

PS Как бы чего не забыл... вопросы и критика приветсвуется :)
Hi! I'm a signature virus. Copy me into your signature to help me spread.
Спасибо сказали:
Аватара пользователя
bss14
Сообщения: 5
ОС: MDV 2007.0

Re: Решено: OpenVPN-подключение к спут.провайдеру

Сообщение bss14 »

Здравствуйте !!!
Прошу хелп
дистрибутив Mandriva 2007 discovery
двб карта ss2
вопрос такой установил openvpn из пакета rpm и куда теперь вставить пароли и все сертификаты?
спасибо
Спасибо сказали:
Netman
Сообщения: 145
Статус: Просто прохожий...
ОС: Debian GNU/Linux, FreeBSD

Re: Решено: OpenVPN-подключение к спут.провайдеру

Сообщение Netman »

Прочитайте мой пост выше
Hi! I'm a signature virus. Copy me into your signature to help me spread.
Спасибо сказали:
Аватара пользователя
bss14
Сообщения: 5
ОС: MDV 2007.0

Re: Решено: OpenVPN-подключение к спут.провайдеру

Сообщение bss14 »

Netman у вас в скрипте написано /etc/openvpn
а у меня в /etc/ openvpn отсутствует где его искать и как? :wacko:
Спасибо сказали:
Netman
Сообщения: 145
Статус: Просто прохожий...
ОС: Debian GNU/Linux, FreeBSD

Re: Решено: OpenVPN-подключение к спут.провайдеру

Сообщение Netman »

Директорию "/etc/openvpn" я создавал самостоятельно, в ручную :)
Скрипты, ключи и сертификаты можно положить в любую удобную для вас директорию - главное не забыть прописать соотв. пути.
Hi! I'm a signature virus. Copy me into your signature to help me spread.
Спасибо сказали:
Аватара пользователя
bss14
Сообщения: 5
ОС: MDV 2007.0

Re: Решено: OpenVPN-подключение к спут.провайдеру

Сообщение bss14 »

Netman спасибо сегодня попробую, только openvpn встал по всей системе после установки из пакета я в МС пробовал его найти он нашел несколько директорий и файлов с опенвпн куда запихать ключи подписки в итоге? :wacko:

"Не каждый вопрос заслуживает ответа."
Netman спасибо разобрался
Спасибо сказали: