Mikrotik firewall настройка asterisk

Обновлено: 07.07.2024

В небольшой офис потребовалась АТС, для звонков по России и между сотрудниками. Был выбор между использованием готовых решений от SIP провайдеров и самодельной личной АТС. У каждой стороны есть свои плюсы и минусы. Так как офис только запускался, сотрудников мало, тотальный режим экономии, то от провайдеров отказался - абонентская плата за номер (при том что номер дается городской, к которому сложно привязать мессенджеры, мобильные номера от провайдера у клиентов не вызывают доверия и так же имеют проблемы с привязкой к мессенджерам) и тарифы на звонки на мобильные номера клиентов у всех не менее 1,5 руб./мин.

Т.к. в наличии был не используемый Raspberry Pi 3B+, то решено было использовать его в качестве АТС с Asterisk. MicroSD карта, от 8Гб, желательно 16Гб для установки системы. Были попытки установки голой версии с нуля по различным туториалам из сети, но во всех постоянно были какие то проблемы, т.к. они все написаны от 2 до 10 лет назад, на быстрый старт они не сработали.

Так же для автономной работы без зависимости от провайдеров нужен USB модем с поддержкой голосовых вызовов, есть списки нормально работающих модемов (предварительно разблокированных по инструкциям из 4ПДА), у меня работает Huawei E1550.

Для безопасной работы в сети использую Mikrotik RB951G, теоретически можно любой, OS у них одна и та же (основ настройки роутера здесь не будет, подразумевается, что у вас интернет через него уже работает). Так же нужен интернет провайдер с возможностью предоставить статический или динамический IP адрес, что бы можно было подключатся к АТС из любого места сети интернет. Через приватные адреса у меня не получилось работать (через мобильные сети тоже, они все предоставляют адрес, к которому нет подключения снаружи, да же через DDNS сервисы).

Установка и настройка FreePBX


Так же подключаемся через Putty к asterisk, логин и пароль пока стандартные root/raspberry. Меняем пароль по умолчанию:

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

Так как система основана на Debian, то здесь работают стандартные команды. Обновляем систему, настраиваем свою временную зону, устанавливаем модуль для работы с USB модемом, файловый навигатор MC для удобства:

При установке модуля dongle указываем реальный номер, который будет использоваться в модеме (у оператора сотовой связи выбираем тариф с пакетом минут на звонки по России).

Так как у меня не получилось запустить систему на современном драйвере pjsip (в телефонах тишина), то все настройки будут на legacy sip, работает на всех абонентских устройствах.

В браузере переходим по порядку основные настройки:

Пояснение: 3-4 для безопасности, 5 - определение адреса внешнего IP, 6 - настройки вашей локальной сети, 7 - сужаем диапазон портов, так как сотрудников мало, чуть ниже выбираем стандартные кодеки ulaw alaw gsm, 9 - по завершению нажимаем на Apply config, ждем обновления конфигурации.

Пояснение: 3-4 для безопасности, 5 - определение адреса внешнего IP, 6 - настройки вашей локальной сети, 7 - сужаем диапазон портов, так как сотрудников мало, чуть ниже выбираем стандартные кодеки ulaw alaw gsm, 9 - по завершению нажимаем на Apply config, ждем обновления конфигурации.

Переходим на закладку SIP legacy setting:

1,2 -меняем стандартные значения портов на свои, 3 - пусть будет, пригодится, 4 - для безопасности при подборах паролей.

Так же меняем стандартное значение порта на вкладке PJSIP, все сохраняем и применяем ( submit & apply config).

Настраиваем extension (это номера для подключения абонентов):




настроили абонентов, Submit & Apply config.

Настройка trunk для модема:

6 - максимальное число каналов - ставим 1

Маршрут для входящих звонков:


Маршрут для исходящих звонков:

Шаблоны для набранных номеров, здесь можно ограничить направление звонков, местные, межгород, международные. Звонок будет работать, если совпадет с набранным шаблоном.

С графической частью закончили. Главное не забывать после каждых действий Submit & Apply Config, что бы внесенные изменения сохранялись.

Подключение GSM модема

Здесь собранная копипаста из разных источников:

Тестированные модемы:
Предварительно на компьютере перевести GSM-модем в режим работы «только модем» ( AT^U2DIAG=0 ) и в режим только 2G (AT^SYSCFG=13,1,3fffffff,0,0 ) с помощь Putty или любым другим способом, можно и через raspberry, но и так здесь большой объем.

