Hi,

Thank for your answer.

22.04.2019 23:47, Joshua C. Colp пишет:
On Mon, Apr 22, 2019, at 1:43 PM, Pavel wrote:
Hi,

Got problems with incoming SIP calls.

Scenario:

Server1: 3cx or any other server

Server2: Asterisk 16.2.1 . PJPROJECT 2.8

Server2 registers on Server1 with SIP ID 1121.

Registration is OK.

Server2 outgoing calls are OK.

INVITE, unauthorized, INVITE with password, OK, RINGING,...

Troubles with incoming calls / incoming INVITE's .

I can not identify endpoint by IP, I have multiple registrations on the
same Server1.

As far as I understood, res_pjsip_endpoint_identifier_user match
endpoint by "From" header, so it will not match also.

match_headers also seems useless (not able to match "INVITE" string,
just headers like "TO:").

Is there any way to match incoming INVITE calls ? (also OPTIONS, NOTIFY,
... packets)

It should be a typical scenario, but it does not work...

Is there any way to make it working ?
Outbound registration provides the line option[1] which can be used to 
differentiate traffic in regards to different outbound registrations. It 
requires the remote server to adhere to the SIP RFC and report back some data 
we give in our Contact, so you have to test it and see if it works.

[1] 
https://blogs.asterisk.org/2016/01/27/the-pjsip-outbound-registration-line-option/

Tried already.

"line" is good, but not perfect.

Every time I restart asterisk, it will generate new random string for ";line=".

So, every time I restart asterisk, registrar (Server1) will save one more contact in it's database.

Some will remove obsolete contacts, but some will not.

For example, FreePBX will not remove obsolete contacts, if max_contacts specified (FreePBX will set rewrite_contact=no in this case).

So, after a number of Asterisk restarts, FreePBX will reject new registrations, as max_contacts is reached.

Unfortunately, "line" does not save random between restarts.

It's also unable to specify "random" value in pjsip.conf.


I'm thinking to patch res_pjsip_outbound_registration to add this feature.

Am I wrong and  there is another way ?

It's also a security hole, as anybody can generate INVITE with ";line=random" from any IP address !

res_pjsip_outbound_registration will only match "line", but will not take care about source IP, ...


Is there any more clear way to identify incoming INVITE/OPTIONS packets ?

Not very familliar with SIP, not sure, how should it be done.

-- 
_____________________________________________________________________
-- Bandwidth and Colocation Provided by http://www.api-digital.com --

Check out the new Asterisk community forum at: https://community.asterisk.org/

New to Asterisk? Start here:
      https://wiki.asterisk.org/wiki/display/AST/Getting+Started

asterisk-users mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-users

Reply via email to