Monday, December 11th, 2017

Настройка спутникового интернета в linux

Published on Март 30, 2009 by   ·   Комментариев нет

Я живу в крайне тяжелых онлайновых условиях. О безлимитной выделенке нет и речи. ;) До недавнего времени доступ в интернет у меня дома был посредством gprs, а с недавних пор к нему добавилась спутниковая тарелка. В домашнем сетевом хозяйстве раздачей трафика занимался старый пентиум, тихо жужжащий в углу. Все было настроено 1 раз и забыто. Но однажды он умер… Переставив dvb карту в живой компьютер, я внезапно обнаружил отсутствие бекапа конфигов и большие пробелы в памяти как вообще все это работает. Пришлось вспоминать. Далее описываю по горячим следам. Все нижеописанное происходит в ubuntu последней версии. Настрою соединение через globax без vpn. Ставлю утилиты работы с dvb картой. У меня, как и у многих skystar2, но когда нибудь я куплю twinhan ;). mu legend zen online

 $ sudo aptitude install dvb-utils

Нужно сделать что бы карта не «засыпала». Что это и как — об этом можно почитать в многочисленных околоспутниковых форумах. Решение следующее: Добавляем файлик, который грузит модуль карты с параметром, запрещающим засыпание.

 $ cat /etc/modprobe.d/dvb-core options dvb-core dvb_shutdown_timeout=0

Теперь нужно выгрузить/загрузить этот модуль (и все зависимые от него). Я просто перезагрузил компьютер. Качаю дистрибутив (ссылка может устареть) globax for linux, извлекаю из него исполняемый файл globax. Остальное не требуется.

 $ ls /usr/local/sbin/globax /usr/local/sbin/globax

Конфиг глобакса. adidas superstar store Получен мною от провайдера stv.su и используется практически без изменений.

 $ cat /etc/globax.conf [server] port = 6768 log = /var/log/globax.log datatimeout = 60 [remote] name = globax server = 195.10.212.10:1111 login = globax_login passwd = globax_password speed_in = 320000:384000 speed_out = 3000 mtu = 576 mru = 1500 flush_time = 500 [local] # http/https proxy remote = globax port = 127.0.0.1:3128 service_int = 0 [local] # socks 4/4a/5 proxy remote = globax port = 127.0.0.1:1080 service_int = 2 [local] # transparent port # http://faq.spacegate.com.ua/index.php?action=artikel&cat=7&id=97&artlang=ru remote = globax port = 127.0.0.1:8000 transparent

Globax в процессе работы пишет логи, и их надо чистить. mu legend zen online =) Поскольку неизвестно, умеет ли он переоткрывать файловый дескриптор по сигналу, а экспериментировать лень — делаю так же как с рельсами.

 $ cat /etc/logrotate.d/globax.logrotate /var/log/globax.log { rotate 7 missingok compress delaycompress notifempty copytruncate }

Параметры настройки dvb карты на спутник. Они хранятся, как правило, в файле channels.conf. Для моего провайдера нагуглить их почему то не получилось. Я долго тупил. Потом понял, что они есть в отладочном выводе команды szap, которых предостаточно на форумах. Вот сравните:

 $ sudo szap -c /etc/channels.conf -n 1 -x reading channels from file '/etc/channels.conf' zapping to 1 'stv': sat 0, frequency = 11595 MHz V, symbolrate 29270000, vpid = 0x1040, apid = 0x1040 using '/dev/dvb/adapter0/frontend0' and '/dev/dvb/adapter0/demux0' status 00 | signal 5353 | snr f8f8 | ber 00000000 | unc 00000000 | status 1f | signal 4040 | snr 3333 | ber 00000000 | unc 00000042 | FE_HAS_LOCK

И теперь собственно сам файл. Для спутникового интернета важны частота, поляризация и символьная скорость.

 $ cat /etc/channels.conf stv:11595:v:0:29270:0:0:0