E150 - Голос только в одну сторону

E3131 - Работают не стабильно, при исходящих голос только в одну сторону

E352 - Нет голосовых функций

Подключаем GSM-модем HUAWEI E1550, проверяем появились ли устройства ttyUSB*:

crw-rw---- 1 root dialout 188, 0 фев 27 11:34 ttyUSB0

crw-rw---- 1 root dialout 188, 1 фев 27 11:33 ttyUSB1

crw-rw---- 1 root dialout 188, 2 фев 27 12:37 ttyUSB2

KERNEL=="ttyUSB*", MODE="0666", OWNER="asterisk", GROUP="dialout"

Перезагружаем raspberry командой reboot и переподключаемся к атс с помощью Putty.

Настройка файла dongle.conf ( nano /etc/asterisk/dongle.conf ) - проверяем параметр exten и прописываем imei модема, остальное можно не трогать:

В консоли asterisk, перечитываем конфигурацию chan_dongle и проверяем состояние устройства. Если все было сделано правильно, то подключение к GSM-модему будет осуществлено и устройство будет отображаться в консоли asterisk:

Настройка файла конфигурации для звонков и смс (настраивал только входящие смс с переадресацией на настроенный extension) :

Сохраняем, перезагружаем, пробуем звонить (входящие исходящие) и присылать смс. Должно все работать.
Пробовал вариант подключения смартфона по Bluetooth в качестве шлюза, все работало, но качество связи было ужасное, причем на стороне астериска (голос сильно искаженный, скорее всего из-за кодеков блютуза, настроить не смог).

Настраиваем защиту asterisk freepbx с помощью fail2ban (By @UKVoIPForums )

Полноценных русскоязычных гайдов для начинающих не нашел, есть на английском форуме:

Копируем содержимое в файл jail.local

Еще 6 файлов конфигурации нужно создать/изменить, поехали:

1. Копируем содержимое в файл freepbx.conf

2. Копируем содержимое в файл asterisk.conf, на всякий случай скопируйте существующее содержимое оригинального файла 3. Копируем содержимое в файл iptables-asterisk.conf (в файле по аналогии добавляем наши кастомные порты, которые мы прописывали в настройках SIP) 4. Копируем содержимое в файл logger_logfiles_custom.conf

Памятка для работы с fail2ban:

File permissions and owner/group information:

/etc/fail2ban/jail.local = rw-r--r-- root root
/etc/fail2ban/filter.d/freepbx.conf = rw-r--r-- root root
/etc/fail2ban/filter.d/asterisk.conf = rw-r--r-- root root
/etc/fail2ban/action.d/iptables-asterisk.conf = rw-r--r-- root root
/etc/asterisk/logger_logfiles_custom.conf = rw-rw-r-- asterisk asterisk
/etc/logrotate.d/asterisk_security = rw-r--r-- root root

Basic Fail2ban commands:
Start Fail2ban = sudo service fail2ban start
Stop Fail2ban = sudo service fail2ban stop
Restart Fail2ban = sudo service fail2ban restart

Get the current status of an individual jail:
FreePBX status = sudo fail2ban-client status freepbx
Asterisk status = sudo fail2ban-client status asterisk
SSHD status = sudo fail2ban-client status sshd

Ban/Unban IP addresses:
Ban IP = sudo fail2ban-client set *YOURJAILNAMEHERE banip IPADDRESSHERE
Unban IP = sudo fail2ban-client set *YOURJAILNAMEHERE unbanip IPADDRESSHERE

*Replace YOURJAILNAMEHERE with freepbx, asterisk or sshd.
*Replace IPADDRESSHERE with the IP address that you want to ban/unban.

Настройка Mikrotik

Нужно настроить проброс портов и защиту.

IP-Firewall-жмем на плюсик:

Создаем ловушки на стандартных портах и рядом стоящих для сканировщиков и отправляем в бан. Правило копируем и делаем для tcp, так же можно сделать для других стандартных портов 22,3389,8291



Делаем проброс портов во вкладке NAT (номера, которые прописывали в SIP настройках FreePBX), копируем и пишем диапазон RTP по аналогии


Проброс портов для работы абонентов в локальной сети


Так же можно/желательно делать перезагрузку системы в автоматическом режиме по расписанию, для сброса зависшего модема, у меня завис через 5 дней работы, а рядом никого, пришлось ехать и в ручную перегружать.

