Вход | Регистрация
Вы здесь: Главная / Форум / Главный форум по Asterisk / Конфигурация и настройка / ТфОП через Cisco.

ТфОП через Cisco.

1 2>
Сообщений: 45

ТфОП через Cisco.

Драсте!
Из ТфОП через АТС Меридиан приходит поток на Cisco. От нее по sip'у уходит на Астериск, а от него уже к клиентам. Как указать Астериску, что Cisco это шлюз в ТфОП, в не просто клиент? Cisco коннектится к Астериску под таким логином "97100@192.168.1.29", где 97100 - номер, с которого звонят (из ТфОП), 192.168.1.29 - ИП Cisco. Сделал юзера 97100:
sip.conf:
[97100]
type=friend
host=192.168.1.29
username=97100
fromuser=97100
context=office
allow=all
После этого начал приходить звонок и вроде как всё ок. Но, когда звонишь например с номера 97101, то Cisco логинится, как "97101@192.168.1.29", на что Астериск ей конечно же отвечает: Failed to authenticate user <sip:89092507653@192.168.1.29>.
Если в sip.conf в разделе [global] указать allowguest=yes то всё работает, но это же не дело, ведь любой человек сможет подключиться к Астериску и пользоваться им, правда дозваниваться сможет лишь по номерам указанным в соответсвующем контексте, но всё же это не дело.

Итак, повторюсь: как объяснить Астериску, что на 192.168.1.29 висит не клиент, а Cisco, т.е. шлюз в ТфОП, с которого могут приходить любые номера.
2006-11-16 17:22

Сообщений: 104

Re: ТфОП через Cisco.

http://asterisk-support.ru/forums/configuration/451644791084/546197588938
2006-11-16 17:37

Сообщений: 45

Re: ТфОП через Cisco.

Кое-что не понятно из http://asterisk-support.ru/forums/configuration/451644791084/546197588938, в частности:
1. в sip.conf описаны исходящие звонки, как настроить входящие? В общем-то мой вопрос заключался именно в том, как настроить входящие. Хотя исходящие рано или поздно все равно придется настраивать.
2. в extensions.conf описан контекст [external], из sip.conf на него нет ни одной ссылки. general использует контекст default, cisco-rkr22 использует abonents.
3. что означает раздел [authentication] в sip.conf? Внутри этого раздела пусто. В смысле он описан [authentication], а за ним сразу идет описание другого раздела [cisco-rkr22].

И тем не менее, я глянул этот конф и попробовал сделать исходящие вызовы. В sip.conf написал так:
[general]
context=default
allowguest=no
allowoverlap=no
bindport=5060
bindaddr=0.0.0.0
srvlookup=yes
autocreatepeer=yes
sipdebug=yes
musicclass=default
language=ru

[200] ; I_Am!, x-lite
type=friend
host=dynamic
username=200
secret=user1_password
nat=yes
canreinvite=no
context=office
callerid="Mike" <200>
allow=gsm
allow=ulaw
allow=alaw

В extensions.conf так:
[general]
static=yes
writeprotect=no
clearglobalvars=no
autofallthrough=yes
priorityjumping=no

[globals]
CONSOLE=Console/dsp ; Console interface for demo
;CONSOLE=Zap/1
;CONSOLE=Phone/phone0
IAXINFO=guest ; IAXtel username/password
;IAXINFO=myuser:mypass
TRUNK=Zap/g2 ; Trunk interface
TRUNKMSD=1 ; MSD digits to strip (usually 1 or 0)
;TRUNK=IAX2/user:pass@provider

