<h4>Description</h4>
<p>When playing around with border routers I noticed some strange behavior: An offline border router is retained for an unknown time. Even resetting a node does not get it to use the new border router as the old border router information is still being advertised by neighboring nodes.</p>
<p>I am not sure if this is to spec as the border router live time is indeed exceptionally high. But this seems more like a bug as it makes roaming nodes impossible. Even worse, a roaming node could 'pollute' other nodes with an unreachable border router, making them ignore a border router that is reachable.</p>
<p>I think the solution could be to check if a border router is reachable before considering border router information valid.</p>
<h4>Steps to reproduce the issue</h4>
<ul>
<li>set up a border router, e.g. a raspberry pi with an <a href="https://www.bergzand.net/6lowpan-on-linux-with-raspberry-pis.html" rel="nofollow">ieee802.15.4 radio</a> following <a href="https://github.com/RIOT-Makers/wpan-raspbian/wiki/Setup-native-6LoWPAN-router-using-Raspbian-and-RADVD">this guide</a></li>
<li>flash a RIOT node with the <code>gnrc_networking</code> example and observe that the border router is being used</li>
</ul>
<pre><code>2019-09-12 13:23:07,524 - INFO #  nib abr
2019-09-12 13:23:07,527 - INFO # fd00:1:2:3:a:b:c:d v0 expires 65534min
</code></pre>
<ul>
<li>shut down the Raspberry Pi or move the RIOT node out of range.</li>
<li>set up a second border router. If you have more RIOT nodes than RasPis, flash the <code>gnrc_border_router</code> example and run</li>
</ul>
<pre><code>make -C dist/tools/uhcpd
make -C dist/tools/ethos
sudo dist/tools/ethos/start_network.sh /dev/ttyACMx tap0 2001:db8::/64
</code></pre>
<p>The RIOT border Router should now announce it's prefix.</p>
<h4>Expected results</h4>
<p>After some time, the new border router should be used as the old border router is not reachable anymore.</p>
<pre><code>2019-09-12 14:54:00,467 - INFO #  nib abr
2019-09-12 14:54:00,470 - INFO # 2001:db8::7b7d:362c:c959:65a v0 expires 10000min
</code></pre>
<h4>Actual results</h4>
<p>The old border router will be used for the next ~45 days</p>
<pre><code>2019-09-12 14:54:00,467 - INFO #  nib abr
2019-09-12 14:54:00,470 - INFO # fd00:1:2:3:a:b:c:d v0 expires 65444min
</code></pre>
<p>some more information:</p>
<pre><code>2019-09-12 15:05:53,443 - INFO #  nib neigh
2019-09-12 15:05:53,450 - INFO # fe80::d0af:c1b:2054:58f dev #7 lladdr D2:AF:0C:1B:20:54:05:8F router STALE GC
2019-09-12 15:06:11,958 - INFO #  nib route
2019-09-12 15:06:11,960 - INFO # fd00:1:2:3::/64 dev #7
2019-09-12 15:06:11,964 - INFO # default* via fe80::d0af:c1b:2054:58f dev #7
2019-09-12 15:06:20,582 - INFO #  nib prefix
2019-09-12 15:06:20,587 - INFO # fd00:1:2:3::/64 dev #7  expires 80101sec deprecates 8101sec
</code></pre>
<h4>Versions</h4>
<p>RIOT master</p>


<p style="font-size:small;-webkit-text-size-adjust:none;color:#666;">—<br />You are receiving this because you are subscribed to this thread.<br />Reply to this email directly, <a href="https://github.com/RIOT-OS/RIOT/issues/12210?email_source=notifications&email_token=ABE7WYDGZH6GQRH5O56XCOLQJI6RXA5CNFSM4IWDZDC2YY3PNVWWK3TUL52HS4DFUVEXG43VMWVGG33NNVSW45C7NFSM4HK7RJXA">view it on GitHub</a>, or <a href="https://github.com/notifications/unsubscribe-auth/ABE7WYC6OBLCG2GXJ42QYRTQJI6RXANCNFSM4IWDZDCQ">mute the thread</a>.<img src="https://github.com/notifications/beacon/ABE7WYH5T76HIK3FZU65YDTQJI6RXA5CNFSM4IWDZDC2YY3PNVWWK3TUL52HS4DFUVEXG43VMWVGG33NNVSW45C7NFSM4HK7RJXA.gif" height="1" width="1" alt="" /></p>
<script type="application/ld+json">[
{
"@context": "http://schema.org",
"@type": "EmailMessage",
"potentialAction": {
"@type": "ViewAction",
"target": "https://github.com/RIOT-OS/RIOT/issues/12210?email_source=notifications\u0026email_token=ABE7WYDGZH6GQRH5O56XCOLQJI6RXA5CNFSM4IWDZDC2YY3PNVWWK3TUL52HS4DFUVEXG43VMWVGG33NNVSW45C7NFSM4HK7RJXA",
"url": "https://github.com/RIOT-OS/RIOT/issues/12210?email_source=notifications\u0026email_token=ABE7WYDGZH6GQRH5O56XCOLQJI6RXA5CNFSM4IWDZDC2YY3PNVWWK3TUL52HS4DFUVEXG43VMWVGG33NNVSW45C7NFSM4HK7RJXA",
"name": "View Issue"
},
"description": "View this Issue on GitHub",
"publisher": {
"@type": "Organization",
"name": "GitHub",
"url": "https://github.com"
}
}
]</script>