Желательно настроить VPN доступ к микротику из интернета, для разруливания внештатных ситуаций по случайно забаненым адресам абонентов.

Долго собирал из разных источников эту работающую инструкцию. Может кому то и поможет.

В данной статье описана настройка файрвола на маршрутизаторах Mikrotik из консоли.
Настройки роутера в примере:
WAN-интерфейс: ether1
LAN-интерфейс: bridge-local
LAN-подсеть: 192.168.1.0/24
Порт 3389 WAN-интерфейса проброшен на 192.168.1.100


Настройка белого списка адресов

Настройка цепочки input

Настройка цепочки forward

Настройка белого списка адресов

Для начала, создадим список адресов, с которых будет открыт дуступ к интерфейсу управления роутером.

/ip firewall address-list

Добавляем внешние адреса, с которых можно будет подключиться к роутеру

add address=1.1.1.1 list=admin
add address=2.2.2.2 list=admin
add address=3.3.3.3 list=admin

Настройка цепочки input

/ip firewall filter

1. Правило для защиты от IP-спуфинга (ответ RST-пакетом на SYN-ACK-пакет, если он является первым в соединении)

add chain=input action=reject reject-with=tcp-reset protocol=tcp tcp-flags=syn,ack connection-state=new

add chain=input action=accept connection-state=established

add chain=input action=accept connection-state=related

add chain=input action=drop connection-state=invalid

5. Пропуск ICMP echo request

add chain=input action=accept protocol=icmp icmp-options=8

6. Пропуск ICMP time exceeded

add chain=input action=accept protocol=icmp icmp-options=11

7. Пропуск ICMP fragmentation needed

add chain=input action=accept protocol=icmp icmp-options=3:4

8. Пропуск DNS-запросов из локальной сети

add chain=input action=accept protocol=udp in-interface=bridge-local src-address=192.168.1.0/24 dst-port=53

add chain=input action=accept protocol=tcp in-interface=bridge-local src-address=192.168.1.0/24 dst-port=22,80,8291

add chain=input action=accept protocol=tcp in-interface=bridge-local src-address-list=admin dst-port=22,80,8291

11. Всё остальное сбрасываем

add chain=input action=drop

/ip firewall filter
add chain=input action=reject reject-with=tcp-reset protocol=tcp tcp-flags=syn,ack connection-state=new
add chain=input action=accept connection-state=established
add chain=input action=accept connection-state=related
add chain=input action=drop connection-state=invalid
add chain=input action=accept protocol=icmp icmp-options=8
add chain=input action=accept protocol=icmp icmp-options=11
add chain=input action=accept protocol=icmp icmp-options=3:4
add chain=input action=accept protocol=udp in-interface=bridge-local src-address=192.168.1.0/24 dst-port=53
add chain=input action=accept protocol=tcp in-interface=bridge-local src-address=192.168.1.0/24 dst-port=22,80,8291
add chain=input action=accept protocol=tcp in-interface=bridge-local src-address-list=admin dst-port=22,80,8291
add chain=input action=drop

Настройка цепочки forward

/ip firewall filter

1. Правила для пропуска established и related пакетов и сброса invalid пакетов, как и в цепочке input

add chain=forward action=accept connection-state=established
add chain=forward action=accept connection-state=related
add chain=forward action=drop connection-state=invalid

2. Пропуск запросов из локальной сети

add chain=forward action=accept in-interface=bridge-local src-address=192.168.1.0/24

3. Пропуск проброшенных пакетов на 192.168.1.100

add chain=forward action=accept protocol=tcp dst-address=192.168.1.100 dst-port=3389

4. Всё остальное сбрасываем

add chain=forward action=drop

/ip firewall filter
add chain=forward action=accept connection-state=established
add chain=forward action=accept connection-state=related
add chain=forward action=drop connection-state=invalid
add chain=forward action=accept in-interface=bridge-local src-address=192.168.1.0/24
add chain=forward action=accept protocol=tcp dst-address=192.168.1.100 dst-port=3389
add chain=forward action=drop

Казалось бы вещи, вынесенные в заголовок, достаточно тривиальны и описаны во множестве мест глобальной сети, но это только на первый взгляд. Опробовав наиболее часто встречающиеся советы я обнаружил несколько «подводных камней», глыб и даже скальных образований.

