d-link dph-140s и sipnet

  • Ноябрь 4, 2009 10:04 пп

Два битых часа имел непристойный секс мучился с ip телефоном D-link dph-140s. Суть проблемы такова:

настраиваеем его на работу в сети sipnet.ru согласно инструкции. Перезагружаем, телефон регистрится, в личном кабинете появляется. Далее пытаемся позвонить, к примеру, на автоответчик, для этого набираем 0000 и # (конец набора) это чтобы телефон не ждал окончания времени отведенного на набор а сразу стал набирать номер. И через три секунды получаем короткие гудки и надпись disconnect. Что только не делал и унитаз приносил и firmware перешивал и обнулял и заново программировал. Дошло только часа через два что если набрать номер абонента не поднимая трубки потом нажать клавишу спикфона то звонок проходит успешно. И если поднять трубку, набрать номер и не нажимать # , то тоже соединяет. Оказывается в этом телефоне # обозначает что-то другое. И если ею не пользоваться, то все работает нормально.

ЗЫ. А телефон мне не понравился, мутный он какой-то.

орёл птица гордая

  • Октябрь 16, 2009 10:30 пп

Я в этой статье хотел написать о проблемах, с которыми столкнулись многие институты ДВО РАН, после того, как вся власть (и деньги) по телекоммуникационной программе оказались в руках одного человека. Но передумал. Во первых писать много, а во вторых все в ДВО и так про это знают. Прочувствовали на своей шкуре. Вместо этого предлагаю прочесть проект программы и угадать почему у данного поста такой странный заголовок. Свои мысли пишите в комментарии. Первый угадавший получает приз – канделябром по голове.

Подстава в 10000$

  • Октябрь 14, 2009 7:29 пп

Значит стала наша старая циска (2621) не справляться с возросшим трафиком и настала пора покупать новую.  Требования были такие:

  1. устойчивое терминирование не менее 200 pppoe сессий
  2. dot1q вланы
  3. поддержка AAA-SESSION-MIB-DISCONNECT
  4. совместимость с платой NM8-AM (8 ми порвый аналоговый модем) установленной в нашем старой маршрутизаторе

Разослал я значит письма во всякие уважаемые компании. Ответ пришел только от Ланит ДВ. Некто Roman Pustovoyt ответил мне:

Вашим требованиям по количеству одновременных сессий отвечает маршрутизатор Cisco 3825 c увеличенным объемом оперативной памяти.

Поддержка AAA-SESSION-MIB-DISCONNECT осуществляется поддержкой всего дерева AAA-SESSION-MIB на уровне программного обеспечения S382SPSK9-12420T.

802.1q, NAT и NM модули само собой поддерживаются + 2 GE-порта.

Почитал я интернет, вроде все правильно.

Побились немного с отделом закупок и купили новую cisco 3825 , 128 мб flash , 256 mb ram. Работает раз в 10 быстрее чем 2621,  просто мечта а не маршрутизатор, но вот с модемной платой проблема.  Значит втыкаю я ее, захожу в консоль, пытаюсь закачать кусок конфига с предыдущей cisco.

line 33 40
location dial-in pool Dial
exec-timeout 5 0
no flush-at-activation
modem InOut
modem autoconfigure type mica
transport preferred none
transport input all
autoselect during-login
autoselect ppp

Но после первой же строчки засада

config t
Enter configuration commands, one per line. End with CNTL/Z.
dvgi_3825(config)#line 33 40
No physical hardware support for line 33

Однако.  Засада. И лампочка EN на плате не загораеться и sh ver заветные 8 terminal line(s) не видит.

немного подумав даю команду

dvgi_3825#sh inven
NAME: “3825 chassis”, DESCR: “3825 chassis”
PID: CISCO3825 , VID: V05 , SN: FCZ1325703Z

NAME: “Unknown on Slot 1″, DESCR: “Unknown”
PID: NM-8AM= , VID: 1.0, SN: 18114139

Вот оно, плата по разъемам электрически совметима с данным маршрутизатором,  а вот на уровне ios – нет.

