Встала задача организовать прием трафика от спутникового провайдера. Естественно на раздающем сервере должна быть FreeBSD. А как же иначе? После пары дней гугления выснилось что желающих решить такую задачу хватает, но unix-совые решения сводились к тому, что поднималось все это дело на линуксе. Основная причина – отстутствие фряшных драйверов для DVB-карт SkyStar-2. В поисках драйверов просерфил пол-инета. Нашлось две версти драйверов. Одна из которых оказалась коммерческой. Другая же доступна для скачивания здесь: http://avos.satgate.net/ss2/ss2.tar.bz2 После разнообразных шаманских телодвижений и общения в форуме набралось информации на отдельную небольшую статейку. Итак, имеем: 1.FreeBSD 6.2 2.DVB-приемник SkyStar-2 rev. 2.6C (проверялось так же и на rev.2.6D -работает) 3.Необходимое для работы и настройки карты ПО 4.Спутниковый провайдер: SatGate (подписка на Sirius-2 Северный Луч) Способ подключения : через акселератор SlonAx. 5. Наземное подключение: ADSL или любое работающее (у нас128/128kbps – запросный канал) 6. Настроеную на нужный спутнег антену и кабель от конвертера до компа. :)
Сразу сделаю маленькую оговорку на счет установки карт SkyStar-2. Перед установкой желательно погуглить на счет совместимости данных карт с Вашей системной платой. На эту тему было много разговоров в «спутниковых» форумах. В некоторых случаях мамы просто дохнут. Особенно это касается системных плат ASUS на nForce4. Серии Deluxe и SLI.
Для начала нам нужно чтобы во FreeBSD была включена бинарная совместимость с Linux (Linux Binary Compatibility). Нужно это для того чтобы заставить линуксовый софт работать в среде FreeBSD. Этого можно добиться либо пересборкой ядра с опцией options LINUX либо установкой linux_base из портов. Если linux_base еще не стоит и ядро компилить нехочется, тогда лезем в
sat# cd /usr/ports/emulators/linux_base-fc4/
И ставим этот линукс.
sat# make install clean
После установки в директории /compat/linux/ появится целый линукс со своими библиотеками и т.д. Если установка linux_base прошла успешно, проверяем наличие в /etc/rc.conf строчки linux_enable=”YES”. Придется перегрузиться. После ребута продолжаем.
Смотрим загрузился ли модуль linux.
sat# kldstat | grep linux
41 0xc5366000 19000 linux.ko
sat#
Есть. Линукс поставили. =) Теперь Понадобится скачать порт от lyssyara с нужным ПО. Качаем:
sat# sh skystar2-0.1.shar
c - /usr/ports/net/skystar2
x - /usr/ports/net/skystar2/Makefile
x - /usr/ports/net/skystar2/distinfo
x - /usr/ports/net/skystar2/pkg-descr
x - /usr/ports/net/skystar2/pkg-plist
x - /usr/ports/net/skystar2/pkg-message
x - /usr/ports/net/skystar2/typescript
Норма. Идем дальше.
sat# cd /usr/ports/net/skystar2/ sat# make install clean
********************************************************************* To use these drivers, make sure that you have loaded the skystar2 kernel module, by doing
# kldload skystar2
or adding
skystar2_load="YES"
to your /boot/loader.conf. *********************************************************************
===> Registering installation for skystar2-0.1 ===> Cleaning for skystar2-0.1
sat#
Все проинсталлилось куда надо. Можно сразу добавить драйвер в автозагрузку. Добавляем.
Первым делом нужно создать устройство и настроиться на PID спутникового провайдера. В моем случае(провайдер SatGate) это PID 402.
sat# dvbnet -p 402
Status: device dvb0 for pid 402 created successfuly
sat#
хе-хе. Теперь у нас есть dvb-девайсик. Проверить наличие dvb можно либо так:
sat# ls /dev/ | grep dvb
dvb
sat#
либо обычным ifconfig
sat# ifconfig
.
. [тут пропущены всякие другие сетевые девайсы]
.
dvb0: flags=8802<BROADCAST,SIMPLEX,MULTICAST> mtu 1500
ether 00:d0:d7:XX:XX:XX
sat#
Теперь нужно настоить карту на другие параметры приема сигнала нашего спутнегового провайдера.(частота, поляризация, скорость потока etc). Для этого нужен файлик /usr/local/etc/channels.conf Делаем нужный нам файл.
sat# cd /usr/local/etc/
sat# сp channels.conf.dist channels.conf
Настройки представляют собой текстовую строку с параметрами разделенными двоеточием.
sat# ee /usr/local/etc/channels.conf
SatGate:12322:v:5/6:0:27670:0:0:0
Здесь вместо того что написано у меня вбиваете свои данные:
Satgate – название. Просто название Может быть, например my_inet_provider 12322 – частота v – поляризация. H – горизонтальная, V – вертикальная 5/6 – FEC 0 – Авто, 3 – 3/4, 5 – 5/6 и т.д. 27670 – Скорость потока (Symbol rate)
Вылезет мониторинг состояния карты на весь экран. Если настройки правильные и антенна верно настроена то монитор должен показать уровень сигнала и прочую инфу среди которой нас интересует вот это
Все в порядке. Карта видит сигнал. Если не в порядке то проверяем channels.conf и сигнал с тарелки.
Первая часть задачи выполнена. Устройство готово к работе.
Едем дальше. При подключении к провайдеру через акселератор SlonAx, необходимо установить этот самый акселератор(клиент). По сути SlonAx является не только клиентом, но и прокси сервером. Так как этот клиент есть только для виндов и линухов, останавливаемся на последнем. Качаем линуксовую версию. Последняя версия на сегодняшний день Linux version v2.00.10 (beta) (Lastest linux PTHREADS+NPTL).
sat# tar -xzvf slnx_lin_v2_00_10.tar.gz
x ./lin_dist/
x ./lin_dist/slnx_client_nptl
x ./lin_dist/slnx_client_pthreads
x ./lin_dist/sx_client.conf
sat#
Как по мне, то как-то не красиво чтобы SlonAx (далее по тексту - слон) лежал в директории куда он распаковался. Не информативное название. Да и не на своем месте лежит. Поэтому растусуем все по своим местам. Поехали.
Вот теперь лучше. Теперь, как уже говорилось слон у нас линуксовый поэтому-то нам и понадобилась установка linux_base. Но это еще не все. Необходим маленький тюнинг бинарника. Пометим его как исполняемый файл Linux. Иначе он не запустится.
sat# cd /usr/local/slon/
sat# brandelf -t Linux slnx_client_pthreads
При подключении через слона, провайдер Satgate присваивает IP каждому подписчику. Адрес этот можно посмотреть в личном кабинете на сайте провайдера. В том же личном кабинете необходимо проставить MAC-адрес вашей карты. Если IP-адрес уже известен, назначаем его нашей SkyStar-2.
и переходим к настройке слона. Настройку я описывать не буду. В гугле и на форуме SatGate она описана много раз. В простом случае достаточно в конфигурационный файл sx_client.conf вписать свой логин и пароль. А также IP-адрес и порт сетевого интерфейса на котором он будет висеть как http-прокси сервер. По умолчанию это localhost:8080. Поэтому переходим к боевым испытаниям. Запускаем.
Слон работает. Замечательно. Теперь осталось только попросить у него трафик. Настраиваем браузер на адрес слона и пробуем посерфиться в инете. На машине с установленной SkyStar-2 наблюдаем трафик приходящий от спутникового провайдера.
sat# tcpdump -i dvb0 | grep sat
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on dvb0, link-type EN10MB (Ethernet), capture size 96 bytes
17:26:36.254050 IP c3pio.satgate.net.47782 > 172.16.XX.XX.64951: UDP, length 1338 17:26:36.290115 IP c3pio.satgate.net.47782 > 172.16.XX.XX.64951: UDP, length 1336 17:26:36.290646 IP c3pio.satgate.net.47782 > 172.16.XX.XX.64951: UDP, length 1363 17:26:36.328308 IP c3pio.satgate.net.47782 > 172.16.XX.XX.64951: UDP, length 1398 17:26:36.328853 IP c3pio.satgate.net.47782 > 172.16.XX.XX.64951: UDP, length 1382 17:26:36.356315 IP c3pio.satgate.net.47782 > 172.16.XX.XX.64951: UDP, length 1387 17:26:36.356829 IP c3pio.satgate.net.47782 > 172.16.XX.XX.64951: UDP, length 1391
Ну вот и все. Осталось придумать красивый стартовый скрипт для запуска и настройки карты. Вопросы безопасности и разграничения прав пользователей спутникового инета оставляем за рамками данной статьи.
added by lissyara 2007-12-11 in 08:56 все претензии авторов дров и прочих причастных лиц (коих, как выяснилось немало - поскольку авторы тех дров что в порте сам не торгует - барыжат посредники) направлять ко мне, а не к автору статьи.
added by lissyara 2007-12-11 in 08:59 Может кто-то всё же напишет дрова для СкайСтар3? Готов сделать первый взнос в копилку этого дела - 200 WMZ.
added by lissyara 2007-12-11 in 09:01 Там же где и порт лежат дрова для ревизии 2.6