1#!/bin/bash 2# SPDX-License-Identifier: GPL-2.0 3# Copyright (C) 2020-2025 OpenVPN, Inc. 4# 5# Author: Antonio Quartulli <antonio@openvpn.net> 6 7#set -x 8set -e 9 10source ./common.sh 11 12cleanup 13 14modprobe -q ovpn || true 15 16for p in $(seq 0 ${NUM_PEERS}); do 17 create_ns ${p} 18done 19 20for p in $(seq 0 ${NUM_PEERS}); do 21 setup_ns ${p} 5.5.5.$((${p} + 1))/24 22done 23 24for p in $(seq 0 ${NUM_PEERS}); do 25 add_peer ${p} 26done 27 28for p in $(seq 1 ${NUM_PEERS}); do 29 ip netns exec peer0 ${OVPN_CLI} set_peer tun0 ${p} 60 120 30 ip netns exec peer${p} ${OVPN_CLI} set_peer tun${p} ${p} 60 120 31done 32 33sleep 1 34 35for p in $(seq 1 ${NUM_PEERS}); do 36 ip netns exec peer0 ping -qfc 500 -w 3 5.5.5.$((${p} + 1)) 37done 38 39ip netns exec peer0 iperf3 -1 -s & 40sleep 1 41ip netns exec peer1 iperf3 -Z -t 3 -c 5.5.5.1 42 43cleanup 44 45modprobe -r ovpn || true 46