...
| Блок кода | ||
|---|---|---|
| ||
vesbc(config)# esbc vesbc(config-esbc)# media resource USERS vesbc(config-esbc-media-resource)# ip address 20.0.0.1 vesbc(config-esbc-media-resource)# exit vesbc(config-esbc)# media resource ECSS vesbc(config-esbc-media-resource)# ip address 192.168.1.1 vesbc(config-esbc-media-resource)# exit vesbc(config-esbc)# sip transport USERS vesbc(config-esbc-sip-transport)# ip address 20.0.0.1 vesbc(config-esbc-sip-transport)# port 5061 vesbc(config-esbc-sip-transport)# mode tls vesbc(config-esbc-sip-transport)# exit vesbc(config-esbc)# sip transport ECSS vesbc(config-esbc-sip-transport)# ip address 192.168.1.1 vesbc(config-esbc-sip-transport)# port 5070 vesbc(config-esbc-sip-transport)# exit vesbc(config-esbc)# route-table TO_ECSS vesbc(config-esbc-route-table)# rule 0 vesbc(config-esbc-route-table-rule)# action direct-to-trunk ECSS vesbc(config-esbc-route-table-rule)# exit vesbc(config-esbc-route-table)# exit vesbc(config-esbc)# trunk sip ECSS vesbc(config-esbc-trunk-sip)# sip transport ECSS vesbc(config-esbc-trunk-sip)# media resource 0 ECSS vesbc(config-esbc-trunk-sip)# remote address 192.168.1.2 vesbc(config-esbc-trunk-sip)# remote port 5070 vesbc(config-esbc-trunk-sip)# exit vesbc(config-esbc)# user-interface sip USERS vesbc(config-esbc-user-interface-sip)# sip transport USERS vesbc(config-esbc-user-interface-sip)# route-table TO_ECSS vesbc(config-esbc-user-interface-sip)# media resource 0 USERS vesbc(config-esbc-user-interface-sip)# exit |
| Scroll Pagebreak |
|---|
2. Загрузить файлы сертификата, CA и private-key на ESBC через CLI (в примере указан протокол tftp):
...
Возможна работа в двух режимах:
- flexible — проверяет источник во входящем RTP-потоке и транслирует исходящий поток на IP-адрес и UDP-порт, с которого принимается медиапоток, в случае прерывания входящего RTP-потока более чем на 1 секунду, исходящий поток продолжает транслироваться;
- on — проверяет источник во входящем RTP-потоке и транслирует исходящий поток на IP-адрес и UDP-порт, с которого принимается медиапоток, в случае прерывания входящего RTP-потока более чем на 1 секунду, исходящий поток перестает транслироваться.
...
Возможна работа в двух режимах:
- flexible — проверяет источник во входящем RTP-потоке и транслирует исходящий поток на IP-адрес и UDP-порт, с которого принимается медиапоток, в случае прерывания входящего RTP-потока более чем на 1 секунду, исходящий поток продолжает транслироваться;
- on — проверяет источник во входящем RTP-потоке и транслирует исходящий поток на IP-адрес и UDP-порт, с которого принимается медиапоток, в случае прерывания входящего RTP-потока более чем на 1 секунду, исходящий поток перестает транслироваться.
...
Команда nat keep-alive-interval в настройках абонентского интерфейса используется для настройки интервала для поддержки соединения за NAT. scroll-pagebreak
Подмена атрибутов direction в SDP
...
При наличии Public IP, адрес в SDP, заголовках Via и Contact будут заменены на значение public-ip из конфигурации объекта. Media будет работать в режиме NAT-comedia.
| Scroll Pagebreak |
|---|
Пример настройки Public IP на транке:
| Блок кода | ||
|---|---|---|
| ||
#Настройка SIP-транспорта для транка: vesbc# configure vesbc(config)# esbc vesbc(config-esbc)# sip transport TRUNK_TRANSPORT vesbc(config-esbc-sip-transport)# ip address 192.168.1.1 vesbc(config-esbc-sip-transport)# exit #Настройка медиаресурсов для транка: vesbc(config-esbc)# media resource TRUNK_MEDIA vesbc(config-esbc-media-resource)# ip address 192.168.1.1 vesbc(config-esbc-media-resource)# exit #Настройка параметров транка: vesbc(config-esbc)# trunk sip TRUNK_PUBLIC_IP vesbc(config-esbc-trunk-sip)# sip transport TRUNK_TRANSPORT vesbc(config-esbc-trunk-sip)# media resource 0 TRUNK_MEDIA vesbc(config-esbc-trunk-sip)# remote address 192.168.1.3 vesbc(config-esbc-trunk-sip)# remote port 5060 vesbc(config-esbc-trunk-sip)# public-ip 10.25.0.1 #Применение и подтверждение изменений: vesbc(config-esbc-trunk-sip)# do commit Configuration has been successfully applied and saved to flash. Commit timer started, changes will be reverted in 600 seconds. vesbc(config-esbc-trunk-sip)# do confirm Configuration has been confirmed. Commit timer canceled. |
...
| Блок кода | ||
|---|---|---|
| ||
INVITE sip:23002@192.168.1.1:5060 SIP/2.0 Via: SIP/2.0/UDP 192.168.1.4:5061;rport;branch=z9hG4bK-1914230-1-1 From: "24001" <sip:24001@192.168.1.4:5061>;tag=1 To: "23002" <sip:23002@192.168.1.1:5060> Call-ID: 1-1914230@192.168.1.4 Cseq: 1 INVITE Contact: <sip:24001@192.168.1.4:5061> Max-Forwards: 70 Allow: INVITE, ACK, BYE, CANCEL Content-Type: application/sdp Content-Length: 138 Session Description Protocol Version (v): 0 Owner/Creator, Session Id (o): user1 77755765 7773687637 IN IP4 192.168.1.4 Session Name (s): - Time Description, active time (t): 0 0 Connection Information (c): IN IP4 192.168.1.4 Media Description, name and address (m): audio 10000 RTP/AVP 8 Media Attribute (a): rtpmap:8 PCMA/8000 |
| Scroll Pagebreak |
|---|
ESBC пересылает INVITE в транк TRUNK_PUBLIC_IP.
В SDP, Via и Contact вместо адреса привязанного SIP-транспорта(192.168.1.1) используется Public IP транка (10.25.0.1):
...
| Блок кода | ||
|---|---|---|
| ||
vesbc# configure
vesbc(config)# esbc
vesbc(config-esbc)# user-interface sip ABONENT_QOS_50
vesbc(config-esbc-user-interface-sip)# sip transport ABONENT_TRANSPORT
vesbc(config-esbc-user-interface-sip)# media resource 0 ABONENT_MEDIA
vesbc(config-esbc-user-interface-sip)# route-table TO_SSW
vesbc(config-esbc-user-interface-sip)# dscp audio 50
#Применение и подтверждение изменений:
vesbc(config-esbc-user-interface-sip)# do commit
Configuration has been successfully applied and saved to flash. Commit timer started, changes will be reverted in 600 seconds.
vesbc(config-esbc-user-interface-sip)# do confirm
Configuration has been confirmed. Commit timer canceled. |
...