From 20ce69c361a4d040b3b284b6a92d4f8fb61dbff4 Mon Sep 17 00:00:00 2001 From: "Martine S. Lenders" Date: Fri, 6 Mar 2020 11:39:37 +0100 Subject: [PATCH 1/5] sliptty/start_network.sh: add missing argument to usage --- dist/tools/sliptty/start_network.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/dist/tools/sliptty/start_network.sh b/dist/tools/sliptty/start_network.sh index e3fb70e95c..8c3b8b0aca 100755 --- a/dist/tools/sliptty/start_network.sh +++ b/dist/tools/sliptty/start_network.sh @@ -89,8 +89,8 @@ start_uhcpd() { } usage() { - echo "usage: $1 [-I ] serial [baudrate]" - echo "usage: $1 [-I ] tcp:host [port]" + echo "usage: $1 [-I ] [-e] serial [baudrate]" + echo "usage: $1 [-I ] [-e] tcp:host [port]" } trap "cleanup" INT QUIT TERM EXIT From 45ef9f9fe7efbea71ae4d17b70795bec8a858be0 Mon Sep 17 00:00:00 2001 From: "Martine S. Lenders" Date: Fri, 6 Mar 2020 11:44:42 +0100 Subject: [PATCH 2/5] sliptty/start_network.sh: do not provide sliptty with -e argument --- dist/tools/sliptty/start_network.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dist/tools/sliptty/start_network.sh b/dist/tools/sliptty/start_network.sh index 8c3b8b0aca..95aec4cbce 100755 --- a/dist/tools/sliptty/start_network.sh +++ b/dist/tools/sliptty/start_network.sh @@ -99,7 +99,7 @@ SLIP_ONLY=0 while getopts ehI: opt; do case ${opt} in - e) SLIP_ONLY=1;; + e) SLIP_ONLY=1; shift 1;; I) TUN=${OPTARG}; shift 2;; h) usage $0; exit 0;; esac From d43ff6df12b049c56ddf332af115901c61128722 Mon Sep 17 00:00:00 2001 From: "Martine S. Lenders" Date: Fri, 6 Mar 2020 11:42:32 +0100 Subject: [PATCH 3/5] sliptty/start_network.sh: configure global address for SLIP interface This way hosts without pre-configured IPv6 addresses can also reach global addresses within a downstream network. --- dist/tools/sliptty/start_network.sh | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/dist/tools/sliptty/start_network.sh b/dist/tools/sliptty/start_network.sh index 95aec4cbce..fad956f5d7 100755 --- a/dist/tools/sliptty/start_network.sh +++ b/dist/tools/sliptty/start_network.sh @@ -3,6 +3,7 @@ SLIPTTY_DIR="$(cd "$(dirname "$0")" && pwd -P)" UHCPD="$(cd "${SLIPTTY_DIR}/../uhcpd/bin" && pwd -P)/uhcpd" TUN=sl0 +TUN_GLB="fdea:dbee:f::1/64" UHCPD_PID= CREATED_IFACE=0 @@ -39,6 +40,7 @@ create_tun() { ${SUDO} sysctl -w net.ipv6.conf.${TUN}.accept_ra=2 ${SUDO} ip link set ${TUN} up || exit 1 ${SUDO} ip address add fe80::1/64 dev ${TUN} + ${SUDO} ip address add ${TUN_GLB} dev ${TUN} ${SUDO} ip neigh add fe80::2 dev ${TUN} ${SUDO} ip route add ${PREFIX} via fe80::2 dev ${TUN} ;; @@ -55,6 +57,16 @@ create_tun() { read _ ${SUDO} ifconfig ${TUN} up || exit 1 ${SUDO} ifconfig ${TUN} inet6 fe80::1 prefixlen 64 + TUN_GLB_ADDR=$(echo "${TUN_GLB}" | cut -d/ -f1) + TUN_GLB_LEN=$(echo "${TUN_GLB}" | cut -d/ -f2) + if [ -z "${TUN_GLB_ADDR}" ] || [ -z "${TUN_GLB_LEN}" ]; then + echo "TUN global address (-g) must be of format " \ + "/" >&2 + exit 1 + fi + ${SUDO} ifconfig ${TUN} inet6 fe80::1 prefixlen 64 + ${SUDO} ifconfig ${TUN} inet6 ${TUN_GLB_ADDR} prefixlen \ + ${TUN_GLB_LEN} ${SUDO} route -n add -interface ${TUN} -inet6 -prefixlen 64 \ ${PREFIX} fe80::2 || exit 1 ;; @@ -89,8 +101,8 @@ start_uhcpd() { } usage() { - echo "usage: $1 [-I ] [-e] serial [baudrate]" - echo "usage: $1 [-I ] [-e] tcp:host [port]" + echo "usage: $1 [-I ] [-e] [-g /] serial [baudrate]" + echo "usage: $1 [-I ] [-e] [-g /] tcp:host [port]" } trap "cleanup" INT QUIT TERM EXIT @@ -101,6 +113,7 @@ while getopts ehI: opt; do case ${opt} in e) SLIP_ONLY=1; shift 1;; I) TUN=${OPTARG}; shift 2;; + g) TUN_GLB=${OPTARG}; shift 2;; h) usage $0; exit 0;; esac done From 44baa250f77c8d17e8137153b5a6945014fb3088 Mon Sep 17 00:00:00 2001 From: "Martine S. Lenders" Date: Fri, 6 Mar 2020 11:56:44 +0100 Subject: [PATCH 4/5] CODEOWNERS: update for slipdev and sliptty --- CODEOWNERS | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/CODEOWNERS b/CODEOWNERS index dbb1f6457d..27c1908b70 100644 --- a/CODEOWNERS +++ b/CODEOWNERS @@ -60,6 +60,8 @@ /doc/ @aabadie @jia200x +/dist/tools/sliptty/ @miri64 + /drivers/ad7746/ @leandrolanzieri /drivers/at24mac/ @benpicco /drivers/at86rf2xx/ @daniel-k @Hyungsin @jia200x @smlng @miri64 @@ -76,6 +78,7 @@ /drivers/pca9685/ @gschorcht /drivers/sht3x/ @gschorcht /drivers/si70xx/ @basilfx +/drivers/slipdev/ @miri64 /drivers/sx127x/ @aabadie @jia200x /drivers/ws281x/ @maribu /drivers/xbee/ @haukepetersen @miri64 @@ -125,6 +128,7 @@ /tests/emb6* @miri64 /tests/gnrc* @miri64 /tests/lwip* @miri64 +/tests/slip/ @miri64 /tests/unittests @miri64 /tests/*/tests/*.py @miri64 /tests/cpu_efm32_features/ @basilfx From 0bd58bd6246971651caabba7e533c92a3c111bc3 Mon Sep 17 00:00:00 2001 From: Martine Lenders Date: Sat, 7 Mar 2020 12:34:51 +0100 Subject: [PATCH 5/5] examples: use slip-only option with DHCPv6 for border router --- examples/gnrc_border_router/Makefile.slip.conf | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/examples/gnrc_border_router/Makefile.slip.conf b/examples/gnrc_border_router/Makefile.slip.conf index 2ca76f8b9b..7721ff6fb9 100644 --- a/examples/gnrc_border_router/Makefile.slip.conf +++ b/examples/gnrc_border_router/Makefile.slip.conf @@ -4,7 +4,11 @@ CFLAGS += -DSLIPDEV_PARAM_BAUDRATE=$(SLIP_BAUDRATE) STATIC_ROUTES ?= 1 +ifeq (1,$(USE_DHCPV6)) + SLIP_ONLY=-e +endif + # Configure terminal parameters TERMDEPS += sliptty TERMPROG ?= sudo sh $(RIOTTOOLS)/sliptty/start_network.sh -TERMFLAGS ?= $(IPV6_PREFIX) $(PORT) $(SLIP_BAUDRATE) +TERMFLAGS ?= $(SLIP_ONLY) $(IPV6_PREFIX) $(PORT) $(SLIP_BAUDRATE)