Border Router and SLIP

Hello RIOTers!

I'm trying to make a small network with 3 samr21 boards, one as a border router connected to my PC via SLIP (using the example gnrc_border_router), and the other two as CoAP servers (using microcoap_server example). My goal is to reach both boards from my PC using Firefox with Copper.

For now, I succeeded creating a RPL network with the BR and the two boards (ping6 is working on all boards, the BR as the root). I followed the steps in [1] to configure RPL and [2] for the SLIP interface. I also added a route:

fibroute add :: via <link-local IPv6 address from the Linux tun

dev 6

on the BR.

Afterwards, I connected the SLIP interface through an USB-Serial cable which is connected directly to the 2nd UART on the samr21 board, but I cannot make work the SLIP interface with tunslip6 (I cannot ping any board from my PC, even the BR).

I'm thinking about modify the slip implementation to use only the main UART interface, but as far as I know some people is already working on this.

So, my questions are: is there a tutorial or step that I'm missing? Is actually possible to do what I want?

Thanks in advance!

Cheers!

Francisco.

[1]

[2]

Hello Francisco,

You do not need RPL for your setup:

* Start your border router application and tunslip6 (e.g. beef::1/64) * configure beef::2/64 on interface 6 at the border router and    add beef::1 to the neighbor cache on interface 6    (these steps are outlined in the border router README) * add abcd::1 to interface 5 of the border router * connected 6lr applications (e.g. the microcoap example) should receive    a RA that contains information about the prefix (abcd::/64) and    they configure a global ipv6 address automatically * now you should be able to do a ping6 from/to your microcoap examples.

You might however follow the discussion in [1], because there might be problems with IPHC/NHC for this setup.

PS: You can use ethos [2] to reduce the number of UARTs for your border router.

[1] https://github.com/RIOT-OS/RIOT/issues/4462 [2] https://github.com/RIOT-OS/RIOT/pull/4438

Best, Cenk

Hi Cenk!

Hello Francisco,

You do not need RPL for your setup:

Yes you're right, I actually see the prefix already configured before start RPL, I don't know what kind of magic is behind that but I will investigate afterwards.

* Start your border router application and tunslip6 (e.g. beef::1/64) * configure beef::2/64 on interface 6 at the border router and    add beef::1 to the neighbor cache on interface 6    (these steps are outlined in the border router README) * add abcd::1 to interface 5 of the border router * connected 6lr applications (e.g. the microcoap example) should receive    a RA that contains information about the prefix (abcd::/64) and    they configure a global ipv6 address automatically * now you should be able to do a ping6 from/to your microcoap examples.

ping6 between nodes was already working, I tried the steps you propose and my problem about pinging from my PC to the nodes is still there. By the way, as the prefixes you propose are not the same for both the tun interface and the 6lr network, ping from my PC cannot be possible, but configurations with the same prefix don't work neither.

I'm thought about communication problems with the UART interface, but my last tests were ok while sending messages using such interface. I will make more tests to be sure that the second UART is working as expected.

You might however follow the discussion in [1], because there might be problems with IPHC/NHC for this setup.

I read the issue but I think I'll be able to test when my whole network will be set up.

PS: You can use ethos [2] to reduce the number of UARTs for your border router.

[1] IPHC/NHC broken · Issue #4462 · RIOT-OS/RIOT · GitHub [2] drivers: add ethernet over serial driver by kaspar030 · Pull Request #4438 · RIOT-OS/RIOT · GitHub

Best, Cenk

Thanks!

Best,

Francisco.

Hello all!

Just to say that I succeeded with my tests, it was just that I was wrong on the UART port that was trying to use (using PB22 and PB23 instead of PA22 and PA23). So now everything is working as expected.

Thanks!

Francisco.