[macro-stdexten];
;
; Standard extension macro:
; ${ARG1} - Extension (we could have used ${MACRO_EXTEN} here as well
; ${ARG2} - Device(s) to ring
;
exten => s,1,Dial(${ARG2},20, t) ; Ring the interface, 20 seconds maximum
exten => s,2,Goto(s-${DIALSTATUS},1) ; Jump based on status (NOANSWER,BUSY,CHANUNAVAIL,CONGESTION,ANSWER)

exten => s-NOANSWER,1,Voicemail(${ARG1},u) ; If unavailable, send to voicemail w/ unavail announce
exten => s-NOANSWER,2,Goto(default,s,1) ; If they press #, return to start

exten => s-BUSY,1,Voicemail(${ARG1},b) ; If busy, send to voicemail w/ busy announce
exten => s-BUSY,2,Goto(default,s,1) ; If they press #, return to start

exten => _s-.,1,Goto(s-NOANSWER,1) ; Treat anything else as no answer

exten => a,1,VoicemailMain(${ARG1}) ; If they press *, send the user into VoicemailMain


[office]
exten => 200,1, Macro(stdexten,200,SIP/200)
exten => mike, 1, Goto(200|1)
exten => 201,1, Macro(stdexten,201,SIP/201)
exten => user2, 1, Goto(201|1)
exten => 202,1, Macro(stdexten,202,SIP/202)
exten => user3, 1, Goto(202|1)
exten => 300,1, Macro(stdexten,300,SIP/300)
exten => zyxel, 1, Goto(300|1)
exten => _8, Dial(SIP/cisco/${EXTEN:1}, 20, rT)


Не звонит. Мало того, на Cisco звонок не приходит.
Лог Астериска грит следующее:
<--- SIP read from 80.245.241.14:10415 --->
INVITE sip:897198@asterisk SIP/2.0

<------------->

Sending to 80.245.241.14 : 10415 (NAT)
Using INVITE request as basis request - MDkyMzIxOGMwOWJkZjE0MDdmOGI5YTY3ZWJjZWNkN2E.
Found user '200' for '200'

<--- Reliably Transmitting (NAT) to 80.245.241.14:10415 --->
SIP/2.0 401 Unauthorized

<------------>

<--- SIP read from 80.245.241.14:10415 --->
ACK sip:897198@asterisk SIP/2.0

<------------->

<--- SIP read from 80.245.241.14:10415 --->
INVITE sip:897198@asterisk SIP/2.0
<------------->
Sending to 80.245.241.14 : 10415 (NAT)
Using INVITE request as basis request –

Looking for 897198 in office (domain asterisk)

<--- Reliably Transmitting (NAT) to 80.245.241.14:10415 --->
SIP/2.0 404 Not Found
<------------>


Почему он ищет номер 897198 в контексте office, когда там указано _8?
Видимо что-то не так... подскажите, что?
Так же очень волнует вопрос настройки входящих вызовов с киски.

Заранее благодарен.
2006-11-17 13:22

Сообщений: 45

Re: ТфОП через Cisco.

Забыл еще сказать:
Знающие люди сказали, что application session (описано на киске в dial-peer) говно. Но это уже на вкус и цвет... :)
2006-11-17 13:25

Сообщений: 104

Re: ТфОП через Cisco.

1. В sip.conf описан friend, что означает, что эта запись используется и для входящих и для исходящих.
2. Контекст abonents инклудит контекст external, просто упустил эту запись.
3. Authentication нужен, если * должен региться на ком-то.

По логам:
x-lite судя по всему не регится на *: SIP/2.0 401 Unauthorized. Попробуй убрать username=200, в этом случае в качестве username используется имя peer'а ([200]), у меня с username тоже региться не хочет. Вообще я через нат не пробовал, но, на сколько я понял, на клиенте надо указывать ip адрес nat сервера. Вообще для начала добейся того, чтобы * при включении x-lite сказал, что он авторизован. Лог авторизации покажи.

А насчет 897198 -- не знаю, это случайно не тот номер, который ты набираешь? Еще, для звонков во вно надо указать маску _8. (точка в конце).
2006-11-17 16:42

Сообщений: 45

Re: ТфОП через Cisco.

Крутил вертел его как мог, че-то поменялось, но результата все равно нет.
Ща еще раз и популярно расскажу что и как.
Вопрос первый: "Входящие вызовы"
В sip.conf есть записи:
[general]
context=default
allowguest=no
allowoverlap=no
bindport=5060
bindaddr=0.0.0.0
srvlookup=yes
autocreatepeer=yes
sipdebug=yes
musicclass=default
language=ru

