chiark / gitweb /
test: netns setup
authorIan Jackson <ijackson@chiark.greenend.org.uk>
Sat, 7 Aug 2021 15:01:41 +0000 (16:01 +0100)
committerIan Jackson <ijackson@chiark.greenend.org.uk>
Sat, 7 Aug 2021 15:01:41 +0000 (16:01 +0100)
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
test/netns-setup [new file with mode: 0755]
test/test.cfg

diff --git a/test/netns-setup b/test/netns-setup
new file mode 100755 (executable)
index 0000000..61edd47
--- /dev/null
@@ -0,0 +1,32 @@
+#!/bin/bash
+set -ex
+
+slug=$1
+
+c_ns=hippotat-t-$slug-client
+s_ns=hippotat-t-$slug-server
+
+ip netns delete $s_ns      2>/dev/null ||:
+ip netns delete $c_ns      2>/dev/null ||:
+
+ip netns add $c_ns
+ip netns add $s_ns
+
+ip link add t.s.$$ type veth peer name t.c.$$
+move_to_netns () {
+    cs=$1; ns=$2
+    ip link set t.$cs.$$ netns $ns
+    ip netns exec $ns ip link set t.$cs.$$ name eth0
+}
+move_to_netns s $s_ns
+move_to_netns c $c_ns
+
+config_netns () {
+    ns=$1; num=$2;
+    ip netns exec $ns ip addr add dev lo   127.0.0.1
+    ip netns exec $ns ip addr add dev eth0 198.51.100.$num/24
+    ip netns exec $ns ip link set     lo   up
+    ip netns exec $ns ip link set     eth0 up
+}
+config_netns $s_ns 1
+config_netns $c_ns 2
index 1180fb3f0156bee1e30f167100b2630f33a4fdb7..77a4b29e0842e19867d4dbcace7fc5d88ef089cb 100644 (file)
@@ -2,7 +2,7 @@
 
 ipif = /usr/lib/userv/ipif \* -- %(local)s,%(peer)s,%(mtu)s,slip '%(rnets)s'
 
-addrs = 127.0.0.1
+addrs = 198.51.100.1
 port = 8099
 vnetwork = 192.0.2.0/24