Но это все слова, ближе к делу.
Достаточно распространенная ситуация — Asterisk внутри ЛКС, за маршрутизатором MikroTik.
Дабы выделить трафик сервера, где установлена PBX, администратор отрезает часть канала провайдера выделяя его исключительно для конкретного IP.
Или другая реализация, когда нужный трафик определяется не только по IP-адресу PBX, но и по размеру пакетов и протоколу.
Попробовали — работает. Можно забыть? А вот и нет.

Решение здесь старо как сам IPv4 — метить трафик на сервере с Asterisk генерируемый только ею, и так, чтобы MikroTik это мог «увидеть», отматчить(простите за столь грубый англицизм) и приоритезировать только его.

Все вроде бы довольны, ютуб работает, яп тоже, но сколько бы мы не кричали экспекто потронум

и в отчаянии не пытались применить магию высших порядков

SIP-регистрации не поднимаются.

А дело в том, что в механизме «Connection tracking» остались висеть записи от «старого»(основного) интернет-канала и их нужно удалить, после чего регистрации успешно поднимутся и звонки начнут проходить.

Если вам интересно как доказать MikroTik'у кто все-таки верблюд, а так же как автоматизировать в скрипте сброс «старых» соединений, то вам прямо под кат.

Часть 1. Правильная приоритезация VoIP трафика

От весьма словоохотливого вступления перейдем к практической части.
Как же метить трафик, чтобы эту метку распознал MikroTik?
Ответ прост — DSCP!
ОК, а что на счет трафика конкретного демона, в данном случает Asterisk?
И здесь без проблем, сэр(мадам) — iptables --uid-owner!

На сервере с PBX узнаем какой user id у нашей Asterisk(звездочка — она)


И добавим правило для указания нужного нам значения DSCP(для трафика VoIP принято указывать CS5, или, в числовом формате — 40)
комментарий от ksg222

Хотел бы обратить внимание, что обычно голосовой трафик «раскрашивают» двумя значениями DSCP: CS5 (CS3 в случае Cisco) для сигнализации и EF для RTP-трафика. Безусловно в вашем примере это не критично, так как у вас в конфигурации основной момент — это выделить голосовой трафик среди остальных. Всё равно дальше в сети интернет приоритезации по полю DSCP не будет.

*для любознательных — в конце статьи буду ссылки, где можно узнать с чего я это взял

как подсказал varnav в комментариях, выставлять нужные значения можно сразу в sip.conf

А зачем ставить DSCP метку через Iptables, если это можно делать через sip.conf:

tos_sip=cs3; Sets TOS for SIP packets.
tos_audio=ef; Sets TOS for RTP audio packets.
tos_video=af41; Sets TOS for RTP video packets.

Как и описано во вступлении — матчим нужный трафик по IP и по полю DSCP.

К слову, маршрутизатор и так должен приоритезировать траффик с бОльшим значением DSCP, но я все таки отделил для него полосу в 2Мб/с.

Часть 2. Скрипт failover'а

Начнем с самого начала, расскажу как у меня настроены линки провайдеров и маршрутизация.
Есть два ISP, один подключается по ethernet, второй по PPPoE.
Для наглядности приведу листинги. Ethernet подключение:

заметьте — я не добавляю маршрут по умолчанию при поднятии интерфейса, он будет добавлен вручную, статически

следующим этапом идет настройка маршрутизации

тут много лишнего, нас интересует только 0,1,2,3
2 и 3 — это маршруты по умолчанию, 2 с метрикой(distance) «1» и является активным на данный момент и 3 с метрикой «2», на данный момент не используется

0 и 1 нужны для того, чтобы марштутизатор мог ответить с того же интерфейса, на который пришел запрос, т.е. не зависимо от того, какой сейчас маршрут по умолчанию активен
этой же логике служат и правила 0,1 из следующего листинга правил маршрутизации:

правило 2 нужно для устройств локальной сети за MikroTik.

Все это называется емкими словами «Policy based routing» и в завершении опуса я дам несколько полезных ссылок для понимания работы этих механизмов-правил.
*да, у меня реализован самый минимум, но это то что нужно мне

С аперетивом мы расправились, займемся основным блюдом.
Листинг скрипта упакован под спойлером, т.к. слишком велик(все UPD уже включены).
UPD1 — скрипт исправлен 28.11.2015,
изменил условие(справедливо и для ISP2):

так же дописал добавление маршрута

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

