Что нам стоит АТС построить!

    На тему установки и настройки IP АТС на базе ПО Asterisk написано очень много статей. Но, в большинстве своем, эти статьи сводятся к компьютеру, линуксу и топтанию клавиатуры в command line этого самого линукса. Я хочу рассказать про одно замечательное устройство, на котором, с установкой и настройкой Asterisk, справится абсолютно любой пользователь. Это сетевой накопитель D-Link DNS-345 с Add-On (дополнением) MicroPBX.
    Зачем нужна IP АТС? Конечно же для экономии денег на телефонных разговорах, гибкости системы в настройке и работе, огромных функциональных возможностях и т.п. На сегодняшний день все крупные операторы подключают телефоны как классическим способом (по тел. кабелю), так и средствами IP-телефонии (по протоколу SIP). Примеры подключения и работы подобных систем:
    http://dlink.ua/voip_solutions_5
    http://dlink.ua/voip_solutions_3
    http://dlink.ua/voip_solutions_2

    image

    Как показано на рисунке выше, лучше использовать гибридную схему – часть телефонов по SIP, часть классически – по меди. Этот вариант потребует дополнительных затрат, как минимум, на покупку VoIP FXO шлюза (на картинке D-Link DVG-3016S). Но гибридная система дает значительно бОльшую надежность – в случае «падения» Интернета будут работать аналоговые линии, а при обрыве тел. кабеля – SIP линии. Как говорится, надежность требует жертв.
    Но вернемся к главному герою этой статьи – сетевому накопителю D-Link DNS-345. В чем же его прелесть? Ну, по сравнению с ближайшими конкурентами – это конечно цена. По функциональным возможностям и производительности – не хуже более дорогих коллег, а некоторых функциональных вещей у большинства конкурентов и нет. Например поддержка GSM-модемов с голосовыми функциями в качестве GSM-шлюзов. К примеру GSM шлюз Sprut Universal стоит ~250$, а 3G модем с голосовыми функциями Huawei E1550 ~40$.
    Предвосхищая заявления «да я астериск, с поддержкой Huawei E1550, на роутере за 40$ могу поднять» хочу сказать, что реализовать все возможности полноценного NAS (Network Attached Storage) на роутере просто не возможно. Точнее возможно, но какая у него будет производительность? Учитывая то, что HDD подключается только USB’шный, с соответствующей скоростью чтения/записи, а ОЗУ на роутере, как правило, не более 32М. Т.е. роутер с таким же как у NAS ПО будет постоянно находиться в вечном свопе со всеми вытекающими. DNS-345 имеет 512М ОЗУ. Процессор на роутере в лучшем случае 600МГц, у DNS-345 – 1,6ГГц. Я сам как-то поднимал Asterisk + Huawei1550 на роутере и хорошо знаком с возможностями подобной системы, подходящей разве что для дома, но никак, даже для небольшого, офиса.
    И так, приступим к настройке. Для начала скачайте Add-On MicroPBX Asterisk 1.8.15-cert. Брать тут:
    http://dlink.vtverdohleb.org.ua/Add-On/
    Перейдите в раздел «Management / Application Management / Add Ons» и установите Add-On «DNS-345 Asterisk18 Package…».

    image

    Сообщения «Сторонний Add-On…» не пугайтесь, нажмите Yes.

    image

    После завершения установки запустите Add-On кнопкой Start. В пакет включены драйвера голосовых USB-модемов, поэтому рекомендуется, перед установкой Add-On’а, вставить модем в USB порт NAS’а. USB-порт DNS-345 слабоват, поэтому подключать модем нужно через USB-HUB с внешним питанием.
    Но перед тем, как подключить модем к NAS’у, нужно пройти, наверно самую сложную в настройке АТС, процедуру – перевод модема в режим Modem Only. Для этого подключите модем к компьютеру и, с помощью любой терминальной программы, введите AT-команды изменения режима работы. Как терминал можно использовать, например, PuTTY (http://www.putty.org/). Как «попасть» на модем на картинках ниже.

    image
    image

    В терминале введите «в слепую» команду «ATE1» и нажмите Enter. Последующий ввод будет отображаться на экране. Далее введите:
    AT^U2DIAG=0
    AT&W

    Все, модем готов к работе, можно его переключать в DNS-345.
    Запустите Add-On «Asterisk 1.8 cert1», перейдите в раздел Applications и откройте веб-интерфейс Asterisk.

    image

    По умолчанию логин/пароль – admin/admin

    image

    Не забывайте нажимать кнопку «Apply Changes» в правом верхнем углу интерфейса!

    image

    Про настройки Asterisk писать не буду, возможности веб-интерфейса достаточно подробно расписаны тут:
    http://service.d-link.ua/node/50
    Расскажу только про базовую настройку GSM-шлюза. Для начала создайте базовый «Dial Plan», заведите пользователей, с привязкой к этому Dial Plan’у, и объедините пользователей в одну группу вызова (Ring Groups).

    image

    Проверим, правильно ли определился модем. Для этого зайдите в раздел «Options / Advanced Options» и включите «Расширенные настройки». После этого перейдите в раздел «Asterisk CLI» и дайте команду «datacard show devices». Если увидите такое, как на картинке ниже, это означает, что модем системой не подхватился.

    image

    Причин может быть много, например модем, по какой-то причине, не перешел в режим Modem Only и система его видит не как голосовой модем, а как USB-HDD. В этом случае, к сожалению, без ковыряния во внутренностях линукс-системы, разобраться в причине вряд ли получится.
    Но будем исходить из лучшего – модем определился и вы увидели такую картинку

    image

    Настроим входящие GSM звонки. Перейдите в раздел File Editor и откройте файл «extensions.conf». Если Ring Group создана, последней строкой будет раздел «[ringroups-custom-1]».

    image

    Откройте контекст «default» и впишите в него следующие 2 строки:
    exten = s,1,NoOp(all_ring)
    include = ringroups-custom-1


    image

    Нажмите кнопку Apply Changes. Все, входящие звонки работают.
    Теперь перейдем к настройке исходящих звонков. Создайте транк для исходящих. Hostname можно ввести любой не существующий IP-адрес, например 192.168.255.255

    image

    В логах будет появляться строка
    [Mar 14 20:39:06] NOTICE[1869]: chan_sip.c:13390 sip_reg_timeout: — Registration for 'datacard-out@192.168.255.255' timed out, trying again (Attempt #2)
    На это можно не обращать внимание. Второй вариант – через File Editor открыть файл users.conf и закомментировать или удалить строку «host = 192.168.255.255».
    Создайте правило для исходящих звонков в разделе «Outgoing Calling Rules».

    image

    Pattern для любого вызываемого номера – «_X.». Если нужно заворачивать в GSM только определенные номера, можно прописать свою маску

    image

    В Dial Plan’е разрешить использование исходящего направления «gsm_out».

    image

    Перейдите в раздел File Editor и откройте файл «extensions.conf». Если «Outgoing Calling Rules» создана, предпоследней строкой будет контрекст «[CallingRule_gsm_out]». Вместо содержимого CallingRule_gsm_out впишите следующее:
    exten=_X.,1,Dial(Datacard/datacard0/${EXTEN},300,trR)
    exten=s,n,Hangup

    image

    Нажмите кнопку «Apply Changes» в правом верхнем углу интерфейса
    На этом все, базовая настройка закончена. Как уже говорилось в начале, с подробной инструкцией по настройке остальных функций Asterisk через Web-GUI можно ознакомиться на service.d-link.ua/node/50
    Share post
    AdBlock has stolen the banner, but banners are not teeth — they will be back

    More
    Ads

    Comments 38

      0
      стоит уменьшить первую картинку, или убрать под кат
        0
        Всё хорошо, но вешать 500Кб-картинку в заголовке — по моему перебор.

        И остальные картинки: скриншоты не несут в себе градиенты, необходимые для обязательного отображения без искажений, поэтому большинство можно размер (не в пикселях, а в байтах) сократить раза в 4. И топик будет открываться значительно быстрее.

        А за сам топик спасибо!
          0
          Убедили! Уменьшил
            0
            Опомнитесь, vtverdohleb.org.ua/ под таки напором умрет же!
              0
              Ничё! Работа у него такая ;)
              заодно и протестится на нагрузку
              –1
              Ндааа… Если собрать такую систему, как скоро она окупится на экономии связи?
                –1
                Если имеется ввиду схема на первой картинке — да, это не дешево. Но это общая схема сети «Центральный офис <-> филиалы и мобильные пользователи». И VoIP в ней как дополнительный, а не основной сервис.
                Если имеется ввиду, что DNS-345 — слишком дорогой GSM-шлюз, так я и не предлагаю его рассматривать как только шлюз. В первую очередь — это полнофункциональный NAS. А VoIP в нем — это бесплатная надстройка, никак не мешающая работе основной системы.
                0
                Чуяла моя душа — не зря покупал себе DNS-325. За ссылку на Ваш сайт — спасибо, выложенные AddOn's заслуживают внимания (более новые версии, нежели официально представленные на сайте). И верно ли я понимаю — используя плагин sshd отпадает ли необходимость в fun_plug?
                  0
                  sshd у него на борту свой собственный есть, я Add-On'ом только файлы passwd, group & shadow восстанавливаю после ребута. Так что fun_plug нужен, разве что для души ;)
                  +1
                  Дожили, asterisk на NAS ставят. Как у него, кстати, с нагрузкой? Сколько каналов он держит одновременно? С транскодингом?
                    –1
                    Ну почему бы и нет? Линукс как линукс! ;)
                    Кодека g.729 бесплатного под него нет, что во что транскодить?
                    http://vtverdohleb.org.ua/blog/dns-345_asterisk_gsm.png
                    А без транскодинга, я прикидывал, под сотню соединений должен потянуть.
                      0
                      А хотя бы G711 <-> GSM. Последний часто встречается.
                        0
                        Есть такой, согласно показаниям самого астериска = 2 микросекунды. Но если интересуют конкретные цифры загрузки проца могу в понедельник проверить.
                          0
                          А каким методом проверку делать будете? Можете описать подробнее данный процесс?
                            0
                            Ну например на внешнем транке поставлю gsm only, а на внутреннем номере alaw only и сделаю исходящий звонок.
                              0
                              Ну это в случае одного вызова. Больше же интересует нагрузочное тестирование (кол-во одновременных активных каналов) на данном устройстве.
                            0
                            Проверить не смог, не оказалось доступных шлюзов с поддержкой кодека gsm нет в наличии. А проверять на софтфоне с дешевой гарнитурой рука не поднялась :)
                            Но вообще, мое мнение, кроме 711-го и 729-го применять что-то другое как бы и не очень интересно по качеству звука. Для каких целей вообще gsm-кодек нужен?
                      +1
                      Пля, возлагать на NAS такой функционал. Отсыпте ваших курительных смесей.
                        –1
                        А почему бы и нет? Чем линукс на ARM отличается от линукса на x86? Вы, видимо, просто с подобными системами приосто не работали. А трава у нас правильная, так как описанное в статье таки работает! Где берем? Наверно в ШК ;-)
                          +1
                          Вопрос не в том ARM там или не ARM. Можно и на роутере типа wl500 такое поднять. Вопрос в целесообразности поднятия телефонии именно на NAS.
                            –1
                            Странный вопрос… Если ресурсы железки позволяют почему бы не дать ей доп. задачу? Касаемо роутера я писал в статье. Я поднимал такое на асусе 500-ом — хватает только на 2-3 соединения
                              0
                              Гм. Ну так поднимите там сквид с кешированием и выпускайте через этот soho nas людей в тырнеты. Вот следующий одмин удивиццо?!
                              Дома так делать можно. На предприятии нет.
                                0
                                Давайте не будем лезть в крайности. Если вы умеете пользоваться optware, openwrt — это вам плюс, много людей не умеют. По поводу роутер + доп.софт я уже неоднократно свое мнение высказал. Вы высказали свое, но как-то не убедительно — на NAS нельзя и все. Такое мнение без конкретных цифр и аргументов по-моему мало кому интересно. Предлагаю далее бессмысленными заявлениями воздух более не сотрясать.
                              0
                              У меня на том же 500м асусе поднят OpenVPN клиент — так даже с такой функцией соединение проходит с незначительно большими задержками, нежели поднять тот же клиент на каждом из пк. Да и тем более в NAS устройстве памяти для хранения данных больше (да и доступ к ней быстрее).
                          –1
                          Друзья, это вы еще synology не видели. Их идея.
                            0
                            Эту идею я хотел еще 3 года назад реализовать на DNS-323, но из-за старого ядра ничего не вышло. У Synology, на тот момент, тоже ничего подобного не было, скорее всего по той же причине.
                            +1
                            А что с безопасностью?

                            iptables, fail2ban, vlan-ы получится настроить? Если нет, то экономия на связи может плохо закончиться.
                              –1
                              достаточно диалплана вида: 7*3#номертелефона — и можно не париться.
                                0
                                Временный костыль из папье-маше.
                                Не стоит полагаться только на диалплан. По ряду причин. И наверняка, вы их сами знаете.
                                  0
                                  ну от «заказа» fail2ban не спасёт, а от сканнеров-спаммеров — срабатывает без проблем.
                                    0
                                    От какого «заказа»?
                                    Заказных взломов IP-АТС мне не известно. В основном — резвящаяся молодежь на биржах сливного трафика.
                                      0
                                      о чем я и говорю.
                                0
                                Поддержка 802.1q в DNS-345 и так есть, а вот насчет fail2ban — мысль хорошая, наверно стоит добавить. Но с другой стороны безопасность можно обеспечить и L2 switch + firewall
                                  0
                                  Да, согласен, это в случае, когда админ знает, как это готовить.
                                  Если, например, автоматом работает Fail2Ban — то это решительно повышает безопасность и сильно защищает от выстрела себе в ногу.
                                    0
                                    Руководитель, взявший на работу такого админа — сам сплошной backdoor. И в возможных будущих проблемах может винить только себя.
                                      0
                                      А вы знаете, как взять на работу хорошего админа?
                                      Я нередко провожу собеседования и готов вас уверить, люди не могут ответить на вопросы о том, что написано в их резюме.
                                      Хороших админов приходится выращивать самостоятельно.

                                      Если для вас это неочевидно, то попробуйте найти хорошего бухгалтера, финансиста или хотя-бы менеджера по продажам. Уверяю вас, тема сложнее, чем кажется.
                                        0
                                        Я с такими админами общаюсь почти каждый день, как по телефону, так и лично. Частенько и в собеседованиях участвую, как консультант. Так что с уровнем знаний новых «админов» знаком не по наслышке. Вменяемого и обучаемого человека подобрать не проблема, обучить хотя бы азам можно за пару месяцев.
                                        Но я говорил о другом — многие руководители, которым предлагаешь прислать админов на семинар, рассказывают, что им это не нужно, у него все гуру. А потом звонит такой гуру и спрашивает, например, что такое VLAN или STP. И думаешь, смеятся над этим или плакать…
                                0
                                А как RJ-11 с ним подружить, никто не подскажет? Поможет ли адаптер RJ11-USB в этом?

                                Only users with full accounts can post comments. Log in, please.