<!DOCTYPE html><html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"></head><body><div>Hi,</div><div><br></div><div>Should I try something like</div><div><br></div><div> nat_uac_test(diff-ip-src-contact || private-contact || diff-ip-src-via || diff-port-src-via)?</div><div><br></div><div>Any ideas?</div><div><br></div><div>Regards,</div><div><br></div><div>Ronald</div><div><br></div><div><br></div><p>December 15, 2023 at 4:38 PM, <a href="mailto:rvg@rvgeerligs.nl" target="_blank" tabindex="-1">rvg@rvgeerligs.nl</a> wrote:</p><blockquote><div><div>Hi</div><div><br></div><div>I use opensips 3.4 and I have NAT problems with 2 devices behind the same NAT (called party hears nothing).</div><div>The A party is softphone on iPhone (linphone) the B (called)party is Polycom310. The other way around works (Polycom calls linphone).</div><div><br></div><div>Actually I tested this in two different NAT locations. </div><div>The first location repeatedly works. The second location gives the problem. Both locations have changing public IP addresses and DHCP on 192.168 network.</div><div>Both locations have one FX number assigned to them. No SIP ALG active. </div><div><br></div><div>I use nat_uac_test(diff-ip-src-contact).</div><div><br></div><div>There is a table:</div><div>1.5.5.  nat_uac_test(flags)</div><div>Tries to guess if client's request originated behind a nat. The parameter determines what heuristics is used.</div><div><br></div><div>Meaning of the flags (string) parameter is as follows:</div><div><br></div><div>private-contact - (old 1 flag) Contact header field is searched for occurrence of RFC1918 / RFC6598 addresses.</div><div><br></div><div>diff-ip-src-via - (old 2 flag) the "received" test is used: address in Via is compared against source IP address of signaling</div><div><br></div><div>private-via - (old 4 flag) Top Most VIA is searched for occurrence of RFC1918 / RFC6598 addresses</div><div><br></div><div>private-sdp - (old 8 flag) SDP is searched for occurrence of RFC1918 / RFC6598 addresses</div><div><br></div><div>diff-port-src-via - (old 16 flag) test if the source port is different from the port in Via</div><div><br></div><div>diff-ip-src-contact - (old 32 flag) address in Contact is compared against source IP address of signaling. <<<<</div><div><br></div><div>diff-port-src-contact - (old 64 flag) Port in Contact is compared against source port of signaling <<<<</div><div><br></div><div>carrier-grade-nat - (old 128 flag) also include RFC 6333 addresses in the checks for ct, via and sdp flags.</div><div><br></div><div>A CSV of the above flags can be provided, the test returns true if any of the tests identified a NAT.</div><div><br></div><div><br></div><div>Currently I use old flag 32.</div><div><br></div><div>I read that using the equivalent of 19 might help but I dont see that in the table.</div><div><br></div><div><br></div><div>Any advice is appreciated.</div><div><br></div><div>Regards,</div><div><br></div><div><br></div><div>Ronald Geerligs</div><div><br></div><div><br></div><div><br></div><div><br></div><div><br></div></div></blockquote><div><br></div></body></html>