Скрипт, который собирает все это вместе, настраивает dvb карту и запускает globax. mu2legendzen.com

 $ cat /etc/init.d/dbvd #!/bin/sh PATH=/usr/sbin:/usr/bin:/sbin:/bin NAME=`basename $0` # https://cabinet.stv.su/index.php?m=info IP="192.168.XXX.XXX" MAC="00:00:C0:A8:XX:XX" PID="4160" # https://cabinet.stv.su/index.php?m=conf GLOBAX_BIN="/usr/local/sbin/globax" GLOBAX_CONF="/etc/globax.conf" CHANNELS_CONF="/etc/channels.conf" do_szap() { szap -c $CHANNELS_CONF -n 1 -x } do_ifup() { dvbnet -p $PID ifconfig dvb0_0 $IP ifconfig dvb0_0 hw ether $MAC echo 0 > /proc/sys/net/ipv4/conf/dvb0_0/rp_filter } do_ifdn() { ifconfig dvb0_0 down dvbnet -d 0 } do_glup() { $GLOBAX_BIN $GLOBAX_CONF sleep 2 kill `ps ax|grep ${GLOBAX_BIN}|head -n 1|awk &#039;{print $1}&#039;` } do_gldn() { killall $GLOBAX_BIN } case "$1" in start) <div style="display: none"></div>echo "starting $NAME..." do_szap do_ifup do_glup ;; stop) echo "stoping $NAME..." do_gldn do_ifdn ;; reload) do_szap ;; restart) do_ifdn rmmod b2c2_flexcop_pci b2c2_flexcop \ mt352 mt312 bcm3510 stv0299 stv0297 nxt200x lgdt330x \ dvb_pll dvb_core sleep 2 modprobe b2c2_flexcop_pci do_szap do_ifup ;; *) echo "usage: $NAME start|stop|reload|restart" exit 3 ;; esac exit 0

Устанавливаю его в автозагрузку и запускаю.

 $ sudo update-rc.d dvbd start 99 S . $ sudo invoke-rc.d dvbd start

Нисходящий канал готов. https://www.mu2legendzen.com/mu-legend-redzen Время настроить программы на использование http/socks прокси, а неимеющие таких настроек соксифицировать с помощью, например, tsocks (есть в дистрибутиве). https://www.goldufo.com/mu-legend-gold За рамками рассмотрения остались:

 * прокладка тунелля pptp l2tp openvpn или какого другого * кеширование http трафика squid или oops * прозрачное проксирование (последняя секция в globax.conf) * автоматизация поднятия наземного канала diald

И тут выясняется одна неприятная особенность: Встроенные в globax http/https и socks4a/5 позволяют подключаться к интернет ресурсам используя доменные имена (то есть не преобразуя их в IP адреса на локальном компьютере) Но некоторые программы все равно желают локального разрешения имен. Им нужен локальный доступ к dns серверу. По медленному и дорогому наземному каналу. Пару слов об оптимизации наземного канала: Ставлю локальный кеширующий сервер dnsmasq

 $ sudo aptitude install dnsmasq

К идущему в пакете конфигу добавляю 1 строчку:

 $ cat /etc/dnsmasq.conf | grep resolv-file resolv-file=/etc/ppp/resolv.conf

Теперь dnsmasq при отстутствии у себя информации о доменном имени будет запрашивать один из серверов имен наземного провайдера. В конфиге дозвона к наземному провайдеру (/etc/ppp/peers/provider_name) у меня присутствует:

 * nodefaultroute * usepeerdns

