From 3c42c978974573e71a281c6cd31803929378a27d Mon Sep 17 00:00:00 2001 From: 0xFEEDC0DE64 Date: Sat, 7 Nov 2026 15:17:01 +0100 Subject: [PATCH] Document verified OTBR IPv6 startup script --- apps/matter-server/README.md | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/apps/matter-server/README.md b/apps/matter-server/README.md index 14b80b1..0a1753c 100644 --- a/apps/matter-server/README.md +++ b/apps/matter-server/README.md @@ -21,8 +21,10 @@ this is recovery with preserved state, not uninterrupted active-active service. The MikroTik-managed `app-otbr` container requires these startup sysctls in its own network namespace: `net.ipv6.conf.all.forwarding=1`, `net.ipv6.conf.veth-app-otbr.accept_ra=2`, and -`net.ipv6.conf.veth-app-otbr.accept_ra_from_local=1`. Its container entrypoint -applies them before `/init`. Without accepting its own router advertisements, +`net.ipv6.conf.veth-app-otbr.accept_ra_from_local=1`. The persistent script +`/data/lan-ipv6-init.sh` applies them before `exec /init`; the RouterOS container +uses `entrypoint=/bin/sh` and `cmd=/data/lan-ipv6-init.sh`. Keeping the script +separate avoids RouterOS command-line quoting errors. Without accepting its own router advertisements, the container advertises a LAN prefix but lacks the corresponding return route; discovery works while IPv6 communication with Thread fails. Recheck this entrypoint after changing or reinstalling the MikroTik App. RouterOS