[cisco]
type=friend
host=192.168.1.29
insecure=very
qualify=yes
context=office
disallow=all
allow=alaw

192.168.1.29 - ИП циски.
Но тем не менее, когда я звоню на свой комп (софтфон, x-lite), то вот что вижу в логе Астериска:

<--- SIP read from 192.168.1.29:58454 --->
INVITE sip:96084@192.168.1.30:5060 SIP/2.0
Via: SIP/2.0/UDP 192.168.1.29:5060
From: <sip:89092507653@192.168.1.29>;tag=194F80-1BB0
To: <sip:96084@192.168.1.30>
Date: Mon, 01 Mar 1993 00:27:38 GMT
Call-ID: 647DF1AB-14F211CC-801F8237-E52A6943@192.168.1.29
Supported: timer,100rel
Min-SE: 1800
Cisco-Guid: 1685935491-351408588-2149351991-3844761923
User-Agent: Cisco-SIPGateway/IOS-12.x
Allow: INVITE, OPTIONS, BYE, CANCEL, ACK, PRACK, COMET, REFER, SUBSCRIBE, NOTIFY, INFO
CSeq: 101 INVITE
Max-Forwards: 6
Remote-Party-ID: <sip:89092507653@192.168.1.29>;party=calling;screen=yes;privacy=off
Timestamp: 730945658
Contact: <sip:89092507653@192.168.1.29:5060>
Expires: 180
Allow-Events: telephone-event
Content-Type: application/sdp
Content-Length: 250

v=0
o=CiscoSystemsSIP-GW-UserAgent 1272 7183 IN IP4 192.168.1.29
s=SIP Call
c=IN IP4 192.168.1.29
t=0 0
m=audio 18060 RTP/AVP 18 8 19
c=IN IP4 192.168.1.29
a=rtpmap:18 G729/8000
a=fmtp:18 annexb=no
a=rtpmap:8 PCMA/8000
a=rtpmap:19 CN/8000

<------------->
--- (20 headers 11 lines) ---
Sending to 192.168.1.29 : 5060 (no NAT)
Using INVITE request as basis request - 647DF1AB-14F211CC-801F8237-E52A6943@192.168.1.29
No user '89092507653' in SIP users list
No matching peer for '89092507653' from '192.168.1.29:58454'
[Nov 20 04:39:04] NOTICE[22403]: chan_sip.c:13302 handle_request_invite: Failed to authenticate user <sip:89092507653@192.168.1.29>;tag=194F80-1BB0

<--- Reliably Transmitting (no NAT) to 192.168.1.29:5060 --->
SIP/2.0 403 Forbidden
Via: SIP/2.0/UDP 192.168.1.29:5060;received=192.168.1.29
From: <sip:89092507653@192.168.1.29>;tag=194F80-1BB0
To: <sip:96084@192.168.1.30>;tag=as1962728b
Call-ID: 647DF1AB-14F211CC-801F8237-E52A6943@192.168.1.29
CSeq: 101 INVITE
User-Agent: Asterisk PBX
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY
Supported: replaces
Content-Length: 0


<------------>
Scheduling destruction of SIP dialog '647DF1AB-14F211CC-801F8237-E52A6943@192.168.1.29' in 32000 ms (Method: INVITE)

<--- SIP read from 192.168.1.29:58454 --->
ACK sip:96084@192.168.1.30:5060 SIP/2.0
Via: SIP/2.0/UDP 192.168.1.29:5060
From: <sip:89092507653@192.168.1.29>;tag=194F80-1BB0
To: <sip:96084@192.168.1.30>;tag=as1962728b
Date: Mon, 01 Mar 1993 00:27:38 GMT
Call-ID: 647DF1AB-14F211CC-801F8237-E52A6943@192.168.1.29
Max-Forwards: 6
Content-Length: 0
CSeq: 101 ACK


