Описывается настройка спутникового интернета провайдера «Радуга Интернет» через openvpn
.
- После установки спутниковой карты в свободный слот PCI и загрузки ОС создаем файл «
/etc/modprobe.d/dvb_core.modprobe
»options dvb_core dvb_shutdown_timeout=915360000
Этим мы препятствуем «засыпанию» карты. В новых ядрах, в отличие от старых, установка параметра «dvb_shutdown_timeout
» в «0
» не помогает и потому надо выставлять заведомо большое значение таймаута (в секундах). - Перезагружаем компьютер.
- Устанавливаем требуемые утилиты
$ sudo aptitude install dvb-utils
- Создаем файл «
/etc/channels.conf
»Raduga:11671:v:0:18200:0:0:0
Здесь:Raduga
– название канала. Может быть любым.11671
– частотаv
– поляризация. Может быть H – горизонтальная и V – вертикальная0
– FEC:0
– Авто,3
–3/4
,...-
18200
– Величина потока (Symbol rate) 0
– Видео PID0
– Аудио PID0
– Program id
- Пробуем залочиться на сигнал
$ szap -c /etc/channels.conf -x -n 1
Ключевые значения: «
reading channels from file '/etc/channels.conf'
zapping to 1 'Raduga':
sat 0, frequency = 11671 MHz V, symbolrate 18200000, vpid = 0, apid = 0
using '/dev/dvb/adapter0/frontend0' and '/dev/dvb/adapter0/demux0'
status 07 | signal 9797 | snr 3270 | ber 0000ff00 | unc 00000000 |
status 1f | signal 9696 | snr d344 | ber 00001800 | unc 00000000 | FE_HAS_LOCKstatus 1f
» и «FE_HAS_LOCK
». Остальные поля указывают уровень сигнала, количество ошибок и т.п. Когда устойчивый сигнал будет получен,szap
завершит свою работу. - Теперь отключим
rp_filter
, фильтрующий пакеты которые не могут уйти через тот же интерфейс что и пришли. В нашем случае пакет приходит через один интерфейс, а уходит через другой$ sudo sh -c 'echo 0 > /proc/sys/net/ipv4/conf/dvb0_0/rp_filter'
- Создаем сетевый интерфейс спутниковой карты
$ sudo dvbnet -p 1234
где «1234
» - вашPID
. После выполнения команды должен появиться сетевой интерфейс «dvb0_0
» (неактивный). - Настраиваем интерфейс
$ sudo ifconfig dvb0_0 hw ether YOUR-MAC-ADDRESS YOUR-IP-ADDRESS netmask 255.255.255.0 up
где «YOUR-MAC-ADDRESS
» и «YOUR-IP-ADDRESS
» соответственно MAC-адрес и IP-адрес вашей подписки. - Смотрим на наличие входящего трафика на интерфейсе «
dvb0_0
»$ sudo dvbtraffic
Если программа ничего не выводит, то проблемы могут быть в неправильных параметрах или «заснула» спутниковая карта.
-PID--FREQ-----BANDWIDTH-BANDWIDTH-
0000 10 p/s 1 kb/s 15 kbit
0010 0 p/s 0 kb/s 1 kbit
0011 0 p/s 0 kb/s 1 kbit
0014 0 p/s 0 kb/s 1 kbit
0032 60 p/s 11 kb/s 90 kbit
003c 10 p/s 1 kb/s 15 kbit
003d 31 p/s 5 kb/s 47 kbit
0064 13 p/s 2 kb/s 20 kbit - Правим конфигурационный файл
«/etc/network/interfaces
» и добавляемauto dvb0_0
iface dvb0_0 inet manual
pre-up sh -c '/usr/bin/dvbnet -a 0 -p 1234 > /dev/null'
up ifconfig $IFACE hw ether YOUR-MAC-ADDRESS YOUR-IP-ADDRESS netmask 255.255.255.0 up
up sh -c 'echo 0 > /proc/sys/net/ipv4/conf/dvb0_0/rp_filter'
up sh -c '/usr/bin/szap -c /etc/channels.conf -n 1 -x'
down ifconfig $IFACE down
down /usr/bin/dvbnet -d 0
openvpn
- Установим openvpn
$ sudo aptitude install openvpn
- Скачаем из личного кабинета архив с ключами для
openvpn
. Из архива распакуем файлыca.crt
,client.ovpn
,i0xxxxxx.csr
,i0xxxxxx.crt
,i0xxxxxx.key
. - Скопируем все эти файлы в директорию «
/etc/openvpn
». - Сменим права доступа к файлу «
i0xxxxxx.key
»$ sudo chmod 0400 /etc/openvpn/i0xxxxxx.key
- Переименуем файл «
client.ovpn
» в «raduga.conf
» и отредактируем его. В итоге должно получиться примерно такое содержаниеclient
Создаем файл «
dev tap
# dev-node Raduga
proto udp
remote 80.81.208.66 55032
resolv-retry infinite
nobind
persist-key
persist-tun
ca /etc/openvpn/ca.crt
cert /etc/openvpn/i0xxxxxx.crt
key /etc/openvpn/i0xxxxxx.key
ns-cert-type server
verb 3
comp-lzo
comp-noadapt
auth-user-pass /etc/openvpn/password.txt
route-up /etc/openvpn/tap0-route.sh/etc/openvpn/password.txt
» с именем и паролем подпискиuser
и делаем его доступным на чтение только владельцу
password$ sudo chmod 0400 /etc/openvpn/password.txt
- Создаем скрипт «
/etc/openvpn/tap0-route.sh
», выполняемый после поднятия роутов.netstat -rn | \
В моем случае
sed '1,2d' | \
awk '{ \
if ($1 == "0.0.0.0" \
&& $2 == "10.251.32.1" \
&& $3 == "0.0.0.0" \
&& $8 != "tap0") { \
EX=sprintf("/sbin/route del -net 0.0.0.0/0 gw %s dev %s && /sbin/route add -net 0.0.0.0/0 gw %s dev tap0\n", $2, $8, $2); system(EX); } }'openvpn
дефолтовый маршрут постоянно вешал на интерфейс «dvb0_0
» и пришлось прибегнуть к принудительной привязке скриптом роута к «tap0
». Делаем скрипт исполняемым$ sudo chmod +x /etc/openvpn/tap0-route.sh
- Редактируем файл «
/etc/default/openvpn
» и добавляем строкуAUTOSTART="raduga"
- Пробуем соединиться к провайдеру из консоли
$ sudo openvpn /etc/openvpn/raduga.conf
Если успешно соединились с сервером, закрываем соединение нажатием «ctrl+c
». - Перезапускаем даемон
$ sudo /etc/init.d/openvpn restart
14 комментариев:
В ядрах старше 2.6.24 по моему dvb_shutdown_timeout исправлен в исходниках на ноль. И уже не надо прописывать dvb_shutdown_timeout=915360000 или нечто подобное. По крайней мере я уже ничего подобного не делал на ядре 2.6.24 а на 2.6.18 приходилось править в исходнике модуля строчку про таймаут.
Ну а вообще классно написано про настройку. Сам когда то хотел написать нечто подобное чтобы просто со временем не позабыть.
Странно. Пока я не вписал в таймаут 29 лет ничего ко мне не шло.
А ядро какое у тебя? У меня собственно тоже возникала проблема с анлоком сигнала карточкой, и я никак не мог заставить альтлинукс 3.0 подгружать модуль dvb_core с нужными параметрами.
2.6.24-19-server
Странно но может убунта использует какие нибудь патченные ядра, но врятли кто то будет трогать код дивиби устройств. Я вот точно не помню какое было ядро потому что тот сервер уехал уже совсем в другой аул, но вроде 2.6.24 или 2.6.25. В принципе ведь не важно как реализовано главное что работает.
Главное работает :))) Кстати можешь подсказать чем "грабить корованы" со спутника?
Ты имеешь ввиду "рыбалку"?
да, под линукс вроде dvbsnoop может, но я не разобрался как именно.
Я пользуюсь для этих целей skynet'ом есть как графическая так и консольная версии.могу кинуть тебе на почту надо будет только немного подравить конфиг под твои нужды, а так рыбалка на радуге меня очень даже радует. Свежее кинцо и мп3.
Буду признателен.
mr.tacitus at gmail com
Отправил
спасибо
Отправить комментарий