в конце проверки каждого ISP маршрут удаляется

UPD2 — скрипт успешно работает на RouterOS версии 6.33.1

UPD3
переменную PBXIP нужно обозначать в кавычках

а каждая строчка удаления соединений «Connection tracking» должна быть без ковычек

С описанием переменных все ясно, далее кратко сама логика:
1. Проверяем есть ли линк на интерфейсе(существует ли PPPoE подключение)
2. Есть — проверяем доступность $PingTarget
2а. Нет — удаляем все соединения с src-address нашей PBX. Активным становится маршрут с метрикой «2», чтобы поднялись SIP-регистрации старые соединения нужно убрать.
3. $PingTarget доступна — идем проверять ISP2
3a. $PingTarget не доступна — уменьшаем метрику маршрута через ISP1 на 2 и удаляем старые соединение из «Connection tracking»

Зачем я добавил проверку состояния интерфейса?
Если на порту нет линка, то нет смысла слать пинг.
Или, в случае с PPP интерфейсами(как у меня), пинг вообще не пройдет и нарушится логика скрипта.


Дело за малым, добавить задание в шедулер роутера.

И здесь закончили, перейдем к десерту — используемым ресурсам.

Часть 3. Заключение, используемые ресурсы

Если хочется почитать о DSCP, советую воспользоваться вот этими ссылками:
1. cisco
2. ru.wikipedia
3. msdn.microsoft
4. microsin

За сим откланиваюсь, спасибо тем, кто дочитал.
Буду безмерно рад, если окажусь полезен, ведь в этом и суть.
Всем удачи, все!

Роутер Mikrotik для SIP-телефонии

Оборудование Микротик предлагает гибкую настройку телефонных систем, использующих SIP. Модели производителя известны надежностью – для работы системы достаточно единоразовой настройки.

  • Оборудование Mikrotik
  • Настройка роутера Mikrotik
  • Настройка DHCP сервера
  • Создание правил сетевого экрана и NAT
  • Отключение SIP ALG на Mikrotik
  • Проброс портов SIP на Mikrotik
  • Проблемы в эксплуатации

Оборудование Mikrotik

Оборудование латвийской компании Mikrotik занимается маршрутизацией потоков данных для их своевременной доставки между абонентами локальной и глобальной сетей. Устройства Mikrotik работают с голосовой связью Voice IP через протокол передачи трафика Session Initiation Protocol.

Преимущества и недостатки программно-аппаратных комплексов компании рассмотрим в таблице.

ПреимуществаНедостатки
Дешевле аналогов других брендовМожет не подойти для очень больших сетей
Единая программная оболочка для всего набора устройств с одинаковыми принципами настройкиНе поддерживает методы шифрования по Российскому ГОСТу.
Документы и ПО для обновления оборудования есть в открытом доступе – не нужно даже создавать аккаунт на вебсайте производителяСложен в первичной настройке
Подходит для систем с разным числом подсетей и пользователей
Предлагает расширенный функционал
Бренд известен надежностью программно-аппаратных предложений – один раз правильной настроили и забыли

Настройка роутера Mikrotik

Перед настройкой Mikrotik Routerboard подключите его к нужной сети и подсоедините устройство для запуска WEB-интерфейса, например, ноутбук. Для разных моделей компания использует одну и туже операционную систему, поэтому процесс настройки для разной маршрутизирующей техники будет отличаться только в деталях.

Для управления Routerboard на ОС Windows понадобится специальная программа – Winbox. Скачайте её с официального сайта производителя по ссылке.

Для авторизации вам понадобится IP-адрес системы, логин с паролем для авторизации. Они указаны на корпусе устройства и в технической документации. Как правило, нужные данные единообразны:

  • IP-адрес: 192.168.88.1;
  • логин: admin;
  • пароль: отсутствует.