<------------->
--- (9 headers 0 lines) ---
Really destroying SIP dialog '647DF1AB-14F211CC-801F8237-E52A6943@192.168.1.29' Method: ACK

Тут: 192.168.1.30 - Астериск
192.168.1.29 - киска
89092507653 - номер, с которого я звоню.
96084 - номер, на который я звоню (есть в экстеншене office, будет описан немного ниже).

Т.е. несмотря на запись [cisco] в sip.conf он все равно не авторизуется почему-то... почему?
Если поставить в sip.conf allowguest=yes, то все работает нормально. Т.е. он именно не авторизуется.

Вопрос второй: "Исходящие вызовы"
x-lite авторизуется нормально, в пределах сипа все работает нормально. А пытаюсь сделать звонок наружу, с помощью киски - не хочет. Но тут я видимо что-то недонастроил, что не знаю, надеюсь подскажете.
Экстеншены:
[general]
static=yes
writeprotect=no
clearglobalvars=no
autofallthrough=yes
priorityjumping=no

[globals]
CONSOLE=Console/dsp ; Console interface for demo
;CONSOLE=Zap/1
;CONSOLE=Phone/phone0
IAXINFO=guest ; IAXtel username/password
;IAXINFO=myuser:mypass
TRUNK=Zap/g2 ; Trunk interface
TRUNKMSD=1 ; MSD digits to strip (usually 1 or 0)
;TRUNK=IAX2/user:pass@provider

