Hi all,

I stripped down my 'radvd.conf' to a minimal of:

---snip---
interface lowpan0
{
    AdvSendAdvert on;
    MinRtrAdvInterval 3;
    MaxRtrAdvInterval 10;
    AdvDefaultPreference low;

    prefix fd4b:c597:5df5:0::/64
    {
        AdvOnLink off;
        AdvAutonomous on;
        AdvRouterAddr on;
    };
};
---snap---

same behavior with RIOT. It still consistently configures an (ULA) IP with 
provided prefix, but the routers entry is missing most of the time - sometimes 
it's there for a couple of seconds -> until the next RS/RA round. 

Best,
  Sebastian

> Am 22.04.2016 um 13:13 schrieb smlng <[email protected]>:
> 
> Hi Alex, and all,
> 
> my radvd.conf is the following:
> 
> ---snip---
> 
> interface lowpan0
> {
>    AdvSendAdvert on;
>    UnicastOnly on;
>    AdvCurHopLimit 255;
>    AdvSourceLLAddress on;
> 
>    MinRtrAdvInterval 3;
>    MaxRtrAdvInterval 10;
> 
>    AdvDefaultPreference low;
> 
>    prefix fd4b:c597:5df5:0::/64
>    {
>        AdvOnLink off;
>        AdvAutonomous on;
>        AdvRouterAddr on;
>    };
> 
>    abro fe80::1ac0:ffee:1ac0:ffee
>    {
>        AdvVersionLow 10;
>        AdvVersionHigh 2;
>        AdvValidLifeTime 2;
>    };
> };
> 
> ---snap---
> 
> btw. I use your/linux-wpan fork of radvd. Again: RIOT does receive the RA 
> from radvd AND configures an IP with the provided prefix. Thus, the 
> processing of RS+RA up this point seems to be correct, what's missing is the 
> routers entry in RIOT. Further, RIOT does receive the COAP requests but it 
> cannot send any reply, as it does not know the LLaddr for the destination 
> (ULA) IP. As far as I remember my last digging into RIOTs NDP processing, 
> RIOT does the following:
> 
> 1. if DST_IP is link-local: extract LLaddr 
> 2. else if neighbor cache entry exist, use it
> 3. if no ncache: query (default) router for LLaddr
> 4. if no router: abort
> 
> I think I'm running into case 4, where no entry exists what so ever and thus 
> no COAP reply is send.
> 
> @Alex as you joined the discussion: I also have a question regarding the 
> Linux side. I currently use Raspbian with shipped Linux-Kernel 4.1.19. I 
> observed that Linux still does NS for link-local address via the nodes scoped 
> multicast address, instead of using 6lo 'shortcut' by extracting 
> LL/MAC-address from the link-local IP. Is this fixed in some recent version?
> 
> Regards,
>  Sebastian
> 
>> Am 22.04.2016 um 12:28 schrieb Alexander Aring <[email protected]>:
>> 
>> Hi,
>> 
>> On Fri, Apr 22, 2016 at 12:19:36PM +0200, smlng wrote:
>>> Hi everyone,
>>> 
>>> I'm testing COAP between RIOT on Phytec pba-d-01-kw2x and Linux on 
>>> RasPi+Openlabs using ULA IP addresses. 
>>> 
>>> On the Pi I run a 'radvd' to advertise a ULA prefix to RIOT, which works:
>>> - RIOT sends RS after boot
>>> - the Pi answers with RA containing ULA prefix
>>> - RIOT configures ULA IP on 6lo iface
>>> 
>>> COAP (or communication in general) via ULA IP works, as long as RIOT has 
>>> the Pi in its routers cache. However, sometimes RIOT _forgets_ or does not 
>>> set a routers entry for the Pi at all. In that case communication is not 
>>> possible via ULAs, using link-local IPs works all the time. The issue seems 
>>> be with the RS+RA processing. I found that sometimes RIOT does not create a 
>>> routers entry on reception of a RA - though it does configure the ULA 
>>> prefix correctly. 
>>> 
>>> I just had the case that RIOT configures the ULA _and_ sets a routers 
>>> entry, hence communication was working. At least for about 15min, but then 
>>> RIOT send another RS, Pi answers with RA, RIOT still has ULA IP configured 
>>> -- BUT the routers entry for the Pi is gone and communication fails. Again: 
>>> using link-local IPs still works.
>>> 
>>> Btw. even when communication via ULAs is working, RIOT never creates a 
>>> ncache entry for ULA IP of the Pi but it did create an ncache entry for 
>>> link-local IP of the Pi. I thought the latter is not required/allowed in 
>>> 6lo but for ULAs it should create an entry?
>>> 
>>> Has somebody else observed this behavior or any hints how to resolve this?
>>> 
>> 
>> can you share your used radvd.conf?
>> 
>> - ALex
>> _______________________________________________
>> devel mailing list
>> [email protected]
>> https://lists.riot-os.org/mailman/listinfo/devel
> 
> _______________________________________________
> devel mailing list
> [email protected]
> https://lists.riot-os.org/mailman/listinfo/devel

_______________________________________________
devel mailing list
[email protected]
https://lists.riot-os.org/mailman/listinfo/devel

Reply via email to