Для простоты воспользуйтесь режимом быстрой конфигурации «Quick Set». Кнопку для входа ищите слева вверху. Далее следуйте инструкции:

  • Найдите раздел «System».
  • Проверьте и установите имеющиеся обновления системы с помощью кнопки «Check for updates».
  • Настройте беспроводной доступ в блоке «Wireless». Вас интересуют графы с SSID, паролем, методом шифрования и аутентификации. Поля с частотой (frequency), необходимой шириной полосы канала (Channel Width) и диапазоном частот (Band) оставьте нетронутыми, если не знаете, что туда вводить.
  • Блок «Configurations» нужен, чтобы правильно организовать общение роутера с внешней сетью, чаще всего – интернетом. Здесь важны имя пользователя, пароля и наименование используемой технологии подключения. Их назначают при составлении договора с провайдером о поставке услуг связи.
  • В блоке Local укажите набор возможных внутренних адресов и выберите состояние функций подмены IP NAT и автоматической раздачи адресов абонентам DHCP.
  • Не забудьте сменить авторизационные данные для входа в маршрутизатор, иначе вас будет легче взломать. Для этого замените нужные поля в нижнем правом углу.
  • По окончанию настроек нажмите «ОК» справа вверху.

После перезагрузки система должна заработать корректно. Проверьте это, зайдя в интернет с абонентского устройства или запустив классические команды для проверки соединения, такие как: ping и tracert.

Настройка DHCP сервера

Dynamic Host Configuration Protocol нужен, чтобы распространять между абонентами информацию об адресах и иных параметрах соединения. В предыдущем разделе мы включили нужную опцию. Чтобы настроить DHCP для работы с SIP-телефонами:

  • Войдите в консоль управления SIP-телефонами.
  • Скопируйте значение графы «Local Provisioning URL».
  • Войдите в систему настройки через Winbox.
  • Перейдите по пунктам меню IP – DHCP Server – Options.
  • Создайте новую опцию со следующими значениями граф:
  • Name: произвольно;
  • Code: 66;
  • Value: ранее скопированное значение в одинарных кавычках;
  • Нажмите «ОК» в открытом окне.

Чтобы завершить процесс настройки DHCP, перейдите в раздел Network из подменю DHCP Server. Следуйте инструкции:

  • Укажите верные значения DNS Server и Domain. Как правило, сервером для получения доменных имен, является сам роутер.
  • Укажите адрес сервера, для синхронизации локальных часов через поле «Network Time Protocol Server (NTP)».
  • Укажите значение «Provisioning» в графе «DHCP Options».
  • Нажмите «OK».

После этого приступайте к конфигурации системы NAT.

Создание правил сетевого экрана и NAT

NAT используют для того, чтобы ограниченное число внешних адресов локальной сети не мешало данным доходить до неограниченного числа нужных адресатов. NAT подменяет внутренний адрес пользователя на внешний и наоборот. Система позволяет избежать путаницы.

Для эффективной работы SIP нужно внести новые правила. Для этого:

Роутер Mikrotik для SIP-телефонии

  • Войдите в настройки маршрутизирующего устройства.
  • Пройдите по пунктам меню IP – Firewall – NAT.
  • Узнайте данные IP-адресов, используемых протоколов и необходимых портов для подключения к серверам IP-телефонии.
  • Создавайте правила, нажимая на кнопку со значком в виде «+». Она находится слева вверху.
  • Вводите данные, собранные на шаги 3 во вкладках «General» и «Action». Первая нужна для того, чтобы указать общие настройки. Во второй выберите нужное действие – «dst-nat», локальный адрес сервера Voice IP и его порт. Не забудьте включить чекбокс напротив надписи ««Passthrough», чтобы допустить обработку данных дальше по сети.

Важно верно установить маркировку на исходящие соединения:

  • установите connection Mark: no-mark;
  • поставьте на новые соединения пометку new.

Для упрощенных очередей трафика с помощью Simple Queues маркировку входящих соединений не делают.

Для выбора приоритета пакетов трафика, введите следующие настройки:

  • priority – указывайте цифру от 1 до 3 для указания уровня приоритизации;
  • max-Limit – максимальный размер передаваемой информации;
  • limit At – минимальная скорость работы сети;
  • packet Marks – для того, чтобы отфильтровывать телефонные разговоры установите значение SIP-Trunk;
  • queues Type – разновидность очереди, лучше выставите значение pcq для входящего и исходящего трафика отдельно.

Процесс правильной маркировки и приоритизации смотрите на видео

Отзыв нашего читателя

Отзыв

Для моей компании требовалась IP-телефония, которая бы отвечала ряду требований: наличие АТС, возможность использования номеров разных регионов, адекватные цены и возможность оперативно решать вопросы. Выбирал из нескольких провайдеров на рынке, в итоге остановился на Задарма, она отвечает всем нашим требованиям. Подробнее >>>

Отключение SIP ALG на Mikrotik

