<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="https://devzone.nordicsemi.com/cfs-file/__key/system/syndication/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>nRF2840: IPv6 over BLE to IPv4 internet via NAT64</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/24834/nrf2840-ipv6-over-ble-to-ipv4-internet-via-nat64</link><description>Hello, 
 I am really new to the field, I apologise, if things I am saying do not make sense, explanations and corrections appreciated :) I am trying to reach IPv4 internet from my PCA10056 nRF52840 node which is running IoT icmp example with adapted</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Mon, 18 Sep 2017 15:01:47 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/24834/nrf2840-ipv6-over-ble-to-ipv4-internet-via-nat64" /><item><title>RE: nRF2840: IPv6 over BLE to IPv4 internet via NAT64</title><link>https://devzone.nordicsemi.com/thread/97793?ContentTypeID=1</link><pubDate>Mon, 18 Sep 2017 15:01:47 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:cdda4abb-562b-4d98-a4fb-2f31a3d67d4f</guid><dc:creator>Piotr Szkotak</dc:creator><description>&lt;p&gt;Indeed, you may need to add another address which is outside of the nat64 64bit long prefix scope.&lt;/p&gt;
&lt;p&gt;In case of futher issues I would first check the routing table and then traffic on the bt0, nat64 and the ethernet interface with the tcpdump.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF2840: IPv6 over BLE to IPv4 internet via NAT64</title><link>https://devzone.nordicsemi.com/thread/97792?ContentTypeID=1</link><pubDate>Mon, 18 Sep 2017 14:53:32 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:359d6b5f-fde7-4975-b92d-f5e3367f3b60</guid><dc:creator>BoKarolis</dc:creator><description>&lt;p&gt;The suggested tayga configuration does not work, if you are using 64:ff9b::/96 prefix, you need to set ipv6 address for tayga.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF2840: IPv6 over BLE to IPv4 internet via NAT64</title><link>https://devzone.nordicsemi.com/thread/97791?ContentTypeID=1</link><pubDate>Mon, 18 Sep 2017 14:50:51 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:9bc65f50-1351-48be-8352-00e808e6afd0</guid><dc:creator>Piotr Szkotak</dc:creator><description>&lt;p&gt;If you receive &amp;quot;no route&amp;quot; error I expect there is missing entry in the routing table.
I do not have the proper hardware on my desk at this moment, and I am not sure what exactly did you do. As the starting point I would set tayga.conf to:
tun-device nat64
ipv4-addr 192.168.64.1
prefix 64:ff9b::/96
data-dir /var/db/tayga&lt;/p&gt;
&lt;p&gt;Then I would clean current tayga database:
rm -r /var/db/tayga
mkdir -p /var/db/tayga/
touch /var/db/tayga/dynamic.map
ip link del dev nat64&lt;/p&gt;
&lt;p&gt;Then I would set it back again.
tayga --mktun
ip link set nat64 up
ip addr add 64:ff9b::1 dev nat64
ip addr add 64:ff9b::/64 dev nat64
ip route add 192.168.64.0/24 dev nat64
ip route add 64:ff9b::/64 dev nat64&lt;/p&gt;
&lt;p&gt;I would also set bt0 addr and add route to it.
ip addr add fdff:cafe:cafe:cafe::/64 dev bt0
ip route add fdff:cafe:cafe:cafe::/64 dev bt0&lt;/p&gt;
&lt;p&gt;Kind regards,
Piotr Szkotak&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF2840: IPv6 over BLE to IPv4 internet via NAT64</title><link>https://devzone.nordicsemi.com/thread/97794?ContentTypeID=1</link><pubDate>Mon, 18 Sep 2017 12:23:53 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:23fffc57-5ac3-413c-8882-34727c193734</guid><dc:creator>BoKarolis</dc:creator><description>&lt;p&gt;Hi, thanks for trying to help. On tcpdump nat64 interface there is nothing received with any of the prefixes. Using 64:ff9b::/96 I cannot even ping myself, as earlier, I am getting a &amp;quot;No route&amp;quot; error. I am not sure what should I set my tayga ipv6 address to, since I can&amp;#39;t use 64:ff9b:: prefix for it. I tried 2001:db8:7777::1, but even after adding it to nat64 interface it still does not work.&lt;/p&gt;
&lt;p&gt;I have tried with a TI device, and it works with 2004 prefix, hence this shouldn&amp;#39;t be the origin of the problem. As I said before, when I add a global ipv6 address to the bt0 interface it should use the global prefix, not the local one. This happens with the TI device, it uses the global address assigned and can communicate even over the internet without problems.&lt;/p&gt;
&lt;p&gt;Kind Regards,
Karolis&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF2840: IPv6 over BLE to IPv4 internet via NAT64</title><link>https://devzone.nordicsemi.com/thread/97795?ContentTypeID=1</link><pubDate>Mon, 18 Sep 2017 11:45:40 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:e1cd846d-4eec-4799-a023-9b8d3af48d46</guid><dc:creator>Piotr Szkotak</dc:creator><description>&lt;p&gt;Hi Karolis,&lt;/p&gt;
&lt;p&gt;I would say that using prefixes like 2003: and 2004: would couse you more trouble in the long run.
If it does not work with the 64:ff9b::/96 prefix for tayga it clearly means that there are more issues to solve not that the prefix is incorrect. I would strongly encourage you to stick to 64:ff9b::/96 for NAT64.&lt;/p&gt;
&lt;p&gt;Could you look at the tcpdump on the nat64 interface? Do you see packets coming from the bt0?&lt;/p&gt;
&lt;p&gt;Kind regards,
Piotr Szkotak&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF2840: IPv6 over BLE to IPv4 internet via NAT64</title><link>https://devzone.nordicsemi.com/thread/97796?ContentTypeID=1</link><pubDate>Mon, 11 Sep 2017 09:57:36 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:4f74f5e7-06a4-4978-8fb8-9030e982284f</guid><dc:creator>BoKarolis</dc:creator><description>&lt;p&gt;Hi, thanks for the answer, however this does not solve the problem. If I set the tayga prefix to 64:ff9b::/96 it asks me to set taygas ipv6 address and then I couldn&amp;#39;t manage setting the routing tables correctly to ping myself or anything. Hence I tried setting different prefixes to bt0 and tayga interfaces, as you suggested, 2003:db8:1:ffff::/96 for tayga and 2004:db8:1:ffff::1/64 for bt0. The thing is, that when I look at tcpdump on bt0 interface, the node is using it&amp;#39;s local fe80 address to ping google with nat64 prefix. &lt;code&gt;IP6 fe80::282:73ff:fe90:8a48 &amp;gt; 2003:db8:1:ffff::808:808: ICMP6, echo request, seq 2, length 18&lt;/code&gt;. And then my bt0 interface replies &lt;code&gt;fe80::ba27:ebff:fea0:1987 &amp;gt; fe80::282:73ff:fe90:8a48 : ICMP6, destination unreachable, beyond scope 2003:db8:1:ffff::808:808, source address fe80::282:73ff:fe90:8a48, length 66&lt;/code&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF2840: IPv6 over BLE to IPv4 internet via NAT64</title><link>https://devzone.nordicsemi.com/thread/97790?ContentTypeID=1</link><pubDate>Mon, 11 Sep 2017 09:12:03 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:c130b869-c3d3-4605-8aa5-ffe8aeb80fb4</guid><dc:creator>Piotr Szkotak</dc:creator><description>&lt;p&gt;Hi Karolis,&lt;/p&gt;
&lt;p&gt;It seems that you have selected the same prefix to address your bt network and for tayga to perform IPv6 to IPv4 translation. I would rather use well defined 64:ff9b::/96 prefix for tayga.&lt;/p&gt;
&lt;p&gt;Please look at the routing table. The most important entries I would expect to see there are:&lt;/p&gt;
&lt;p&gt;64:ff9b::/96                   ::                         U    1024 0     0 nat64&lt;/p&gt;
&lt;p&gt;2001:db8::/64                  ::                         U    256 0     0 bt0&lt;/p&gt;
&lt;p&gt;According to rfc3849 2001:db8 should serve documentation only, but lets leave it for now.&lt;/p&gt;
&lt;p&gt;Please also make sure that you have ipv4 and ipv6 forwarding enabled.&lt;/p&gt;
&lt;p&gt;I do not have much experience with tunnels or bridging with BT, so I cannot comment much on that.&lt;/p&gt;
&lt;p&gt;Regards,
Piotr&lt;/p&gt;
&lt;p&gt;Edit: Adding some commands.&lt;/p&gt;
&lt;p&gt;If you receive &amp;quot;no route&amp;quot; error I expect there is missing entry in the routing table.
I do not have the proper hardware on my desk at this moment, and I am not sure what exactly did you do. As the starting point I would set tayga.conf to:&lt;/p&gt;
&lt;p&gt;tun-device nat64&lt;/p&gt;
&lt;p&gt;ipv4-addr 192.168.64.1&lt;/p&gt;
&lt;p&gt;prefix 64:ff9b::/96&lt;/p&gt;
&lt;p&gt;data-dir /var/db/tayga&lt;/p&gt;
&lt;p&gt;Then I would clean current tayga database:&lt;/p&gt;
&lt;p&gt;rm -r /var/db/tayga&lt;/p&gt;
&lt;p&gt;mkdir -p /var/db/tayga/&lt;/p&gt;
&lt;p&gt;touch /var/db/tayga/dynamic.map&lt;/p&gt;
&lt;p&gt;ip link del dev nat64&lt;/p&gt;
&lt;p&gt;Then I would set it back again.&lt;/p&gt;
&lt;p&gt;tayga --mktun&lt;/p&gt;
&lt;p&gt;ip link set nat64 up&lt;/p&gt;
&lt;p&gt;ip addr add 64:ff9b::1 dev nat64&lt;/p&gt;
&lt;p&gt;ip addr add 64:ff9b::/64 dev nat64&lt;/p&gt;
&lt;p&gt;ip route add 192.168.64.0/24 dev nat64&lt;/p&gt;
&lt;p&gt;ip route add 64:ff9b::/64 dev nat64&lt;/p&gt;
&lt;p&gt;I would also set bt0 addr and add route to it.&lt;/p&gt;
&lt;p&gt;ip addr add fdff:cafe:cafe:cafe::/64 dev bt0&lt;/p&gt;
&lt;p&gt;ip route add fdff:cafe:cafe:cafe::/64 dev bt0&lt;/p&gt;
&lt;p&gt;Kind regards,
Piotr Szkotak&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF2840: IPv6 over BLE to IPv4 internet via NAT64</title><link>https://devzone.nordicsemi.com/thread/97789?ContentTypeID=1</link><pubDate>Fri, 08 Sep 2017 08:00:23 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:b5a27ff0-dbb2-4346-9135-126fedc7e6ba</guid><dc:creator>BoKarolis</dc:creator><description>&lt;p&gt;Hello Piotr,
Thank you for the informative comment, I have edited the question with the info you requested. I was monitoring bt0 interface where I can see the packets coming in. In the nat64 interface, nothing is received.
Regards,
Karolis&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF2840: IPv6 over BLE to IPv4 internet via NAT64</title><link>https://devzone.nordicsemi.com/thread/97788?ContentTypeID=1</link><pubDate>Thu, 07 Sep 2017 14:41:30 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:a558fea5-1880-4cad-84e6-bf65f3ffc419</guid><dc:creator>Piotr Szkotak</dc:creator><description>&lt;p&gt;Hi Karolis,&lt;/p&gt;
&lt;p&gt;It seems that you are close to getting it working.
Could you share the /etc/tayga.conf, and &amp;#39;ifconfig&amp;#39; (here we are interested in bt0 and tayga interfaces), &amp;#39;route -n -A inet6&amp;#39;?&lt;/p&gt;
&lt;p&gt;Please hide the sensitive data (especially public/global IPv4 and IPv6 addresses, &amp;#39;ifconfig&amp;#39; for interfaces other than &amp;#39;bt0&amp;#39; or tayga interface.&lt;/p&gt;
&lt;p&gt;On which interface where you running the tcpdump? You can run it on the tayga interface to see it IPv6 packets from bt0 reach it.&lt;/p&gt;
&lt;p&gt;We are successfully used tayga in our Thread Border Router for some time now, you can take a look at the init_nat64() function:
&lt;a href="https://github.com/NordicSemiconductor/thread_border_router/blob/master/init_files/usr/local/sbin/thread_border_router"&gt;github.com/.../thread_border_router&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;We use non-standard prefix in the following form:
prefix_nat48=&amp;quot;fd00:0064:0123::&amp;quot;
prefix_nat64=&amp;quot;fd00:0064:0123:4567::&amp;quot;&lt;/p&gt;
&lt;p&gt;Kind regards,
Piotr Szkotak&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF2840: IPv6 over BLE to IPv4 internet via NAT64</title><link>https://devzone.nordicsemi.com/thread/97787?ContentTypeID=1</link><pubDate>Tue, 05 Sep 2017 12:15:48 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:53d20716-fdd9-482d-8892-1a8c378775d2</guid><dc:creator>BoKarolis</dc:creator><description>&lt;p&gt;For example, if I need to monitor sensors&amp;#39; data on, say, IBM&amp;#39;s quickstart, which is IPv4, I would need to use NAT64 to reach it, right? Could you elaborate and expand on the packet unpacking and the IPv4 tunnel a bit more?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF2840: IPv6 over BLE to IPv4 internet via NAT64</title><link>https://devzone.nordicsemi.com/thread/97786?ContentTypeID=1</link><pubDate>Tue, 05 Sep 2017 12:05:36 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:c297aa5e-c369-4b07-b401-b636abb62f91</guid><dc:creator>Petter Myhre</dc:creator><description>&lt;p&gt;I&amp;#39;m sorry, I don&amp;#39;t understand. How would the nodes benefit from reaching a IPv4 network? They only support IPv6. If you don&amp;#39;t have IPv6 connectivity, you need to send the IPv6 packets through a IPv4 tunnel to a server that &amp;quot;unpacks&amp;quot; the IPv6 packets relays them to the IPv6 network.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF2840: IPv6 over BLE to IPv4 internet via NAT64</title><link>https://devzone.nordicsemi.com/thread/97782?ContentTypeID=1</link><pubDate>Tue, 05 Sep 2017 11:35:49 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:1a0bcddb-5141-4496-8288-04c8e0811667</guid><dc:creator>BoKarolis</dc:creator><description>&lt;p&gt;I must have not made myself clear, my aim is to reach IPv4 network, not IPv6.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF2840: IPv6 over BLE to IPv4 internet via NAT64</title><link>https://devzone.nordicsemi.com/thread/97783?ContentTypeID=1</link><pubDate>Tue, 05 Sep 2017 10:56:05 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:f7a19849-3d70-4c03-b0c6-a774673996fa</guid><dc:creator>Petter Myhre</dc:creator><description>&lt;p&gt;Ok. I&amp;#39;m not too familiar with Tayga, but I&amp;#39;m pretty sure you need a IPv4 tunnel if you want your IPv6 packets from the nodes to reach a IPv6 network. Doesn&amp;#39;t sound like that is what Tayga is doing.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF2840: IPv6 over BLE to IPv4 internet via NAT64</title><link>https://devzone.nordicsemi.com/thread/97785?ContentTypeID=1</link><pubDate>Tue, 05 Sep 2017 07:21:52 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:404acd47-4690-46e0-860f-9acff7266d70</guid><dc:creator>BoKarolis</dc:creator><description>&lt;p&gt;Hi, thank you for the reply, as I said, my ISP does not provide IPv6 addresses, hence I cannot. I am not trying to reach IPv6 internet, I am sure that will be not possible without a tunnel broker. I just need for my node to access IPv4. As the providers will at some point switch to IPv6, I need the nodes to be on IPv6&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF2840: IPv6 over BLE to IPv4 internet via NAT64</title><link>https://devzone.nordicsemi.com/thread/97784?ContentTypeID=1</link><pubDate>Mon, 04 Sep 2017 14:37:36 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:e68b7e3a-0bd1-41cd-ae7a-f0f8ffe08a9d</guid><dc:creator>Petter Myhre</dc:creator><description>&lt;p&gt;Are you able to ping Google&amp;#39;s IPv6 address from the RPi?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>