Современному маршрутизатору требуется карточка NM-8AM-V2.  Вот так. Жаль что покупали через запрос котировок и поэтому купили не у Ланита а у малоизвестной московской компании.  Я бы Ланиту мозг вынул,  причем буквально.

В общем, я воткнул карточку обратно в старый маршрутизатор и настроил его на работу в режиме сервера доступа для модемный пользователей. А pppoe и vlanы перенес на новую cisco.  На этом все.  Все работает.

Вещание видео из apache

  • Октябрь 5, 2009 11:39 пп

Итак у меня была задача :

  • сделать так  чтобы люди могли смотреть видеофайлы на нашем сайте
  • работала перемотка к произвольному месту файла
  • для просмотра должно хватать даже самого простого безлимита
  • совместимость со всеми браузерами
  • бесплатность

Если следовать только первому пункту число возможных решений практически не ограниченно.

Из остальных ясно что вещать нужно в формате flv.  Сделать это можно  несколькими способами, поставить Flash Media Server ,  Nginx, Lighttpd, на крайняк по ламерски просто поставить VLC.  Но первое решение стоит очень немало денег, которых в бюджете нет,   последнее мне не нравиться по многим причинам.  Ставить же сторонний http сервер при наличии работающего апатча, по меньшей мере глупо.  Но в стандартном апатче не реализована обработка flv файлов, а именно нет возможности по команде плеера начать отдавать файл с произвольного места.  Т.е.  видео будет идти только сначала без возможности перемотать его на произвольный фрагмент. Это не имеет значения, если длина ролика маленькая, а если, как у нас,  фильмы по полтора часа…  К счастью  Paul Querna написал модуль для апатча   который выполняет обработку flv файлов.   Для его установки нужно (предварительно установив apache) :

  • загрузить модуль
  • скомпилировать, для этого дать команду /usr/local/apache2/bin/apxs -i -a -c mod_flvx.c
  • в файл httpd.conf добавить сточку AddHandler flv-stream .flv
  • перезагрузить апатч service httpd restart

На этом настройка завершена, можно ставить flv плеер и проверять как это работает.

Спамооборона

  • Октябрь 2, 2009 11:31 пп

Значит настало время ставить коммерческую версию спамообороны, загружаю дистрибутив (SO-2.3-Fedora-i386.tar), распаковываю, ставлю, пытаюсь обновить шинглы – долгая пауза и “Update failure”. Лезу в интернет,и оказывается что что яндексоиды, после генерации  ключа открывают для этого клиента дырочку на файрволле, но делают это не сразу, а по истечении некоторого времени. Ложусь спать, на утро вроде соединяется, но шинглы все равно не качает.  Включаю quiet вывод и получаю следующее :

Устанавливается соединение с cso.yandex.ru|213.180.204.67|:443... соединение установлено.
ОШИБКА: невозможно проверить сертификат cso.yandex.ru, запрошенный `/DC=ru/DC=yandex/DC=ld/CN=YandexExternalCA':
Невозможно локально проверить подлинность запрашивающего.
Чтобы небезопасно подключиться к cso.yandex.ru, используйте `--no-check-certificate'.
Невозможно установить соединение SSL.

В общем ребята молодцы, продают продукт за немалые деньги, а купить нормальный сертификат не могут, экономят наверное. Ну лезем в файл /etc/spamooborona/scripts/cron_rul, находим там строчку FETCH_OPTS=”-mq -nd -T 60 -t 3″ и меняем на FETCH_OPTS=”-mq -nd -T 60 -t 3 –no-check-certificate“. Все, обновление шинглов работает.

Подключаю спамооборону к exim. Для этого в local/makefile прописал

> LOCAL_SCAN_SOURCE=Local/local_scan.c
> LOCAL_SCAN_HAS_OPTIONS=yes

Делаю make makefile затем  make и  получаю отлуп

> > gcc local_scan.c
> > ../Local/local_scan_1024.c: В функции 'local_scan'
> > ../Local/local_scan_1024.c:582: предупреждение: incompatible implicit declaration of built-in function 'exit'

