test between 2 hosts
authorMazet Laurent <laurent.mazet@thalesgroup.com>
Thu, 12 Jun 2025 13:48:35 +0000 (15:48 +0200)
committerMazet Laurent <laurent.mazet@thalesgroup.com>
Thu, 12 Jun 2025 13:48:35 +0000 (15:48 +0200)
ulvpn.sh

index db7e14984346cc1f02f8ed4fcd9765fea9b77bcd..1cdbeabcd68fbeb9035a4063306b7bc065cb655e 100755 (executable)
--- a/ulvpn.sh
+++ b/ulvpn.sh
@@ -2,20 +2,76 @@
 
 MTU=1440
 [ $# -gt 0 ] && MTU=$1
+
+LRED=lo://00:00:00:00:00:00
+LBLK=lo://00:00:00:00:00:00
+RRED=lo://00:00:00:00:00:00
+RBLK=lo://00:00:00:00:00:00
+
+CRYPTOMOD=./cryptomod.exe
+SIMULATOR=./simulator.exe
 VPN=./ulvpn.exe
 
+ulimit -c unlimited
+
 title() { echo -e "\033[0;1m$@\033[0;0m"; }
 
+cat > provisioning.eth <<EOF
+SLEEP 500
+T:PROVISIONING LOAD_KEY_REQ KEYID=0 KEY=01:02:03:04:05:06:07:08:09:0a:0b:0c:0d:0e:0f:10:11:12:13:14:15:16:17:18:19:1a:1b:1c:1d:1e:1f:20
+R:PROVISIONING LOAD_KEY_RESP STATUS=0
+EOF
+
+pids=
 if $(ip add list dev enp0s4 | fgrep -q 10.1.0.2/); then
     title Remote
-    $VPN -v 5 \
-      -d tun://tun0:$MTU \
-      -l tun://10.2.1.1 -r tun://10.2.0.0 \
-      -u udp://10.1.0.1:1234 -t udp://10.1.0.2:1235
+
+    $CRYPTOMOD -v 1 -V 1 -l cryptomod.log \
+        -s BYPASS_B2R -t $RRED/080D -r $RBLK/083D \
+        -s BYPASS_R2B -t $RBLK/082D -r $RRED/081D \
+        -s CONTROL -t $RRED/080E -r $RRED/081E \
+        -s CROSS_CRYPTO_B2R -t $RRED/0809 -r $RBLK/0839 \
+        -s CROSS_CRYPTO_R2B -t $RBLK/0829 -r $RRED/0819 \
+        -s PROVISIONING -t $RRED/080B -r $RRED/081B &
+    pids="$pids $!"
+
+    $SIMULATOR -s PROVISIONING -r $RRED/080B -t $RRED/081B provisioning.eth | \
+        awk '{print "provisioning:", $0}'
+
+    $VPN -v 1 -V 1 -l ulvpn.log \
+        -d tun://tun0:$MTU \
+        -l tun://10.2.1.1 -r tun://10.2.0.0 \
+        -t udp://10.1.0.2:1234 -u udp://10.1.0.1:1234 \
+        -x $RBLK/0829 $RBLK/0839 \
+        -y $RRED/0809 $RRED/0819 | \
+        awk '{print "vpn:", $0}'
+
 else
     title Local
-    $VPN -v 5 \
-      -d tun://tun0:$MTU \
-      -l tun://10.2.0.1 -r tun://10.2.1.0 \
-      -t udp://10.1.0.1:1234 -u udp://10.1.0.2:1235
+
+    $CRYPTOMOD -v 1 -V 1 -l cryptomod.log \
+        -s BYPASS_B2R -t $LRED/080D -r $LBLK/083D \
+        -s BYPASS_R2B -t $LBLK/082D -r $LRED/081D \
+        -s CONTROL -t $LRED/080E -r $LRED/081E \
+        -s CROSS_CRYPTO_B2R -t $LRED/0809 -r $LBLK/0839 \
+        -s CROSS_CRYPTO_R2B -t $LBLK/0829 -r $LRED/0819 \
+        -s PROVISIONING -t $LRED/080B -r $LRED/081B &
+    pids="$pids $!"
+
+    $SIMULATOR -s PROVISIONING -r $RRED/080B -t $RRED/081B provisioning.eth | \
+        awk '{print "provisioning:", $0}'
+
+    $VPN -v 1 -V 1 -l ulvpn.log \
+        -d tun://tun0:$MTU \
+        -l tun://10.2.0.1 -r tun://10.2.1.0 \
+        -t udp://10.1.0.1:1234 -u udp://10.1.0.2:1234 \
+        -x $LBLK/0829 $LBLK/0839 \
+        -y $LRED/0809 $LRED/0819 | \
+        awk '{print "vpn:", $0}'
+
 fi
+
+for p in $pids; do
+    echo killing $p
+    kill -TERM $p
+done