Скрипты выполняемые при поднятии и опускании интерфейса я выключил за ненадобностью. nike lebron 10

 $ sudo chmod -x /etc/ppp/ip-up.d/* $ sudo chmod -x /etc/ppp/ip-down.d/*

А потом написал свой, попроще. В нем сохраняю имена dns серверов провайдера и прописываю маршруты к ним, и к серверу globax.

 $ cat /etc/ppp/ip-up.d/0dvb-up #!/bin/sh PATH=/usr/sbin:/usr/bin:/sbin:/bin GLOBAX_IP="195.10.212.10" route add -host $DNS1 gw $IPREMOTE route add -host $DNS2 gw $IPREMOTE echo "#" >/etc/ppp/resolv.conf echo "nameserver $DNS1" >>/etc/ppp/resolv.conf echo "nameserver $DNS2" >>/etc/ppp/resolv.conf killall -sighup dnsmasq route add -host $GLOBAX_IP gw $IPREMOTE

Последний штрих:

 $ cat /etc/resolv.conf nameserver 127.0.0.1

Эта вся пертушка с up/down скриптами затеяна потому что по умолчанию они либо переписывают /etc/resolv.conf либо не отдают имена dns серверов. Подозреваю, есть более элегантное решение ;) Придумал сейчас как с помощью socat, iptables и какой то матери натравить dnsmasq через globax на dns сервер спутникового провайдера. Пойду поиграюсь… =) UPDATE Отдельные борцы за чистоту терминов оскорбились, что я клиентскую часть globax обозвал сервером. Исправил. ;) UPDATE2 Оказывается есть такие особенности как «интерференция» и «залипание». Если кто с ними сталкивался, пожалуйста опишите как они выглядят и, по возможности, как с ними бороться. https://www.goldufo.com/mu-legend-gold А то мне как то везет. Или не везет. ;) Спасибо. :) UPDATE2.1 Немного дороботал скрипт /etc/init.d/dvbd по идее теперь если его запускать с параметром reload то это должно быть борьбой с интерференцией. mu legend redzen А с параметром restart — борьба с залипанием. Пресловутыми «интреференцией» и «залипанием». А вот скрипт, для автоматизации проверок, путем вызова из crontab [cc lang=»bash» tab_size=»2″ lines=»-1″] $ cat /usr/local/sbin/dvb-check #!/bin/sh # если статус карты не 1f значит она не залочена. if [ '1f' != `femon | head -3 | tail -1 | awk '{print $2}'` ]; then invoke-rc.d dvbd reload else #если карта залочена, а нету пидов с трафиком значит она повисла.


Смотрите также:

Readers Comments (Комментариев нет)

Comments are closed.

Exchange 2007

Проведение мониторинга Exchange 2007 с помощью диспетчера System Center Operations Manager 2007 (часть 3)

Если вы хотите прочитать предыдущие части этой серии статей, перейдите по ссылкам: Проведение мониторинга Exchange 2007 с помощью диспетчера System ... [+]

Практическое рассмотрение перехода с Exchange 2003 на Exchange 2007 (часть 1)

Введение В этой статье из нескольких частей я хочу показать вам процесс, который недавно использовал для перехода с существующей среды Exchange 2003 ... [+]

Использование инструмента Exchange Server Remote Connectivity Analyzer Tool (часть 2)

Если вы пропустили первую часть этой серии, пожалуйста, прочтите ее по ссылке Использование инструмента Exchange Server Remote Connectivity Analyzer Tool (Часть ... [+]

Мониторинг Exchange 2007 с помощью диспетчера System Center Operations Manager 2007 (часть 2)

Если вы пропустили предыдущую часть этой серии статей, перейдите по ссылке Мониторинг Exchange 2007 с помощью диспетчера System Center Operations ... [+]

Подробное рассмотрение подготовки Active Directory для Exchange 2007 (часть 5)

Если вы пропустили предыдущие части этой серии статей, перейдите по ссылкам: Подробное рассмотрение подготовки Active Directory для Exchange 2007 (часть 1) ... [+]

Установка и настройка Exchange 2007 из командной строки (Часть 3)

If you missed the previous parts in this article series please read: Exchange 2007 Install and Configuration from the command line (Part ... [+]

Использование инструмента Exchange Server Remote Connectivity Analyzer Tool (часть 1)

Инструмент ExRCA Текущий выпуск инструмента предоставляется только в целях тестирования и оснащен 5 опциями: Тест подключения Outlook 2007 Autodiscover Тест подключения Outlook 2003 RPC ... [+]

Развертывание сервера Exchange 2007 Edge Transport (часть 5)

Если вы хотите прочитать предыдущие части этой серии статей, перейдите по ссылкам: Развертывание сервера Exchange 2007 Edge Transport (часть 1) Развертывание ... [+]

Установка и настройка Exchange 2007 из командной строки (часть 2)

Если вы пропустили первую статью данного цикла, пожалуйста, перейдите по ссылке: Exchange 2007 Install and Configuration from the command line (Part ... [+]

Использование интегрированных сценариев Using Exchange Server 2007 – часть 2: генерирование отчетов агента Transport AntiSpam Agent

Если вы пропустили предыдущую часть этой серии статей, перейдите по ссылке Использование интегрированных сценариев Using Exchange Server 2007 – часть ... [+]