Шлюз прикладного уровня Application Level Gateway нужен для того, чтобы Voice IP контент безошибочно работал с технологией подмены IP-адресов NAT. Если данное взаимодействие работает некорректно, возможно одностороннее пропадание связи. Это происходит из-за того что абонент, использующий NAT+ALG, затерялся среди подменных адресов.

Часть SIP-клиентов и моделей оборудования не нуждается в ALG. В этом случае отключите шлюз прикладного уровня. Для этого достаточно одной текстовой команды:

/ip firewall service-port disable sip

Также ALG можно выключить через Winbox в разделе Firewall Service Ports пункта меню IP. Для этого используйте кнопку верхней панели инструментов в виде красного креста.

Проброс портов SIP на Mikrotik

Кроме IP-адресов для передачи данных используют локальные и глобальные порты. Процесс их сопоставления для транспортировки информации называют пробросом.

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

Сначала определим время ожидания отклика нужных портов – timeout. Сделаем его равным 5 минутам с помощью команды:

/ip firewall service-port set sip disabled=no ports=5060, 5061 sip-direct-media=yes sip-timeout=5m

Убедитесь, что в настройках открыты нужные порты:

  • №№ 4569, 5060, 5070, 5090 для передачи данных с помощью протоколов транспортного уровня User Datagram Protocol и Transmission Control Protocol;
  • №443 для работы через протокол прикладного уровня HyperText Transfer Protocol Secure.
  • №№1000-20000 для транспортировки информации с помощью протокола UDP.

Перечисленные протоколы и порты задействованы для работы Voice IP с разными SIP-клиентами. Чтобы открыть закрытые порты следуйте инструкции:

  • Войдите в настройки маршрутизирующего устройства.
  • Поочередно нажимайте на кнопки меню IP, Firewall.
  • Откройте вкладку Service Ports.
  • Добавьте необходимые данные в список.

Настройку правил ретрансляции портов на аппаратуре Микротик смотрите на видео

Проблемы в эксплуатации

О списке проблемных моментов и возможных решениях читайте в таблице ниже.

Если программно запустить очистку не получается, воспользуйтесь одной из представленных команд:

    /ip firewall connection remove [find where protocol=udp and dst-address

Аппаратура Mikrotik предлагает интересное соотношение цены и качества. Оборудование не намного дороже предназначенного для личного пользования. При этом, модели дают явно не домашний набор функций. Оптимальный выбор для малого и среднего бизнеса.

Запуск Asterisk на MikroTik с помощью metarouter и Open WRT

Случайно наткнулся на интересную заметку по развертыванию asterisk на RouterBOARD MikroTik через MetaROUTER. Попробовал - получилось. Идея имеет право на существование.

Освоить MikroTik вы можете с помощью онлайн-курса «Настройка оборудования MikroTik». В курсе изучаются все темы из официальной программы MTCNA. Автор – официальный тренер MikroTik. Материал подходит и тем, кто уже давно работает с оборудованием MikroTik, и тем, кто еще не держал его в руках. В состав входят 162 видеоурока, 45 лабораторных работ, вопросы для самопроверки и конспект.

Инструкция по установке Asterisk на MikroTik:

aster01

Заходим в меню MetaROUTER и создаем виртуальный маршрутизатор, с помощью импорта нашего пакета. Памяти выделяем 48Мб, снимаем галочку с Enable.

aster02

  1. Нажимаем Start.
  2. Создаем сетевой интерфейс для нашего виртуального маршрутизатора. Меню MetaROUTER-Interfaces:
    Мне надо чтобы астериск был в локальной сети, поэтому я выбираю динамический с bridge-local.

aster03

Возвращаемся в MetaROUTER-MataROUTERs, изменяем размер диска на 24000 Кб и активируем наш виртуальный маршрутизатор.

aster04

Подключаемся через консоль к виртуальному маршрутизатору

aster05

Меняем пароль для root, введя в консоли команду passwd, и два раза новый пароль.

aster06

aster07

aster09

Освоить MikroTik вы можете с помощью онлайн-курса «Настройка оборудования MikroTik». В курсе изучаются все темы из официальной программы MTCNA. Автор – официальный тренер MikroTik. Материал подходит и тем, кто уже давно работает с оборудованием MikroTik, и тем, кто еще не держал его в руках. В состав входят 162 видеоурока, 45 лабораторных работ, вопросы для самопроверки и конспект.

Читайте также: