Надо большое спасибо сказать Тех Поддержке
Все стартовые настройки сделали они.
Спасибо за науку.!!!
=====================================================================
Пока речь пойдёт про Access
=====================================================================
Имеется в наличие:
- телефонная станция SI3000
- SBC AcmePacket 3820 Net Net 2шт. ( дублированная система )
Задача:
создать абонента
IP ххх.ххх.ххх.ххх (для регистрации)
Логин: *********
Пароль: *********
И разрешить ему регистрироваться:
- может из интернета,
- может из других сетей например, внутренняя сеть провайдера (специально выделенная для этого сеть)
- или вообще задействовать свою локальную сеть VLAN_101
===================================================================
У меня есть небольшая локальная сеть, которая размещена в VLAN_101
Есть у меня рабочий телефон который подключен к станции SI3000 через 2x проводную линию DSL
================================================================
И сказал себе: - Зачем мне провода, когда у нас уже установили SBC.
================================================================
К делу.
Конечно можно создавать прямых – direct абонентов, которые будут регистрироваться на SoftSwitch (SSW), но раз уж у нас есть пограничник - в лице SBC,
то разделим ближнее окружение на сеть - PRIVATE и сеть – PUBLIC.
На самом деле под SSW подразумевается серверная плата на которой работает приложение – Программный коммутатор
Вообщем - сервер с Asterisk
)))) в промышленном исполнении
======================================================================
PRIVATEНа SI3000 создаются MAD-ы (Multiplay Access Device)
ip address нашего SSW для VOIP VLAN_425 - 10.116.1.9
Создаём MAD c ip адресом 10.116.1.18
и назовём его - 101.
см. рис1
При создании абонента нужно будет указать к какому MAD он будет привязан, и поскольку я планирую регистрироваться из сети VLAN_101 см.выше, то и дал MAD соответствующее имя 101 чтобы не было путаницы. Ведь этих MAD -ов может быть много, в том числе для регистраций из
большого интернета.
Итак создали связку SSW SI3000 + MAD пока только на MN(в Management )
======================================================================
Идём на SBC
Надо сказать, что SBC существует в 3-х проекциях, мы пока обозначили только две
PRIVATE -- SSW SI3000 + MAD
PUBLIC --
OAM -- называю эту проекцию management,
У этой железки есть отдельные интерфейсы для управления
http://paulkonev.blogspot.ru/2010/02/acme-packet.htmlВообщем подключаем SBC к сети для управления заходим на неё и конфигурим.
- Код: Выделить всё
Connection established.
To escape to local shell, press 'Ctrl+Alt+]'.
SBC2> en
Password:
SBC2#
Конфигурим всегда на активной стороне, для чего проверяем:
SBC2# show health
Media Synchronized true
SIP Synchronized true
REC Synchronized disabled
MGCP Synchronized disabled
H248 Synchronized disabled
XSERV Synchronized disabled
Config Synchronized true
Collect Synchronized disabled
RADIUS CDR Synchronized disabled
Rotated CDRs Synchronized disabled
IPSEC Synchronized disabled
Iked Synchronized disabled
TSCF Synchronized disabled
Active Peer Address
Redundancy Protocol Process (v3):
State Active
Health 100
Lowest Local Address 169.254.1.2:9090
1 peer(s) on 2 socket(s):
SBC1: v3, Standby, health=100, max silence=1050
last received from 169.254.1.1 on wancom1:0
Switchover log:
Aug 10 02:46:45.109: Standby to BecomingActive, active peer SBC1
has unacceptable health (50)
SBC2#
===========================================================
Когда мы говорим о регистрации абонентов, то возникают два понятия
access и
backbone Начну с начала конфига
Поднимаемся в local-policy
SBC2(configure)# session-router
SBC2(session-router)# local-policy
Так как мы ещё не создавали ничего для нашей задачи
То начинаем создавать
- Код: Выделить всё
SBC2(local-policy)#?
SBC2(local-policy)#
from-address from address list
to-address to address list
source-realm source realm list
description local policy description
activate-time policy activation date & time
deactivate-time policy deactivation date & time
state administrative state
policy-priority priority for this local policy
next-hop next signaling host address
realm realm of next signaling
action action to be taken
terminate-recursion terminate route recursion with this next hop
app-protocol application protocol used to signal session agent
methods list of SIP methods for matching with a SIP request method
lookup additional local policy lookup
next-key next stage key for Multi-Stage Local Policy lookups
select select configuration to edit
no delete configuration
show show configuration information
done write configuration information
quit quit out of configuration mode
exit return to previous menu
SBC2(local-policy)#
И Сopy Paste-ом вставляем заранее подготовленные строчки (из XLS)))))
- Код: Выделить всё
from-address *
to-address *
source-realm access_101
description
activate-time
deactivate-time
state enabled
policy-priority none
next-hop 10.116.1.9
realm backbone_101
action none
terminate-recursion disabled
app-protocol
methods
lookup single
next-key
Затем проверяем
SBC2(local-policy)#show
И поправляем что не так.
Затем
SBC2(local-policy)# exit
Save Changes [y/n]?:y
Можно ещё раз проверить
SBC2(session-router)# local-policy
Вводим select
- Код: Выделить всё
SBC2(local-policy)# sel
<srcRealms>:
(Жмём Enter)
1: realms 'access1'; from *; to *
2: realms 'access_101'; from *; to *
3: realms 'access_427'; from *; to *
4: realms 'access_428'; from *; to *
5: realms 'core1'; from *; to *
6: realms 'core_427'; from *; to *
7: realms 'core_427_Protei'; from *; to *
8: realms 'core_427_kadastr'; from *; to *
9: realms 'peer1'; from *; to *
10: realms 'peer_427'; from *; to *
11: realms 'peer_427_Protei'; from *; to *
12: realms 'peer_427_kadastr'; from *; to *
selection:
Посмотрели какие local-policy у нас имеются..
Выбираем свой 'access_101',
для чего вводим 2
selection: 2
- Код: Выделить всё
SBC2(local-policy)#
SBC2(local-policy)# show
from-address *
to-address *
source-realm access_101
description
activate-time
deactivate-time
state enabled
policy-priority none
next-hop 10.116.1.9
realm backbone_101
action none
terminate-recursion disabled
app-protocol
methods
lookup single
next-key
Выходим из выбранного local-policy
SBC2(local-policy)#done
Вообщем создали первый элемент конфига
Local-policyДалее
Мы знаем что связка SSW SI3000 + MAD на стороне PRIVATE размещена в VLAN_425
И шлюз 10.116.1.1 также имеется на одном из маршрутизаторов
Переходим к network-interface
SBC2 (configure)# system
SBC2(system)# network-interface
SBC2(network-interface)#
Создаём наш интерфейс
- Код: Выделить всё
name M10
sub-port-id 425
description
hostname
ip-address 10.116.1.16
pri-utility-addr 10.116.1.14
sec-utility-addr 10.116.1.15
netmask 255.255.255.224
gateway 10.116.1.1
sec-gateway
gw-heartbeat
state disabled
heartbeat 0
retry-count 0
retry-timeout 1
health-score 0
dns-ip-primary
dns-ip-backup1
dns-ip-backup2
dns-domain
dns-timeout 11
dns-max-ttl 86400
signaling-mtu 0
hip-ip-list 10.116.1.16
10.116.1.18
10.116.1.20
10.116.1.22
ftp-address
icmp-address 10.116.1.16
10.116.1.18
10.116.1.20
10.116.1.22
snmp-address
telnet-address
ssh-address
Надо сказать что, к данному интерфейсу прикручены и другие
MAD-ы,
SIP Remote SID-ы
И их необязательно вписывать в hip-ip-list, icmp-address и т.д.
Подключаем физически интерфейсы M10(не забываем что у нас два SBC) к ES_SW
ES_SW – коммутатор который свяжет все устройства на стороне PRIVATE в заданном VLAN_425
Располагается в корзине MEA10
interface FastEthernet0/1
description SI3000_SBC_Private_VID
switchport trunk encapsulation dot1q
switchport trunk allowed vlan 425
switchport mode trunk
no cdp enable
!
interface FastEthernet0/2
description SI3000_SBC_Private_VID
switchport trunk encapsulation dot1q
switchport trunk allowed vlan 425
switchport mode trunk
no cdp enable
С стороной PRIVATE разобрались, но ещё вернёмся
==========================================================
==========================================================
PUBLIC
Переходим к стороне PUBLIC
SBC2(network-interface)#
Создаём наш интерфейс
- Код: Выделить всё
name M00
sub-port-id 101
description
hostname
ip-address 192.168.50.245
pri-utility-addr 192.168.50.246
sec-utility-addr 192.168.50.247
netmask 255.255.255.0
gateway 192.168.50.98
sec-gateway
gw-heartbeat
state disabled
heartbeat 0
retry-count 0
retry-timeout 1
health-score 0
dns-ip-primary
dns-ip-backup1
dns-ip-backup2
dns-domain
dns-timeout 11
dns-max-ttl 86400
signaling-mtu 0
hip-ip-list 192.168.50.245
192.168.50.249
ftp-address
icmp-address 192.168.50.245
192.168.50.249
snmp-address
telnet-address
ssh-address
Думаю здесь уже вопросов поменьше будет
192.168.50.245 - этот адрес для регистрации моего телефона
192.168.50.249 - этот можно использовать для SIP trunk, но об этом позже
sub-port-id 101 - у нас ведь по условию 101 VLAN
Подключаем физически интерфейсы M00(не забываем что у нас два SBC) к Catalyst
- Код: Выделить всё
interface FastEthernet0/11
description SI3000_SBC_Public_VID
switchport trunk encapsulation dot1q
switchport trunk allowed vlan 101,426-429
switchport mode trunk
no cdp enable
!
interface FastEthernet0/12
description SI3000_SBC_Public_VID
switchport trunk encapsulation dot1q
switchport trunk allowed vlan 101,426-429
switchport mode trunk
no cdp enable
!
interface FastEthernet0/14
description AS5350
switchport trunk encapsulation dot1q
switchport trunk allowed vlan 101
switchport mode trunk
no cdp enable
У меня имеется и маршрутизатор AS5350 c
interface FastEthernet0/0.101
encapsulation dot1Q 101
ip address 192.168.50.98 255.255.255.0
ip access-group 50 in
no snmp trap link-status
no cdp enable
end
===========================
===========================
Идём дальше
Поднимаемся в media-manager
SBC2(configure)# media-manager
SBC2(media-manager)# realm-config
SBC2(realm-config)#
Создаем realm-config на котором строится политика на стороне PUBLIC см. local-policy
- Код: Выделить всё
identifier access_101
description
addr-prefix 0.0.0.0
network-interfaces M00:101
mm-in-realm enabled
mm-in-network enabled
mm-same-ip enabled
mm-in-system enabled
bw-cac-non-mm disabled
msm-release disabled
generate-UDP-checksum disabled
max-bandwidth 0
fallback-bandwidth 0
max-priority-bandwidth 0
max-latency 0
max-jitter 0
max-packet-loss 0
observ-window-size 0
parent-realm
dns-realm
media-policy
media-sec-policy
srtp-msm-passthrough disabled
class-profile
in-translationid
out-translationid
in-manipulationid
out-manipulationid NAT_IP
average-rate-limit 0
access-control-trust-level low
invalid-signal-threshold 10
maximum-signal-threshold 150
untrusted-signal-threshold 50
nat-trust-threshold 150
max-endpoints-per-nat 0
nat-invalid-message-threshold 0
wait-time-for-invalid-register 0
deny-period 30
session-max-life-limit 0
cac-failure-threshold 0
untrust-cac-failure-threshold 0
ext-policy-svr
diam-e2-address-realm
subscription-id-type END_USER_NONE
symmetric-latching disabled
pai-strip disabled
trunk-context
early-media-allow
enforcement-profile
additional-prefixes
restricted-latching none
restriction-mask 32
user-cac-mode none
user-cac-bandwidth 0
user-cac-sessions 0
icmp-detect-multiplier 0
icmp-advertisement-interval 0
icmp-target-ip
monthly-minutes 0
options
spl-options
accounting-enable enabled
net-management-control disabled
delay-media-update disabled
refer-call-transfer disabled
refer-notify-provisional none
dyn-refer-term disabled
codec-policy
codec-manip-in-realm disabled
codec-manip-in-network enabled
rtcp-policy
constraint-name
session-recording-server
session-recording-required disabled
manipulation-string
manipulation-pattern
stun-enable disabled
stun-server-ip 0.0.0.0
stun-server-port 3478
stun-changed-ip 0.0.0.0
stun-changed-port 3479
sip-profile
flow-time-limit -1
initial-guard-timer -1
subsq-guard-timer -1
tcp-flow-time-limit -1
tcp-initial-guard-timer -1
tcp-subsq-guard-timer -1
sip-isup-profile
match-media-profiles
qos-constraint
block-rtcp disabled
hide-egress-media-update disabled
tcp-media-profile
monitoring-filters
node-functionality
default-location-string
alt-family-realm
pref-addr-type none
Затем создаем realm-config на котором строится политика на стороне PRIVATE см. local-policy
SBC2(realm-config)#
- Код: Выделить всё
identifier backbone_101
description
addr-prefix 0.0.0.0
network-interfaces M10:425
mm-in-realm disabled
mm-in-network enabled
mm-same-ip enabled
mm-in-system enabled
bw-cac-non-mm disabled
msm-release disabled
generate-UDP-checksum disabled
max-bandwidth 0
fallback-bandwidth 0
max-priority-bandwidth 0
max-latency 0
max-jitter 0
max-packet-loss 0
observ-window-size 0
parent-realm
dns-realm
media-policy
media-sec-policy
srtp-msm-passthrough disabled
class-profile
in-translationid
out-translationid
in-manipulationid
out-manipulationid NAT_IP
average-rate-limit 0
access-control-trust-level high
invalid-signal-threshold 0
maximum-signal-threshold 0
untrusted-signal-threshold 0
nat-trust-threshold 0
max-endpoints-per-nat 0
nat-invalid-message-threshold 0
wait-time-for-invalid-register 0
deny-period 30
session-max-life-limit 0
cac-failure-threshold 0
untrust-cac-failure-threshold 0
ext-policy-svr
diam-e2-address-realm
subscription-id-type END_USER_NONE
symmetric-latching disabled
pai-strip disabled
trunk-context
early-media-allow
enforcement-profile
additional-prefixes
restricted-latching none
restriction-mask 32
user-cac-mode none
user-cac-bandwidth 0
user-cac-sessions 0
icmp-detect-multiplier 0
icmp-advertisement-interval 0
icmp-target-ip
monthly-minutes 0
options
spl-options
accounting-enable enabled
net-management-control disabled
delay-media-update disabled
refer-call-transfer disabled
refer-notify-provisional none
dyn-refer-term disabled
codec-policy
codec-manip-in-realm disabled
codec-manip-in-network enabled
rtcp-policy
constraint-name
session-recording-server
session-recording-required disabled
manipulation-string
manipulation-pattern
stun-enable disabled
stun-server-ip 0.0.0.0
stun-server-port 3478
stun-changed-ip 0.0.0.0
stun-changed-port 3479
sip-profile
flow-time-limit -1
initial-guard-timer -1
subsq-guard-timer -1
tcp-flow-time-limit -1
tcp-initial-guard-timer -1
tcp-subsq-guard-timer -1
sip-isup-profile
match-media-profiles
qos-constraint
block-rtcp disabled
hide-egress-media-update disabled
tcp-media-profile
monitoring-filters
node-functionality
default-location-string
alt-family-realm
pref-addr-type none
Значит
backbone - смотрит на PRIVATE
access - смотрит на PUBLIC
=====================================================================
Поехали дальше
Идём в SIP – Interface
Здесь с Copy Paste надо быть повнимательней
===========================
Да, для настройки sip-port необходимо будет отдельно подняться ещё и в sip-port
SBC2(sip-interface)# sip-ports
SBC2(sip-port)#
)))===========================
Пишем интерфейс на стороне PUBLIC
SBC2(configure)# session-router
SBC2(session-router)# sip-interface
SBC2(sip-interface)#
- Код: Выделить всё
state enabled
realm-id access_101
description
sip-port
address 192.168.50.245
port 5060
transport-protocol UDP
tls-profile
allow-anonymous registered
multi-home-addrs
ims-aka-profile
carriers
trans-expire 0
initial-inv-trans-expire 0
invite-expire 0
session-max-life-limit 0
max-redirect-contacts 0
proxy-mode Proxy
redirect-action Proxy
contact-mode none
nat-traversal always
nat-interval 30
tcp-nat-interval 90
registration-caching enabled
min-reg-expire 300
registration-interval 3600
route-to-registrar enabled
secured-network disabled
teluri-scheme disabled
uri-fqdn-domain
options
spl-options block-attack-tools
trust-mode all
max-nat-interval 3600
nat-int-increment 10
nat-test-increment 30
sip-dynamic-hnt disabled
stop-recurse 401,407
port-map-start 0
port-map-end 0
in-manipulationid logRegister
out-manipulationid
sip-ims-feature disabled
sip-atcf-feature disabled
subscribe-reg-event disabled
operator-identifier
anonymous-priority none
max-incoming-conns 0
per-src-ip-max-incoming-conns 0
inactive-conn-timeout 0
untrusted-conn-timeout 0
network-id
ext-policy-server
default-location-string
term-tgrp-mode none
charging-vector-mode pass
charging-function-address-mode pass
ccf-address
ecf-address
implicit-service-route disabled
rfc2833-payload 101
rfc2833-mode transparent
constraint-name
response-map
local-response-map
sec-agree-feature disabled
sec-agree-pref ipsec3gpp
enforcement-profile
route-unauthorized-calls
tcp-keepalive none
add-sdp-invite disabled
p-early-media-header disabled
p-early-media-direction
add-sdp-profiles
manipulation-string
manipulation-pattern
sip-profile
sip-isup-profile
tcp-conn-dereg 0
tunnel-name
register-keep-alive none
kpml-interworking disabled
msrp-delay-egress-bye disabled
send-380-response
pcscf-restoration
session-timer-profile
session-recording-server
session-recording-required disabled
reg-cache-route disabled
diversion-info-mapping-mode none
atcf-icsi-match
sip-recursion-policy
Пишем интерфейс на стороне PRIVATE
SBC2(configure)# session-router
SBC2(session-router)# sip-interface
SBC2(sip-interface)#
- Код: Выделить всё
state enabled
realm-id backbone_101
description
sip-port
address 10.116.1.18
port 5060
transport-protocol UDP
tls-profile
allow-anonymous all
multi-home-addrs
ims-aka-profile
carriers
trans-expire 0
initial-inv-trans-expire 0
invite-expire 0
session-max-life-limit 0
max-redirect-contacts 0
proxy-mode
redirect-action
contact-mode none
nat-traversal none
nat-interval 30
tcp-nat-interval 90
registration-caching disabled
min-reg-expire 300
registration-interval 3600
route-to-registrar disabled
secured-network disabled
teluri-scheme disabled
uri-fqdn-domain
options
spl-options
trust-mode all
max-nat-interval 3600
nat-int-increment 10
nat-test-increment 30
sip-dynamic-hnt disabled
stop-recurse 401,407
port-map-start 0
port-map-end 0
in-manipulationid
out-manipulationid
sip-ims-feature disabled
sip-atcf-feature disabled
subscribe-reg-event disabled
operator-identifier
anonymous-priority none
max-incoming-conns 0
per-src-ip-max-incoming-conns 0
inactive-conn-timeout 0
untrusted-conn-timeout 0
network-id
ext-policy-server
default-location-string
term-tgrp-mode none
charging-vector-mode pass
charging-function-address-mode pass
ccf-address
ecf-address
implicit-service-route disabled
rfc2833-payload 101
rfc2833-mode transparent
constraint-name
response-map
local-response-map
sec-agree-feature disabled
sec-agree-pref ipsec3gpp
enforcement-profile
route-unauthorized-calls
tcp-keepalive none
add-sdp-invite disabled
p-early-media-header disabled
p-early-media-direction
add-sdp-profiles
manipulation-string
manipulation-pattern
sip-profile
sip-isup-profile
tcp-conn-dereg 0
tunnel-name
register-keep-alive none
kpml-interworking disabled
msrp-delay-egress-bye disabled
send-380-response
pcscf-restoration
session-timer-profile
session-recording-server
session-recording-required disabled
reg-cache-route disabled
diversion-info-mapping-mode none
atcf-icsi-match
sip-recursion-policy
Далее
Пишем steering-pool
SBC2(configure)# media-manager
SBC2(media-manager)# steering-pool
SBC2(steering-pool)#
- Код: Выделить всё
ip-address 10.116.1.18
start-port 16000
end-port 16896
realm-id backbone_101
network-interface
SBC2(steering-pool)#
- Код: Выделить всё
ip-address 192.168.50.245
start-port 23000
end-port 23896
realm-id access_101
network-interface
Затем проверяем
SBC2# verify-config
--------------------------------------------------------------------------------
Verification successful! No errors nor warnings in the configuration
SBC2#
Сохраняем
SBC2# save-config
Активируем
SBC2# activate-config
=======================================
Вот и всё
Создаю абонента
Итак абонент создан с учётной записью
Sub 8333675636
ip для регистрации 192.168.50.245
Логин: testabonent
Пароль: qwertyuiop1234567890
Включаем в сеть 192.168.250.0/24 SIP устройство и пользуемся связью
У меня небольшой шлюз Шлюз VoIP Eltex TAU-1M.IP
VLAN 101 интернета нет, есть один факс и ещё несколько компьютеров и устройств.
Проверяем регистрацию
- Код: Выделить всё
SBC2# show registration sipd by-user testabonent
Registration Cache Fri Sep 01 2017 20:51:38
Num
User Contacts Registered at
---------------------------------- -------- -------------------
sip: testabonent @192.168.50.245 1 2017-09-1-20:13:28
---------------------------------- -------- -------------------
Total: 1 entry
SBC2#
Нас определяет то, что мы делаем.