SIP trunk registration, Authorization URI format wrong

I have a carrier, that we are having a difficult resistering with. They are expecting the atuthorization URI="sip: field to have the username in it to register. I have not been able to figure out how to modify this. Below are the samples from their server is seeing.
I’ve tried with the registration string and in other places to no avail. Initially I think we have it right, but maybe they have an issue with the credentials?

What we see

User-Agent: FPBX-14.0.1.24(13.18.4)
Authorization: Digest username=“xxxxxxxxxxxxx”, realm=“BroadWorks”, algorithm=MD5, uri=“sip:yyyyyyy.yyyyyyyy.yyy”, nonce=“BroadWorksXjdz2vkcuTt93zfsBW”, response=“c98c833e36336ee86fc90fcc435cdee3”, qop=auth, cnonce=“0f167952”, nc=000000

Should be

User-Agent: FPBX-14.0.1.24(13.18.4)
Authorization: Digest username=“xxxxxxxxxx”, realm=“BroadWorks”, algorithm=MD5, uri=“sip:[email protected]”,` nonce=“BroadWorksXjdz2vkcuTt93zfsBW”, response=“c98c833e36336ee86fc90fcc435cdee3”, qop=auth, cnonce=“0f167952”, nc=000000

The sip.conf documentation gives you some options. You might need to adjust your registration string to include user@domain instead of just the user part.

;----------------------------------------- OUTBOUND SIP REGISTRATIONS ------------------------
; Asterisk can register as a SIP user agent to a SIP proxy (provider)
; Format for the register statement is:
; register => [peer?][transport://]user[@domain][:secret[:authuser]]@host[:port][/extension][~expiry]
;
;
;
; domain is either
; - domain in DNS
; - host name in DNS
; - the name of a peer defined below or in realtime
; The domain is where you register your username, so your SIP uri you are registering to
; is username@domain

It’s still not including the userid/extension in the authorization: uri="sip: field.

The freepbx site is clipping string that I am using. I’ve removed the private info, the format is as used.

userID@FQDN:password:[email protected]:port_number/UserID

Including the username in the uri tag of the Authorization header would violate the RFCs, unless it were also included in the actual URI, e.g.

REGISTER sip:[email protected]

instead of the usual

REGISTER sip:provider.com

Do you have a working example of registration to this provider (on another PBX, device, softphone, SIP app, etc.)? If so, take a close look at the outbound REGISTER request.

If the username is indeed required in the request line, I suggest you try setting it up as a pjsip trunk; just put

sip:[email protected]:5060

into the Server URI field.

Thank for the detail.

I thought that was the case, I could see the username in the the authorization request through wireshark. Formatted as you specified, was what I was seeing. It turns out the carrier’s tech’s were incorrect… Although it was specified that way in the register string, which I corrected from what they told me.

I did have to correct the register strings they provided, and they were actually blcoking the registration for some reason. It Now looks great!

Thanks!

This topic was automatically closed 365 days after the last reply. New replies are no longer allowed.