Страница 2 из 3
Re: Локальный IP в инвайте в поле Contact (очередная тема, д
Добавлено: 16 апр 2021, 04:43
Rupakoff
Увы, корректно заработали только исходящие. Инвайт стал формироваться с внешним ip в поле Contact, как и требовалось.
Однако, на входящем вызове на этом транке проблема сохраняется. Мой астер по-прежнему шлёт 200 ОК с неправильным полем Contact.
Голос идёт в обе стороны, но звонок остаётся в статусе CALL SETUP, и через 30 секунд обрывается.
На что ещё обратить внимание?
Re: Локальный IP в инвайте в поле Contact (очередная тема, д
Добавлено: 16 апр 2021, 10:16
Zavr2008
Итак по полочкам (chan_sip):
1. в sip_general_custom.conf если это FreePBX в [general] Задать нужно externhost, не externip.
Также там указать directmedia=no
Не относится к теме, но лучше и allowguest=no и alwaysauthreject=yes.
2. У пира beeline походу нет логина и пароля и авторизация по IP: указать
Код: Выделить всё
type=peer
host=195.218.176.52
port=5060
insecure=port,invite
directmedia=no
disallow=all
allow=alaw
context=from-trunk
dtmfmode=rfc2833
nat=force_rport,comedia
3. На роутере нужно проброс тогда делать 5050 и 10000-20000 UDP и убедиться что отключен ALG.
Для линукс, выгрузить модули ядра:
Re: Локальный IP в инвайте в поле Contact (очередная тема, д
Добавлено: 16 апр 2021, 11:30
Rupakoff
1. Выполнил, без изменений.
2. Да, транк с авторизацией по ip, без регистрации. Дописал предлагаемые строчки в конфиге - без изменений.
3. Проверил, указанные модули ядра не загружены. Не было проброса входящих 10000-20000 UDP, добавил, без изменений.
Про порт 5050 не понял. Опечатка?
Ну и вообще, я извиняюсь, что сопротивляюсь, но NAT на роутере ни при чём, у меня ведь с астериска сразу уходит неправильный пакет 200 ОК.
Re: Локальный IP в инвайте в поле Contact (очередная тема, д
Добавлено: 16 апр 2021, 12:47
sasa
sip show settings ответит на все вопросы
Re: Локальный IP в инвайте в поле Contact (очередная тема, д
Добавлено: 16 апр 2021, 13:56
Rupakoff
Ок, выкладываю второй раз, с текущими настройками.
Что из этого может влиять на мою проблему?
Код: Выделить всё
Global Settings:
----------------
UDP Bindaddress: 172.20.0.66:5061
TCP SIP Bindaddress: Disabled
TLS SIP Bindaddress: 0.0.0.0:5061
RTP Bindaddress: Disabled
Videosupport: Yes
Textsupport: Yes
Ignore SDP sess. ver.: No
AutoCreate Peer: Off
Match Auth Username: Yes
Allow unknown access: Yes
Allow subscriptions: Yes
Allow overlap dialing: Yes
Allow promisc. redir: No
Enable call counters: No
SIP domain support: No
Path support : No
Realm. auth: No
Our auth realm asterisk
Use domains as realms: No
Call to non-local dom.: Yes
URI user is phone no: No
Always auth rejects: Yes
Direct RTP setup: No
User Agent: FPBX-15.0.17.24(16.15.1)
SDP Session Name: Asterisk PBX 16.15.1
SDP Owner Name: root
Reg. context: (not set)
Regexten on Qualify: No
Trust RPID: No
Send RPID: No
Legacy userfield parse: No
Send Diversion: Yes
Caller ID: Unknown
From: Domain:
Record SIP history: Off
Auth. Failure Events: Off
T.38 support: Yes
T.38 EC mode: Redundancy
T.38 MaxDtgrm: 400
SIP realtime: Disabled
Qualify Freq : 60000 ms
Q.850 Reason header: No
Store SIP_CAUSE: No
Network QoS Settings:
---------------------------
IP ToS SIP: CS3
IP ToS RTP audio: EF
IP ToS RTP video: AF41
IP ToS RTP text: CS0
802.1p CoS SIP: 4
802.1p CoS RTP audio: 5
802.1p CoS RTP video: 6
802.1p CoS RTP text: 5
Jitterbuffer enabled: No
Network Settings:
---------------------------
SIP address remapping: Enabled using externhost
Externhost: 46.229.xx.xx
Externaddr: 46.229.xx.xx:0
Externrefresh: 10
Localnet: 172.20.0.0/255.255.0.0
192.168.0.0/255.255.0.0
Global Signalling Settings:
---------------------------
Codecs: (ulaw|alaw|h264)
Relax DTMF: No
RFC2833 Compensation: No
Symmetric RTP: Yes
Compact SIP headers: No
RTP Keepalive: 0 (Disabled)
RTP Timeout: 30
RTP Hold Timeout: 300
MWI NOTIFY mime type: application/simple-message-summary
DNS SRV lookup: No
Pedantic SIP support: Yes
Reg. min duration 60 secs
Reg. max duration: 3600 secs
Reg. default duration: 120 secs
Sub. min duration 60 secs
Sub. max duration: 3600 secs
Outbound reg. timeout: 20 secs
Outbound reg. attempts: 0
Outbound reg. retry 403:No
Notify ringing state: Yes
Include CID: No
Notify hold state: Yes
SIP Transfer mode: open
Max Call Bitrate: 2048 kbps
Auto-Framing: No
Outb. proxy: <not set>
Session Timers: Accept
Session Refresher: uas
Session Expires: 1800 secs
Session Min-SE: 90 secs
Timer T1: 500
Timer T1 minimum: 100
Timer B: 32000
No premature media: Yes
Max forwards: 70
Default Settings:
-----------------
Allowed transports: UDP
Outbound transport: UDP
Context: from-sip-external
Record on feature: automon
Record off feature: automon
Force rport: Yes
DTMF: rfc2833
Qualify: 0
Keepalive: 0
Use ClientCode: No
Progress inband: Yes
Language: ru
Tone zone: <Not set>
MOH Interpret: default
MOH Suggest:
Voice Mail Extension: *97
RTCP Multiplexing: No
Re: Локальный IP в инвайте в поле Contact (очередная тема, д
Добавлено: 16 апр 2021, 13:57
Zavr2008
Очень причем, да порт 5061 надо пробросить.
externhost=xxx.xxx.xxx.xxx:5061
после изменения параметров NAT нужен рестарт: fwconsole restart
без изменений
Нужно ВСЁ четко сделать, а не по-отдельности.
У нас подключено не меньше 400 клиентов по Вашей схеме к пчелам без регистрации.
но NAT на роутере ни при чём
Ага. В космос пакеты чтобы шли прямиком))
Re: Локальный IP в инвайте в поле Contact (очередная тема, д
Добавлено: 16 апр 2021, 14:13
sasa
sip flow я не доверяю
покажите лучше на консоли астериска
где ок уходит с неправильным контактом
core set debug 4
и звонок
в логе должно присутсвовать
Target address %s is not local, substituting externaddr
а так же
Setting AST_TRANSPORT_%s with address
Re: Локальный IP в инвайте в поле Contact (очередная тема, д
Добавлено: 19 апр 2021, 07:17
Rupakoff
core set debug 4
и звонок
в логе должно присутсвовать
Target address %s is not local, substituting externaddr
а так же
Setting AST_TRANSPORT_%s with address
Такое увидел, но для других транков другого провайдера.
А по своим звонкам увидел, что входящий инвайт от билайна прилетает на PJSIP. (что-то там типа using PJSIP channel).
Ну так-то да, у меня и настроены 5060 для PJSIP, а 5061 для SIP.
Тогда я убрал на файрволле проброс входящего 5060, оставил только 5061, входящие звонки перестали проходить. Значит, билайн не пробует обращаться на на 5061.
Добавил проброс 5060 на 5061, ну то есть и 5060 -> 5061, и 5061 -> 5061, и нормально заработало, по SIP.
sip flow я не доверяю
покажите лучше на консоли астериска
где ок уходит с неправильным контактом
До этого даже не дошёл ) sngrep начал показывать правильный контакт в "ОК".
Остался один вопрос - "трюк" с форвардом входящего соединения на порт 5060 на 5061 - это сильно позорный костыль или нормальная практика?
Re: Локальный IP в инвайте в поле Contact (очередная тема, д
Добавлено: 19 апр 2021, 12:04
ded
Rupakoff писал(а):А по своим звонкам увидел, что входящий инвайт от билайна прилетает на PJSIP. (что-то там типа using PJSIP channel).
Ну так-то да, у меня и настроены 5060 для PJSIP, а 5061 для SIP.
Это издержки использования бесплатной FreePBX.
Стандартные порты
5060 UDP, TCP - SIP
5061 - TLS
Создатели в своё время начали разработку альтернативного канала PJSIP, чтобы преодолеть конструктивные тупики штатного chan_SIP.
Но он сложней в понимании и конфигурации, хотя и больше возможностей.
Чтобы стимулировать использование PJSIP в новых версиях FreePBX стали устанавливать оба канала, но PJSIP - приоритетно, на порт 5060. А старый chan_SIP - на 5160 порт. Это породило много недоразумений, потому что в интернет все примеры и опции, разъяснения были по конфигурации пиров chan_SIP. Люди конфигурируют пир провайдера в sip.conf (additional, _custom) а туда ничего попадает, потому что 5060 порт слушает PJSIP.
Такая ситуация сохраняется несколько последних лет.
С пробросом порта всё только усложняется. Вывесили порт TLS 5061 на использование chan_SIP UDP? Да пускай. Лишь бы понимали, что делаете.
Re: Локальный IP в инвайте в поле Contact (очередная тема, д
Добавлено: 19 апр 2021, 12:26
Rupakoff
Ах, если бы месяца 3-4 назад мне кто-то это рассказал в таком виде )
ded, огромное спасибо за терпение и очень полезные ответы.