<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
<html><head><meta name="qrichtext" content="1" /><style type="text/css">
p, li { white-space: pre-wrap; }
</style></head><body style=" font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;">
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; -qt-user-state:0;">While configuring my script for rtpengine I got a rather confusing result. The test involved a UA tethered to a phone with only IPV4 availble. The test was a call to a UA registered with an IPV6 address. The call was answered successfully but there was no media. A sniffer at the rtpengine host ( also opensips ) revealed the following --</p>
<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; "> </p>
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; -qt-user-state:0;">continuous binding request, no media</p>
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; -qt-user-state:0;">wireless IPV4 -> rtpengine in port -> rtpengine out port -> IPV6 -> AB:CD::</p>
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; -qt-user-state:0;">The destination address was obviously bogus. Since the address was so short on a hunce I converted it to decimal. It turns out that the binding request was being sent to the NAT's public IPV4 address but as an IPV6 packet.</p>
<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; "> </p>
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; -qt-user-state:0;">The signalling looked. Is this a misconfiguration? Rtpengine is configured in bridging mode with an IPV4 address and an IPV6 address.</p>
<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; "> </p>
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; -qt-user-state:0;"><span style=" font-family:'monospace'; color:#000000; background-color:#ffffff;">INVTEe </span><span style=" font-family:'monospace';"><br />                        <br />                       if !rtpengine_offer("in-iface=ipv4 out-iface=ipv6") <br />                               drop; <br />200 OK <br />           <br />                       rtpengine_answer(); <br /><br />INVITE altered by rtpengine, callee will send media to rtpengine ipv6 address <br /><br />m=audio 35010 UDP/TLS/RTP/SAVPF 111 103 104 9 0 8 106 105 13 110 112 113 126 <br />c=IN IP6 2001::abcd    obfuscated <br />a=candidate:4242527773 1 udp 2122260223 192.168.42.184 46251 typ host generation 0 network-id 1 network-cost 50 <br />a=candidate:810740110 1 udp 1686052607 209.52.88.174 19506 typ srflx raddr 192.168.42.184 rport 46251 generation 0 network-id 1 network-cost 50 <br />a=candidate:2992384749 1 tcp 1518280447 192.168.42.184 9 typ host tcptype active generation 0 network-id 1 network-cost 50 <br /><br />200 OK altered by rtpengine, caller will send to rtpengine ipv4 address via one-to-one NAT <br /><br />m=audio 35000 UDP/TLS/RTP/SAVPF 111 103 104 9 0 8 106 105 13 110 112 113 126 <br />c=IN IP4 10.20.30.40 <br />a=candidate:704553097 1 udp 2122260223 192.168.1.3 51091 typ host generation 0 network-id 1 <br />a=candidate:2158047068 1 udp 1686052607 10.20.30.40 51091 typ srflx raddr 192.168.1.3 rport 51091 generation 0 network-id 1 <br />a=candidate:1736268921 1 tcp 1518280447 192.168.1.3 9 typ host tcptype active generation 0<br /></span></p>
<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; "> </p>
<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; "> </p>
<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; "> </p></body></html>