PJSIP 407 error only with Asterisk

Ops, you’re right

:smiley: :smiley: :smiley:

However, I’m still in the same point. For some reason it rejects the Asterisk INVITE. Honestly, I’m starting to be out of ideas. Maybe is not a SIP problem, but some filter they use to exclude Asterisk PBXs?

Just for summarize the whole process between Zoiper client (working) and Asterisk (not working):


REGISTER Zoiper:

REGISTER sip:ims.mnc010.mcc208.3gppnetwork.org;transport=UDP SIP/2.0
Via: SIP/2.0/UDP 78.78.78.78:47928;branch=z9hG4bK-d8754z-6280a857ae291edf-1---d8754z-;rport
From: <sip:+33666666666@ims.mnc010.mcc208.3gppnetwork.org;transport=UDP>;tag=0ca89c39
To: <sip:+33666666666@ims.mnc010.mcc208.3gppnetwork.org;transport=UDP>
Contact: <sip:+33666666666@78.78.78.78:47928;rinstance=857803695ad10874;transport=UDP>

Max-Forwards: 70
Call-ID: MDVmZTRiNDI3YWFiZTIwNGI3ZjhiYzQxMGY0MmY5MmE.
CSeq: 2 REGISTER
Expires: 3600
Allow: INVITE, ACK, CANCEL, BYE, NOTIFY, REFER, MESSAGE, OPTIONS, INFO, SUBSCRIBE
Supported: replaces, norefersub, extended-refer, timer, X-cisco-serviceuri
User-Agent: Z 3.3.25608 r25552
Authorization: Digest username="NDI0666666666.MPY.THD@sfr.fr",realm="sfr.fr",nonce="b7c9036dbf3054a6125f7c5ea940e9703dc8f84c1508",uri="sip:ims.mnc010.mcc208.3gppnetwork.org;transport=UDP",response="4a36c25e92deba05e813464af472d2ff",cnonce="66d8c6bed627c8d2947fa2ec4dac8d18",nc=00000001,qop=auth,algorithm=MD5,opaque="ALU:QbkRBthOEgEQAkgFAQ0NW0YBBBpdGQIRQkZbHxoLVwknMG0qIDJ9fXlze3c1Yy42OG9j"
Allow-Events: presence, kpml
Content-Length: 0

REGISTER Asterisk:

REGISTER sip:ims.mnc010.mcc208.3gppnetwork.org SIP/2.0
Via: SIP/2.0/UDP 78.78.78.78:5060;rport;branch=z9hG4bKPj4e940e16-863e-4a15-baeb-ed95f9b6145f
From: <sip:+33666666666@ims.mnc010.mcc208.3gppnetwork.org>;tag=615c936b-4c8e-4ff4-a551-1a161cf84993
To: <sip:+33666666666@ims.mnc010.mcc208.3gppnetwork.org>
Contact: <sip:+33666666666@78.78.78.78:5060>

Call-ID: ae41511b-d006-45d4-85f9-a976a9a4c204
CSeq: 60275 REGISTER
Expires: 3600
Allow: OPTIONS, REGISTER, SUBSCRIBE, NOTIFY, PUBLISH, INVITE, ACK, BYE, CANCEL, UPDATE, PRACK, MESSAGE, REFER
Max-Forwards: 70
User-Agent: otherIAD - rNB6VAC-MAIN-R4.0.44j-36091
Authorization: Digest username="NDI0666666666.MPY.THD@sfr.fr", realm="sfr.fr", nonce="b7c9036dbf3054aea940e976125faed03dc8f84c2308", uri="sip:ims.mnc010.mcc208.3gppnetwork.org", response="8a283510bceabab5764549259fbb5f19", algorithm=MD5, cnonce="6106c2e9-eed2-4426-80fc-c38f9764eb81", opaque="ALU:QbkRBthOEgEQAkgFAQ0NWEYBBBpdGQIRQkRbHxoLVwknMG0qIDJ9fXlze3c1Yy42OG9gYw__", qop=auth, nc=00000001
Content-Length:  0

In the case of REGISTERs:

  • Both receive a 200 OK

INVITE Zoiper

INVITE sip:0777777777@ims.mnc010.mcc208.3gppnetwork.org;transport=UDP SIP/2.0
Via: SIP/2.0/UDP 78.78.78.78:47928;branch=z9hG4bK-d8754z-e4c573387752243f-1---d8754z-;rport
From: <sip:+33666666666@ims.mnc010.mcc208.3gppnetwork.org;transport=UDP>;tag=ed83613f
To: <sip:0777777777@ims.mnc010.mcc208.3gppnetwork.org;transport=UDP>
Contact: <sip:+33666666666@78.78.78.78:47928;transport=UDP>