Если после этого сделать make install и запустить exim, то он долго (несколько минут) думает а  потом выдает ошибку > “421 fegi.ru local verification problem – closing connection.”  и  рвет связь. Идей нет, приходиться писать в техпотдержку, они  отзываются  быстро и советует пересобрать exim, добавив в local_scan.c строчку “#include <stdlib.h>”. Компилиться на ура, вот только почта все равно не ходит. После значительной (около 5 минут) паузы сервер сообщает: ” fegi.ru local verification problem – closing connection.”  Такое чуство что функция local_scan не видит процесс sp-daemon.

После танцев с бубнами внимательного прочтения документации  раскоментировал строчку #define SO_UNIXSOCKET в функции local_scan.c

Все теперь оно работает.

СПАМ вездесущий

  • Сентябрь 25, 2009 4:53 пп

Итак, почему Exim я ставил из исходников ? Домен fegi.ru существует в интернете с 1997 года. Срок большой. За это время почтовые юзера успели позасвечивать свои аккаунты в большом количестве спамерских баз.   И количество спама в почте намного превышает количество нужных писем.  Но я увлекся, вернемся немного назад. Вначале были динозавры был сервер под управлением виндоус нт и почтовиком там крутился mdaemon. Борьба со спамом была организована на нескольких уровнях.  Вначале отсеивались все “кривые” helo: содержащие цифры, строчки dhcp | diaup | dsl | pool | peer.  Затем IP клиента проверялся на нескольких rbl базах.  Потом шла проверка встроенным Heuristic Messaging Scoring и Bayesian Classification and Scoring.  Все это работало более менее успешно пока спама было мало. С увеличение количества спама стала видна неэффективнданной схемы. Это было связано с тем что рос профессионализм спамеров и росло их количество.  В RBL базы спам хосты попадаю через некотое время, а до этого спокойно рассылают спам. Проблема  Bayesian состоит в том, что он должен изучить много электронных писем прежде, чем сможет функционировать эффективно, ему нужно узнать по крайней мере 200 спам и 200 неспам писем.  Получается как противоборство брони и снаряда. Пока его кормишь спамом, он его определяет и отсеивает, но спамера придумывают новые письма и он их пропускает, пока юзера не накидают ему в папку эти письма.  Но спамера придумывают новые и так по кругу…  Потом был переход на свободно распространяемое программное обеспечение и почтовиком у нас стал exim. Его я выбрал по причине большой скорость работы, стабильности и легкости в настройки (чего нельзя сказать о sendmail) .  Борьбу со спамом я реализовал по такой схеме: проверка helo,  проверка спамообороной от yandex.   Вначале нам хватало условий лицензии бесплатной версии а затем ( с ростом почтового трафика ) пришлось покупать коммерческую лицензию.

Для работы со спамообороной exim необходимо компилить с  включенной функцией local_scan.c   Именно поэтому exim ставился из исходников . С настройкой бесплатной версии проблем не было. А во коммерческая версия доставила хлопот.  Но об этом в следующем посте…

Стандартный набор

  • Сентябрь 23, 2009 9:34 пп

Cервер  мы смогли купить нормальный , HP ProLiant DL G580,  4 четырехядерных процессора по 2933 MHz , 8 Гб оперативки. Куча жестких дисков.  Все это работает под управлением Fedora core 10.   Ну и стандартный набор Apache,  Mysql,  Bind, Proftpd. Из нестандартного Squirrelmail,  Exim,  Courier.   Нестадартное потому-что ставилось из исходников а не через yum.  Причины этому были разные: родной squirrelmail к примеру был немного глючный,  courier в yum отсутствует.  А про exim я потом напишу, там причина особая.

Наконец свершилось

  • Сентябрь 22, 2009 1:08 пп

Сервер наконец запушен в эксплуатацию, есть время расслабиться.

В  этом блоге решил описать маленькие технические хитрости, связанные с разработкой данного сервера.