[macro-stdexten];
;
; Standard extension macro:
; ${ARG1} - Extension (we could have used ${MACRO_EXTEN} here as well
; ${ARG2} - Device(s) to ring
;
exten => s,1,Dial(${ARG2},20, t) ; Ring the interface, 20 seconds maximum
exten => s,2,Goto(s-${DIALSTATUS},1) ; Jump based on status (NOANSWER,BUSY,CHANUNAVAIL,CONGESTION,ANSWER)

exten => s-NOANSWER,1,Voicemail(${ARG1},u) ; If unavailable, send to voicemail w/ unavail announce
exten => s-NOANSWER,2,Goto(default,s,1) ; If they press #, return to start

exten => s-BUSY,1,Voicemail(${ARG1},b) ; If busy, send to voicemail w/ busy announce
exten => s-BUSY,2,Goto(default,s,1) ; If they press #, return to start

exten => _s-.,1,Goto(s-NOANSWER,1) ; Treat anything else as no answer

exten => a,1,VoicemailMain(${ARG1}) ; If they press *, send the user into VoicemailMain

[default]
include => office

[office]
...
exten =>_8X.,1,Dial(SIP/cisco/${EXTEN:1},,r)

Конфиг киски (лишнее упущено):
isdn switch-type primary-net5
!
!
voice call send-alert
!
voice service pots
!
voice service voip
sip
!
voice class codec 777
codec preference 1 g729r8
codec preference 2 g711alaw
!
controller E1 3/0
framing NO-CRC4
clock source line primary
pri-group timeslots 1-31
!
interface Serial3/0:15
no ip address
encapsulation hdlc
isdn switch-type primary-net5
isdn incoming-voice voice
!
voice-port 3/0:15
echo-cancel coverage 32
cptone RU
!
dial-peer voice 2 pots
destination-pattern .T
direct-inward-dial
port 3/0:15
!
dial-peer voice 1 voip
destination-pattern 2T
voice-class codec 777
session protocol sipv2
session target sip-server
session transport udp
!
sip-ua
set pstn-cause 127 sip-status 486
retry invite 2
retry response 3
retry bye 2
retry cancel 2
retry prack 6
sip-server ipv4:192.168.1.30:5060
!

Набираю на x-lite 897198, после этого на киске вижу:
*Mar 1 01:29:54.367: ISDN Se3/0:15 Q931: TX -> SETUP pd = 8 callref = 0x0086
Bearer Capability i = 0x8090A3
Standard = CCITT
Transfer Capability = Speech
Transfer Mode = Circuit
Transfer Rate = 64 kbit/s
Channel ID i = 0xA9839F
Exclusive, Channel 31
Calling Party Number i = 0x0080, '200'
Plan:Unknown, Type:Unknown
Called Party Number i = 0x80, '97198'
Plan:Unknown, Type:Unknown
*Mar 1 01:29:54.455: ISDN Se3/0:15 Q931: RX <- RELEASE_COMP pd = 8 callref = 0x8086
Cause i = 0x81AC - Requested circuit/channel not available
Чего не так?..

Вроде все, что мог написать написал. Помогите, плиз. Буду очень признателен.
2006-11-20 10:42

Сообщений: 6521

Re: ТфОП через Cisco.

Вот причина -
No user '89092507653' in SIP users list
Это значит что нет у тебя понятия диал-плана, а если наберешь
CLI>sip show peers то не увидищь там юзера 89092507653.
Рекомендации - читать мануалы. Через третий круг прочтения придет просветление.
2006-11-20 12:07

Сообщений: 45

Re: ТфОП через Cisco.

Вот скажите мне, это всегда обязательно говорить вот такие слова?..
Что юзера 89092507653 нет я видел, потому собсна и спрашивал КАК ОБЪЯСНИТЬ АСТЕРИСКУ, ЧТО НА 192.168.1.29 НАХОДИТСЯ ШЛЮЗ В ТфОП и что не надо там искать никаких пользователей. Ответа так и не получил.
Я 8 раз просил и 9й попрошу --- какие мануалы читать? Дайте линк, буду читать! Только дайте...

Сумел настроить исходящие вызовы (из СИП-сети в ТфОП), но и тут столкнулся с проблемой:
После разговора кладешь трубку, а на другой стороне короткие гудки начинаются секунд через 15. Что не так? Почему циска не отдает АТС сигнал отбоя?.. Не подскажете?

Еще раз прошу (я даже топик отдельный делал с этим вопросом): дайте линк на документацию о том, как подключить Астериск к ТфОП через Киску. В частности интересен вопрос как объяснить Астериску, что за 192.168.1.29 скрывается шлюз в ТфОП.

Буду очень благодарен.
2006-11-20 15:22

Сообщений: 104

Re: ТфОП через Cisco.

Циска видимо пытается региться по номеру звонящего в сипе. Попробуй в session target указать не sip-server, а ipv4:192.168.1.30 и убери sip-ua вообще.
Для звонка из PSTN через киску на *:
есть в * exten => 96084,1,Dial(SIP/x-lite,90)?
Для исходящих опцию r убери из dial, она может гудки портить
А то, что киска ругается -- это может быть связано с настройкой E1. Посмотри все ли 30 линий тебе выделены из потока?
2006-11-20 16:39

Сообщений: 6521

Re: ТфОП через Cisco.

Где-где - в интернете! Если не получается пользоваться Гуглем, то любые советы - мимо. Я тебя в 1-й раз прошу: не надо постить дебаг, гораздо интересней конфы. вот ты sip.conf приводишь - зачем нам стандартные макросы? А нужной ботвы - твоего Х-лайта нету. Знакомый телепат обещал помочь, достать твои конфы, до завален работой.
stakado, это у тебя ложное впечатление сложилось, что все как-будто правильно, только чуть подправить, и пойдет. ЭТО НЕ ТАК!
Последний мой забег в ту сторону (он весь тут на форуме), там была какая-то AS5350, упарил меня человек в доску. Даже 5 страниц постов не поправили ситуацию, он дал в конце концов доступ на циску и в Астериск, и только уже в частной переписке удалось поправить.
2006-11-20 16:49

1 2>
Добавить страницу в закладки:  Delicious Google Slashdot Yahoo Yandex.ru Reddit Digg Technorati Bobrdobr.ru Newsland.ru Smi2.ru Rumarkz.ru Vaau.ru Memori.ru Rucity.com Moemesto.ru News2.ru Mister-Wong.ru Myscoop.ru 100zakladok.ru