Call-ID: Y2Q0ZjEwNzYxMWI0MDNjOGU0YTc3OTg5OTE2N2MyMmE.
CSeq: 1 INVITE
Max-Forwards: 70
Allow: INVITE, ACK, CANCEL, BYE, NOTIFY, REFER, MESSAGE, OPTIONS, INFO, SUBSCRIBE
Content-Type: application/sdp
Supported: replaces, norefersub, extended-refer, timer, X-cisco-serviceuri
User-Agent: Z 3.3.25608 r25552
Content-Length: 243
Allow-Events: presence, kpml

v=0
o=Z 0 0 IN IP4 78.78.78.78
s=Z
c=IN IP4 78.78.78.78
t=0 0
m=audio 8000 RTP/AVP 3 110 8 0 98 101
a=rtpmap:110 speex/8000
a=rtpmap:98 iLBC/8000
a=fmtp:98 mode=20
a=rtpmap:101 telephone-event/8000
a=fmtp:101 0-15
a=sendrecv

INVITE Asterisk:

INVITE sip:0777777777@ims.mnc010.mcc208.3gppnetwork.org SIP/2.0
Via: SIP/2.0/UDP 78.78.78.78:5060;rport;branch=z9hG4bKPj11b22aa0-8cd6-452c-b471-1c163c47354e
From: <sip:+33666666666@ims.mnc010.mcc208.3gppnetwork.org>;tag=36c7da17-5529-470b-9678-2795f43ba63a
To: <sip:0777777777@ims.mnc010.mcc208.3gppnetwork.org>
Contact: <sip:+33666666666@78.78.78.78:5060>

Call-ID: 89dfc4ca-2e96-461d-ac45-fe9546fbcf8c
CSeq: 29040 INVITE
Max-Forwards: 70
Allow: OPTIONS, REGISTER, SUBSCRIBE, NOTIFY, PUBLISH, INVITE, ACK, BYE, CANCEL, UPDATE, PRACK, MESSAGE, REFER
Content-Type: application/sdp
Supported: 100rel, timer, replaces, norefersub
User-Agent: otherIAD - rNB6VAC-MAIN-R4.0.44j-36091
Content-Length:   289
Session-Expires: 1800
Min-SE: 90

v=0
o=- 1110039353 1110039353 IN IP4 78.78.78.78
s=Asterisk
c=IN IP4 78.78.78.78
t=0 0
m=audio 17780 RTP/AVP 8 0 9 101
a=rtpmap:8 PCMA/8000
a=rtpmap:0 PCMU/8000
a=rtpmap:9 G722/8000
a=rtpmap:101 telephone-event/8000
a=fmtp:101 0-16
a=ptime:20
a=maxptime:150
a=sendrecv

INVITE legacy ISP phone (just for some extra working reference):

INVITE sip:0777777777@ims.mnc010.mcc208.3gppnetwork.org;user=phone SIP/2.0
Via: SIP/2.0/UDP 78.78.78.78:5060;branch=z9hG4bK15150f3a
From: "+33666666666" <sip:+33666666666@ims.mnc010.mcc208.3gppnetwork.org;user=phone>;tag=16DA4891
To: <sip:0777777777@ims.mnc010.mcc208.3gppnetwork.org;user=phone>
User-Agent: otherIAD - rNB6VAC-MAIN-R4.0.44j-36091
P-Preferred-Identity: <sip:+33666666666@ims.mnc010.mcc208.3gppnetwork.org;user=phone>
Call-ID: CBCBCBCBCBCBCB@78.78.78.78
CSeq: 1 INVITE
Allow: INVITE, ACK, BYE, CANCEL, REFER, NOTIFY, SUBSCRIBE, REGISTER, UPDATE
Max-Forwards: 70
Contact: <sip:+33666666666@78.78.78.78:5060;user=phone>
Content-Type: application/sdp
Content-Length: 279

v=0
o=+33666666666 1629798315 1629798316 IN IP4 78.78.78.78
s=-
c=IN IP4 78.78.78.78
t=0 0
m=audio 35530 RTP/AVP 8 0 18 101
a=rtpmap:8 PCMA/8000
a=rtpmap:0 PCMU/8000
a=rtpmap:18 G729/8000
a=rtpmap:101 telephone-event/8000
a=fmtp:101 0-11
a=sendrecv
a=ptime:20

Relevant stuff

  • The tag inFrom is larger in Asterisk
  • Call-ID doesn’t seem the cause (completly different in ISP legacy)
  • transport=UDP not present in legacy ISP, so discarded too
  • rport tag present in Zoiper. Discarded
  • CSeq? Asterisk doesn’t use 1 as first number
  • Allow? PRACK is only in Asterisk
  • User-Agent cloned from ISP legacy but nothing changes
  • Extra field Min-SE
  • Order of the fields? Would be a very big wtf (I’ve sorted them for better reading)