johanlantz / pj-nat64

Helpers for NAT64 handling pending official solutions from pjsip
MIT License
16 stars 4 forks source link

Failed parsing outgoing INVITE request for some networks #8

Closed Chetan9007 closed 3 years ago

Chetan9007 commented 3 years ago

We are not able to make a call to some networks on their LTE network.

Call-ID: CwFphy4PUdJxcLeCutjML81MSAB2Aj3a CSeq: 5523 INVITE Route: <sip:udp9000.azhsbc.solint.net:9000;transport=udp;lr> Allow: PRACK, INVITE, ACK, BYE, CANCEL, UPDATE, INFO, SUBSCRIBE, NOTIFY, REFER, MESSAGE, OPTIONS Supported: replaces, 100rel, timer, norefersub Session-Expires: 7200 Min-SE: 90 User-Agent: CrexmoUA iOS v3.1.3 Proxy-Authorization: Digest username="3141", realm="486709.crexendo.com", nonce="39689fa8-22e6-450a-83b9-e4406d25a4af", uri="sip:3000@486709.crexendo.com", response="92edb72701fc29ab2acf82a539de1145", algorithm=MD5, cnonce="BzzyCmhWkRkL4esDmhsgcFgBQIyVR9Ti", qop=auth, nc=00000001 Content-Type: application/sdp Content-Length: 432

v=0 o=- 3823177254 3823177254 IN IP4 192.168.1.1 s=pjmedia b=AS:117 t=0 0 a=X-nat:0 m=audio 11780 RTP/AVP 0 125 97 105 101 c=IN IP4 192.168.1.1 b=TIAS:96000 a=rtcp:11781 IN IP4 192.168.1.1 a=sendrecv a=rtpmap:0 PCMU/8000 a=rtpmap:125 opus/48000/2 a=fmtp:125 useinbandfec=1 a=rtpmap:97 iLBC/8000 a=fmtp:97 mode=30 a=rtpmap:105 SILK/8000 a=fmtp:105 useinbandfec=0 a=rtpmap:101 telephone-event/8000 a=fmtp:101 0-16

ipv6_mod_on_tx Outgoing INVITE or 200 OK. If it contains IPv6 addresses, we need to change to ipv4 **Outgoing INVITE or 200 with IPv6 address***** Scanner syntax error at error: Parsing of the outgoing INVITE/200 OK failed at . Leave incoming buffer as is SIPUA_CallStateChanged sipstate=6 status=408 IPUA call state change from 1 to 7 on 0x<CallLogWrapper: 0x283130480>

This is what we are getting in logs. This happens only in some of the network providers (e.g TMobile) with rest of the network it works fine. Please help me to understand what went wrong.

johanlantz commented 3 years ago

This code was developed over 5 years ago and afaik pjsip does have nat64 support these days so I would check there first.

That said, this seems like an ipv4 sdp so there will be no rewriting frmo ipv6 to ipv4.

If you still think something is strange with the rewriting you would have to dig into the code.