Summary: | ASTERISK-26256: [patch] SIP/SDP origin (o=) contains brackets with IP6 | ||
Reporter: | Alexander Traud (traud) | Labels: | |
Date Opened: | 2016-08-02 03:09:44 | Date Closed: | 2016-08-02 15:15:05 |
Priority: | Minor | Regression? | |
Status: | Closed/Complete | Components: | Resources/res_pjsip |
Versions: | 13.10.0 | Frequency of Occurrence | |
Related Issues: | |||
Environment: | Attachments: | ( 0) IP6_origin_without_brackets.patch | |
Description: | With the SIP channel driver _chan_pjsip_, an SDP message contains brackets when IPv6 is used as transport. This is rejected by several VoIP clients and no call can be established. The SIP channel driver _chan_sip_ does not face this issue.
*Steps to reproduce* # Asterisk chan_pjsip enabled for IPv6 (compiled, configured) # Asterisk pjsip.conf: Endpoint’s media_address is empty (default) # Linphone iOS » Options » Settings » Network » Allow IPv6 # Linphone iOS calls an internal extension, for example the Echo Test *Expected results* In SDP origin (o=), Asterisk answers the SIP-INVITE with an IP6 address without brackets, because of [RFC 2327|https://tools.ietf.org/html/rfc3266#section-4]. That is the same behavior as _chan_sip_. The original PJSIP does not send brackets natively either: [IPv6 Address Representation in PJSIP…|https://trac.pjsip.org/repos/wiki/IPv6] *Actual results* In SDP origin (o=), Asterisk answers the SIP-INVITE with an IP6 address with square brackets. *Notes* Although RFC 3266 is obsolete, I have one SIP/SDP/IP6 implementation which conforms to that because it was released before [RFC 4566|https://tools.ietf.org/html/rfc4566#section-5.2] (June 2006). Go figure! Even in in RFC 4566, I am not aware of a statement which allows brackets in unicast-addresses. Although VoIP/SIP clients should accept brackets in the o= and c= lines anyway, Linphone (tested: 3.13.9 for Apple iOS) and Nokia Mobile Phones with Symbian (tested: [Nokia S60 3rd Edition|http://www.gsmarena.com/nokia_e61-1322.php] from 2006 and [Nokia Belle Feature Pack 2|http://www.gsmarena.com/nokia_700-4021.php] from 2012) do not. Those clients are not able to establish a call because of brackets in the o= line. This issue was present since the introduction of chan_pjsip. One workaround is to specify ‘media_address’ with the [FQDN|https://en.wikipedia.org/wiki/Fully_qualified_domain_name] for each endpoint in _pjsip.conf_. | ||
Comments: |