...
Для реализации данной схемы общий алгоритм настройки следующий:
1. Настроить IP-адрес на интерфейсе в сторону SSW:
| Блок кода |
|---|
vesbc# configure
vesbc(config)# interface gigabitethernet 1/0/1
vesbc(config-if-gi)# description "SSW"
vesbc(config-if-gi)# ip address 192.168.16.113/24
vesbc(config-if-gi)# ip firewall disable |
2. Настроить IP-адрес на внешнем интерфейсе в сторону абонентов:
| Блок кода |
|---|
vesbc# configure
vesbc(config)# interface gigabitethernet 1/0/2
vesbc(config-if-gi)# description "ABONENTS"
vesbc(config-if-gi)# ip address 192.168.20.120/24 |
3. Создать SIP-транспорт в сторону SSW:
| Блок кода |
|---|
vesbc#
vesbc# configure
vesbc(config)# esbc
vesbc(config-esbc)# sip transport TRANSPORT_SSW
vesbc(config-esbc-sip-transport)# ip address 192.168.16.113
vesbc(config-esbc-sip-transport)# port 5061 |
...
4. Создать SIP-транспорт в сторону абонентов:
| Блок кода |
|---|
vesbc#
vesbc# configure
vesbc(config)# esbc
vesbc(config-esbc)# sip transport TRANSPORT_ABONENTS
vesbc(config-esbc-sip-transport)# ip address 192.168.20.120
|
5. Создать медиаресурсы для согласования и передачи голоса на плече SSW --- ESBC:
| Блок кода |
|---|
vesbc#
vesbc# configure
vesbc(config)# esbc
vesbc(config-esbc)# media resource MEDIA_SSW
vesbc(config-esbc-media-resource)# ip address 192.168.16.113
#Указать диапазон портов, который будет выделяться на ESBC для передачи голоса. Данная команда необязательная. Если ее не указывать, будет использоваться диапазон портов 8000–65535.
vesbc(config-esbc-media-resource)# port-range 1024-65535 |
...
6. Создать медиаресурсы для согласования и передачи голоса на плече ESBC --- Абонентский шлюз/SIP-абоненты:
| Блок кода |
|---|
vesbc#
vesbc# configure
vesbc(config)# esbc
vesbc(config-esbc)# media resource MEDIA_ABONENTS
vesbc(config-esbc-media-resource)# ip address 192.168.20.120 |
7. Создать абонентский интерфейс в сторону абонентов:
| Блок кода |
|---|
vesbc#
vesbc# configure
vesbc(config)# esbc
vesbc(config-esbc)# user-interface sip ABONENTS
vesbc(config-esbc-trunk-sip)# sip transport TRANSPORT_ABONENTS
vesbc(config-esbc-trunk-sip)# media resource 0 MEDIA_ABONENTS
#Если абоненты находятся за NAT, выполнить команду:
vesbc(config-esbc-user-interface-sip)# nat comedia-mode on |
8. Настроить внешний сервис, создать SIP-транк в динамическом режиме и настроить маршрутизацию
DNS
1. Настроить DNS:
| Блок кода |
|---|
vesbc(config)# domain lookup enable vesbc(config)# domain nameserver 192.168.16.200 vesbc(config)# |
Описание всех доступных настроек DNS приведено в
...
разделе Настройка DNS Справочника команд CLI.
2. Создать
...
динамический SIP-транк, в качестве адреса указать подсеть, в которой находятся SSW:
| Блок кода |
|---|
vesbc# vesbc# configure vesbc(config)# esbc vesbc(config-esbc)# trunk sip SSW_DYNAMIC vesbc(config-esbc-trunk-sip)# sip transport TRANSPORT_SSW vesbc(config-esbc-trunk-sip)# remote address 192.168.16.0/24 vesbc(config-esbc-trunk-sip)# remote port 5060 vesbc(config-esbc-trunk-sip)# dynamic-mode dns vesbc(config-esbc-trunk-sip)# media resource 0 MEDIA_SSW |
3.
...
Создать таблицу маршрутизации и добавить туда правила, по которым вызовы, приходящие с абонентов будут маршрутизироваться на SIP-транк с динамическим режимом:
| Блок кода |
|---|
vesbc# vesbc# configure vesbc(config)# esbc vesbc(config-esbc)# route-table TO_SSW vesbc(config-esbc-route-table)# rule 0 vesbc(config-esbc-route-table-rule)# action direct-to-trunk SSW_DYNAMIC |
4. Привязать созданную таблицу маршрутизации к абонентскому интерфейсу:
| Блок кода |
|---|
vesbc# vesbc# configure vesbc(config)# esbc vesbc(config-esbc)# user-interface sip ABONENTS vesbc(config-esbc-user-interface-sip)# route-table TO_SSW |
5. Применить конфигурацию и подтвердить изменения:
| Блок кода |
|---|
vesbc# commit vesbc# confirm |
...
Для определения входящего запроса из транка с динамическим режимом используется адрес/маска подсети из remote address и порт/диапазон портов из remote port.
RADIUS
1. Настроить RADIUS сервер
Пример конфигурации freeradius:
| Блок кода |
|---|
Файл clients.conf:
client ESBC {
ipaddr = 192.168.16.113 #адрес интерфейса ESBC, с которого будут отправляться запросы на RADIUS сервер
secret = password #Ключ для аутентификации клиента
}
Файл users:
ssw125_2.domain Cleartext-Password := "domain_resolve" #обязательный пароль при использовании динамического режима
Framed-IP-Address = 192.168.16.125 #адрес, который сервер отправит в ответе на Access-Request с User-Name: ssw125_2.domain |
2. Задать параметры RADIUS сервера на ESBC:
| Блок кода |
|---|
vesbc(config)# radius-server host 192.168.16.250 vesbc(config-radius-server)# key ascii-text password #должен совпадать с secret на сервере vesbc(config-radius-server)# usage voip vesbc(config-radius-server)# source-address 192.168.16.113 #адрес интерфейса, с которого будут отправляться запросы |
Описание всех доступных настроек RADIUS сервера приведено в
...
разделе Настройка AAA Справочника команд CLI.
3. Создать RADIUS профиль, добавить в его конфигурацию RADIUS сервер:
| Блок кода |
|---|
vesbc(config)# esbc vesbc(config-esbc)# radius profile RADIUS_PROFILE vesbc(config-radius-profile)# radius-server host 192.168.16.250 |
Описание всех доступных настроек RADIUS профиля приведено в
...
разделе Настройка ESBC Справочника команд CLI.
4. Создать
...
динамический SIP-транк, в качестве адреса указать подсеть, в которой находятся SSW:
| Блок кода |
|---|
vesbc# vesbc# configure vesbc(config)# esbc vesbc(config-esbc)# trunk sip SSW_DYNAMIC vesbc(config-esbc-trunk-sip)# sip transport TRANSPORT_SSW vesbc(config-esbc-trunk-sip)# remote address 192.168.16.0/24 vesbc(config-esbc-trunk-sip)# remote port 5060 vesbc(config-esbc-trunk-sip)# dynamic-mode radius RADIUS_PROFILE vesbc(config-esbc-trunk-sip)# media resource 0 MEDIA_SSW |
5.
...
Создать таблицу маршрутизации и добавить туда правила, по которым вызовы, приходящие с абонентов будут маршрутизироваться на SIP-транк с динамическим режимом:
| Блок кода |
|---|
vesbc# vesbc# configure vesbc(config)# esbc vesbc(config-esbc)# route-table TO_SSW vesbc(config-esbc-route-table)# rule 0 vesbc(config-esbc-route-table-rule)# action direct-to-trunk SSW_DYNAMIC |
6. Привязать созданную таблицу маршрутизации к абонентскому интерфейсу:
| Блок кода |
|---|
vesbc# vesbc# configure vesbc(config)# esbc vesbc(config-esbc)# user-interface sip ABONENTS vesbc(config-esbc-user-interface-sip)# route-table TO_SSW |
7. Применить конфигурацию и подтвердить изменения:
| Блок кода |
|---|
vesbc# commit vesbc# confirm |
...