404 not found от сервера Oktell
Проблема: Сервер Oktell отвечает 404 NOT FOUND в ответ на входящий INVITE. Это означает, что сервер не может сопоставить Username (имя пользователя) или IP-адрес из входящего пакета ни с одним шлюзом в карте сети.
Решение: В карте сети в настройках шлюза добавить новый IP-адрес в "альтернативные адреса" или новый Username "альтернативные имена".
Если Username каждый раз приходит разный, то
- попросите у провайдера присылать постоянный Username
- добавьте шлюз без регистрации и укажите настройку "Принимать на поток неизвестные входящие". Следует учитывать, что это может уменьшить безопасность вашей системы и следует пользоваться ей только в самых необходимых случаях.
Информацию по этому поведению системы вы можете увидеть в логе TRN, UA и SIP.
Пример:
Это входящий звонок из лога TRN, в Oktell приходит INVITE.
11:55:02:161 2500 RECV -- UDP 963 Bytes FROM 426.25.9.7:5060 IFACE 127.426.133.22:5060 INVITE sip:88001112233@78.46.133.202 SIP/2.0 Via: SIP/2.0/UDP 426.25.9.7:5060;branch=z9hG4bK525d142e;rport Max-Forwards: 70 From: "VS 123" <sip:84952294989@46.255.96.79>;tag=as75ef52d8 To: <sip:88001112233@127.426.133.22> Contact: <sip:84952294989@426.25.9.7:5060> Call-ID: 75c3b69b72d79ad33fce7f863f4bf0e5@426.25.9.7:5060 CSeq: 102 INVITE User-Agent: Asterisk Date: Fri, 01 Nov 2013 07:55:02 GMT Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY, INFO, PUBLISH Supported: replaces, timer Content-Type: application/sdp Content-Length: 382
Сервер Oktell отвечает Not Found. В сервисный лог информация о звонке не пишется, так как запрос отбивается на уровне АТС.
11:55:02:161 3692 SEND -- UDP 380 Bytes TO 426.25.9.7:5060 IFACE 127.426.133.22:5060 SIP/2.0 404 Not Found Via: SIP/2.0/UDP 426.25.9.7:5060;branch=z9hG4bK525d142e;rport=5060;received=426.25.9.7 From: "VS 123" <sip:84952294989@46.255.96.79>;tag=as75ef52d8 To: <sip:88001112233@127.426.133.22>;tag=db469c7a-4e360000-dcaf1008 CSeq: 102 INVITE Call-ID: 75c3b69b72d79ad33fce7f863f4bf0e5@426.25.9.7:5060 Server: Oktell 2.8.4786.21907 Content-Length: 0
В карте сети нужно добавить в настройках шлюза "альтернативные имена" поле выделенное жирным цветом (на какой username приходил запрос). В примере выше, это "88001112233".