Leonid Fainshtein
2018-10-28 11:33:37 UTC
Hi,
What is the reason that the OPTION requests that are sent as an endpoint
"qualify" messages contain the endpoint IP in the "From" header field even
when the endpoint was registered with domain name?
In the example below you can see a REGISTER request with "
guest130.in.example.com". But the OPTION request contains the endpoint IP
address: 192.168.6.130.
<--- Received SIP request (742 bytes) from UDP:192.168.0.178:5060 --->
REGISTER sip:guest130.in.example.com SIP/2.0
Via: SIP/2.0/UDP 192.168.0.178;rport;branch=z9hG4bKgtecduov
Max-Forwards: 70
To: "2000" <sip:***@guest130.in.example.com>
From: "2000" <sip:***@guest130.in.example.com>;tag=bfxca
Call-ID: ***@e540.in.example.com
CSeq: 106 REGISTER
Contact: <sip:***@192.168.0.178>;expires=3600
Authorization: Digest
username="2000",realm="asterisk",nonce="1540725445/cec702219f22cf0348eba188cc630606",uri="sip:
guest130.in.example.com
",response="d4d0b238240a3c7c219e5c5b2f3d04d4",algorithm=md5,cnonce="e9c020189d",opaque="1051c93944cc4ec4",qop=auth,nc=00000001
Allow:
INVITE,ACK,BYE,CANCEL,OPTIONS,PRACK,REFER,NOTIFY,SUBSCRIBE,INFO,MESSAGE
User-Agent: Twinkle/1.10.1
Content-Length: 0
-- Added contact 'sip:***@192.168.0.178:5060' to AOR '2000' with
expiration of 3600 seconds
<--- Transmitting SIP response (445 bytes) to UDP:192.168.0.178:5060 --->
SIP/2.0 200 OK
Via: SIP/2.0/UDP
192.168.0.178;rport=5060;received=192.168.0.178;branch=z9hG4bKgtecduov
Call-ID: ***@e540.in.example.com
From: "2000" <sip:***@guest130.in.example.com>;tag=bfxca
To: "2000" <sip:***@guest130.in.example.com>;tag=z9hG4bKgtecduov
CSeq: 106 REGISTER
Date: Sun, 28 Oct 2018 11:17:25 GMT
Contact: <sip:***@192.168.0.178:5060>;expires=3599
Server: FPBX-14.0.1.24(13.18.4)
Content-Length: 0
<--- Transmitting SIP request (429 bytes) to UDP:192.168.0.178:5060 --->
OPTIONS sip:***@192.168.0.178:5060 SIP/2.0
Via: SIP/2.0/UDP 192.168.6.130:5060
;rport;branch=z9hG4bKPjc71c80bc-ca08-4cf6-8217-acd4efd2a315
From: <sip:***@192.168.6.130>;tag=900097b8-a32d-448e-941f-47d3294d757e
To: <sip:***@192.168.0.178>
Contact: <sip:***@192.168.6.130:5060>
Call-ID: e68ce015-59f1-4608-aab1-d7faa2356752
CSeq: 61277 OPTIONS
Max-Forwards: 70
User-Agent: FPBX-14.0.1.24(13.18.4)
Content-Length: 0
<--- Received SIP response (558 bytes) from UDP:192.168.0.178:5060 --->
SIP/2.0 200 OK
Via: SIP/2.0/UDP 192.168.6.130:5060
;received=192.168.6.130;rport=5060;branch=z9hG4bKPjc71c80bc-ca08-4cf6-8217-acd4efd2a315
To: <sip:***@192.168.0.178>;tag=wjyqq
From: <sip:***@192.168.6.130>;tag=900097b8-a32d-448e-941f-47d3294d757e
Call-ID: e68ce015-59f1-4608-aab1-d7faa2356752
CSeq: 61277 OPTIONS
Accept: application/sdp
Accept-Encoding: identity
Accept-Language: en
Allow:
INVITE,ACK,BYE,CANCEL,OPTIONS,PRACK,REFER,NOTIFY,SUBSCRIBE,INFO,MESSAGE
Server: Twinkle/1.10.1
Supported: replaces,norefersub,100rel
Content-Length: 0
The interesting points are:
* INVITE and NOTIFY requests are sent with domain name and the IP is used
in the OPTIONS requests only
* the same behavior I see in case of chan_sip and pjsip.
Thank you,
Leonid
What is the reason that the OPTION requests that are sent as an endpoint
"qualify" messages contain the endpoint IP in the "From" header field even
when the endpoint was registered with domain name?
In the example below you can see a REGISTER request with "
guest130.in.example.com". But the OPTION request contains the endpoint IP
address: 192.168.6.130.
<--- Received SIP request (742 bytes) from UDP:192.168.0.178:5060 --->
REGISTER sip:guest130.in.example.com SIP/2.0
Via: SIP/2.0/UDP 192.168.0.178;rport;branch=z9hG4bKgtecduov
Max-Forwards: 70
To: "2000" <sip:***@guest130.in.example.com>
From: "2000" <sip:***@guest130.in.example.com>;tag=bfxca
Call-ID: ***@e540.in.example.com
CSeq: 106 REGISTER
Contact: <sip:***@192.168.0.178>;expires=3600
Authorization: Digest
username="2000",realm="asterisk",nonce="1540725445/cec702219f22cf0348eba188cc630606",uri="sip:
guest130.in.example.com
",response="d4d0b238240a3c7c219e5c5b2f3d04d4",algorithm=md5,cnonce="e9c020189d",opaque="1051c93944cc4ec4",qop=auth,nc=00000001
Allow:
INVITE,ACK,BYE,CANCEL,OPTIONS,PRACK,REFER,NOTIFY,SUBSCRIBE,INFO,MESSAGE
User-Agent: Twinkle/1.10.1
Content-Length: 0
-- Added contact 'sip:***@192.168.0.178:5060' to AOR '2000' with
expiration of 3600 seconds
<--- Transmitting SIP response (445 bytes) to UDP:192.168.0.178:5060 --->
SIP/2.0 200 OK
Via: SIP/2.0/UDP
192.168.0.178;rport=5060;received=192.168.0.178;branch=z9hG4bKgtecduov
Call-ID: ***@e540.in.example.com
From: "2000" <sip:***@guest130.in.example.com>;tag=bfxca
To: "2000" <sip:***@guest130.in.example.com>;tag=z9hG4bKgtecduov
CSeq: 106 REGISTER
Date: Sun, 28 Oct 2018 11:17:25 GMT
Contact: <sip:***@192.168.0.178:5060>;expires=3599
Server: FPBX-14.0.1.24(13.18.4)
Content-Length: 0
<--- Transmitting SIP request (429 bytes) to UDP:192.168.0.178:5060 --->
OPTIONS sip:***@192.168.0.178:5060 SIP/2.0
Via: SIP/2.0/UDP 192.168.6.130:5060
;rport;branch=z9hG4bKPjc71c80bc-ca08-4cf6-8217-acd4efd2a315
From: <sip:***@192.168.6.130>;tag=900097b8-a32d-448e-941f-47d3294d757e
To: <sip:***@192.168.0.178>
Contact: <sip:***@192.168.6.130:5060>
Call-ID: e68ce015-59f1-4608-aab1-d7faa2356752
CSeq: 61277 OPTIONS
Max-Forwards: 70
User-Agent: FPBX-14.0.1.24(13.18.4)
Content-Length: 0
<--- Received SIP response (558 bytes) from UDP:192.168.0.178:5060 --->
SIP/2.0 200 OK
Via: SIP/2.0/UDP 192.168.6.130:5060
;received=192.168.6.130;rport=5060;branch=z9hG4bKPjc71c80bc-ca08-4cf6-8217-acd4efd2a315
To: <sip:***@192.168.0.178>;tag=wjyqq
From: <sip:***@192.168.6.130>;tag=900097b8-a32d-448e-941f-47d3294d757e
Call-ID: e68ce015-59f1-4608-aab1-d7faa2356752
CSeq: 61277 OPTIONS
Accept: application/sdp
Accept-Encoding: identity
Accept-Language: en
Allow:
INVITE,ACK,BYE,CANCEL,OPTIONS,PRACK,REFER,NOTIFY,SUBSCRIBE,INFO,MESSAGE
Server: Twinkle/1.10.1
Supported: replaces,norefersub,100rel
Content-Length: 0
The interesting points are:
* INVITE and NOTIFY requests are sent with domain name and the IP is used
in the OPTIONS requests only
* the same behavior I see in case of chan_sip and pjsip.
Thank you,
Leonid