mirror of
https://github.com/tun2proxy/tun2proxy.git
synced 2025-04-23 15:29:10 +00:00
39 lines
979 B
Bash
Executable file
39 lines
979 B
Bash
Executable file
netns="test"
|
|
dante="sockd"
|
|
tun2proxy="../../target/release/tun2proxy"
|
|
|
|
ip netns add "$netns"
|
|
|
|
ip link add veth0 type veth peer name veth0 netns "$netns"
|
|
|
|
# Configure veth0 in default ns
|
|
ip addr add 10.0.0.2/24 dev veth0
|
|
ip link set dev veth0 up
|
|
|
|
# Configure veth0 in child ns
|
|
ip netns exec "$netns" ip addr add 10.0.0.3/24 dev veth0
|
|
ip netns exec "$netns" ip addr add 10.0.0.4/24 dev veth0
|
|
ip netns exec "$netns" ip link set dev veth0 up
|
|
|
|
# Configure lo interface in child ns
|
|
ip netns exec "$netns" ip addr add 127.0.0.1/8 dev lo
|
|
ip netns exec "$netns" ip link set dev lo up
|
|
|
|
echo "Starting Dante in background ..."
|
|
ip netns exec "$netns" "$dante" -f dante.conf &
|
|
|
|
# Start iperf server in netns
|
|
ip netns exec "$netns" iperf -s -B 10.0.0.4 &
|
|
|
|
sleep 1
|
|
|
|
# Prepare tun2proxy
|
|
ip tuntap add name tun0 mode tun
|
|
ip link set tun0 up
|
|
ip route add 10.0.0.4 dev tun0
|
|
"$tun2proxy" --proxy socks5://10.0.0.3:1080 &
|
|
|
|
# Run iperf client through tun2proxy
|
|
iperf -c 10.0.0.4
|
|
|
|
iperf -c 10.0.0.4 -R
|