diff --git a/test/README.md b/test/README.md index 362690c..201332b 100644 --- a/test/README.md +++ b/test/README.md @@ -29,7 +29,7 @@ on a system, i.e. common utilities such as a shell are not included here. Example for Debian, and possibly most Debian-based distributions: build-essential git jq strace iperf3 qemu-system-x86 tmux sipcalc bc - clang-tidy cppcheck isc-dhcp-common psmisc linux-cpupower + clang-tidy cppcheck isc-dhcp-common psmisc linux-cpupower ncat netcat-openbsd fakeroot lz4 lm-sensors qemu-system-arm qemu-system-ppc qemu-system-misc qemu-system-x86 valgrind diff --git a/test/demo/pasta b/test/demo/pasta index e2517ed..754b320 100644 --- a/test/demo/pasta +++ b/test/demo/pasta @@ -100,9 +100,9 @@ nl say pasta detects bound ports and forwards them. sleep 3 -nsb nc -6 -l -p 31337 +nsb ncat -6 -l ::1 31337 sleep 2 -host echo "Hello from the host" | nc -N ::1 31337 +host echo "Hello from the host" | ncat ::1 31337 sleep 5 nl @@ -111,9 +111,9 @@ say Now the other way around... nl say we can use a loopback address sleep 2 -hostb nc -l -p 31337 +hostb ncat -l ::1 31337 sleep 2 -ns echo "Hello from the namespace" | nc -N 127.0.0.1 31337 +ns echo "Hello from the namespace" | ncat ::1 31337 sleep 5 nl @@ -121,9 +121,9 @@ say or the address of the default gateway. sleep 2 nsout GW ip -j -4 route show|jq -rM '.[] | select(.dst == "default").gateway' sleep 5 -hostb nc -l -p 31337 +hostb ncat -l 0.0.0.0 31337 sleep 2 -ns echo "Hello from the namespace" | nc -N __GW__ 31337 +ns echo "Hello from the namespace" | ncat __GW__ 31337 sleep 3 nl diff --git a/test/tcp/pasta b/test/tcp/pasta index 2fece32..531da04 100644 --- a/test/tcp/pasta +++ b/test/tcp/pasta @@ -12,31 +12,31 @@ # Author: Stefano Brivio onlyfor pasta -htools dd nc ip jq cat md5sum cut -nstools nc ip jq cat md5sum cut +htools dd ncat ip jq cat md5sum cut +nstools ncat ip jq cat md5sum cut test TCP/IPv4: host to ns: big transfer temp TEMP_BIG temp TEMP_NS_BIG -nsb nc -4 -l 10002 > __TEMP_NS_BIG__ +nsb ncat -4 -l 127.0.0.1 10002 > __TEMP_NS_BIG__ host dd if=/dev/urandom bs=1M count=10 > __TEMP_BIG__ -host cat __TEMP_BIG__ | nc -N 127.0.0.1 10002 +host cat __TEMP_BIG__ | ncat 127.0.0.1 10002 nsw hout MD5_BIG md5sum __TEMP_BIG__ | cut -d' ' -f1 nsout NS_MD5_BIG md5sum __TEMP_NS_BIG__ | cut -d' ' -f1 check [ "__NS_MD5_BIG__" = "__MD5_BIG__" ] test TCP/IPv4: ns to host (spliced): big transfer -hostb nc -4 -l 10003 > __TEMP_BIG__ -ns cat __TEMP_NS_BIG__ | nc -N 127.0.0.1 10003 +hostb ncat -4 -l 127.0.0.1 10003 > __TEMP_BIG__ +ns cat __TEMP_NS_BIG__ | ncat 127.0.0.1 10003 hostw hout HOST_MD5_BIG md5sum __TEMP_BIG__ | cut -d' ' -f1 check [ "__HOST_MD5_BIG__" = "__MD5_BIG__" ] test TCP/IPv4: ns to host (via tap): big transfer -hostb nc -4 -l 10003 > __TEMP_BIG__ +hostb ncat -4 -l 0.0.0.0 10003 > __TEMP_BIG__ nsout GW ip -j -4 route show|jq -rM '.[] | select(.dst == "default").gateway' -ns cat __TEMP_NS_BIG__ | nc -N __GW__ 10003 +ns cat __TEMP_NS_BIG__ | ncat __GW__ 10003 hostw hout HOST_MD5_BIG md5sum __TEMP_BIG__ | cut -d' ' -f1 check [ "__HOST_MD5_BIG__" = "__MD5_BIG__" ] @@ -44,50 +44,50 @@ check [ "__HOST_MD5_BIG__" = "__MD5_BIG__" ] test TCP/IPv4: host to ns: small transfer temp TEMP_SMALL temp TEMP_NS_SMALL -nsb nc -4 -l 10002 > __TEMP_NS_SMALL__ +nsb ncat -4 -l 127.0.0.1 10002 > __TEMP_NS_SMALL__ host dd if=/dev/urandom bs=2k count=1 > __TEMP_SMALL__ -host cat __TEMP_SMALL__ | nc -N 127.0.0.1 10002 +host cat __TEMP_SMALL__ | ncat 127.0.0.1 10002 nsw hout MD5_SMALL md5sum __TEMP_SMALL__ | cut -d' ' -f1 nsout NS_MD5_SMALL md5sum __TEMP_NS_SMALL__ | cut -d' ' -f1 check [ "__NS_MD5_SMALL__" = "__MD5_SMALL__" ] test TCP/IPv4: ns to host (spliced): small transfer -hostb nc -4 -l 10003 > __TEMP_SMALL__ -ns cat __TEMP_NS_SMALL__ | nc -N 127.0.0.1 10003 +hostb ncat -4 -l 127.0.0.1 10003 > __TEMP_SMALL__ +ns cat __TEMP_NS_SMALL__ | ncat 127.0.0.1 10003 hostw hout HOST_MD5_SMALL md5sum __TEMP_SMALL__ | cut -d' ' -f1 check [ "__HOST_MD5_SMALL__" = "__MD5_SMALL__" ] test TCP/IPv4: ns to host (via tap): small transfer -hostb nc -4 -l 10003 > __TEMP_SMALL__ +hostb ncat -4 -l 0.0.0.0 10003 > __TEMP_SMALL__ nsout GW ip -j -4 route show|jq -rM '.[] | select(.dst == "default").gateway' -ns cat __TEMP_NS_SMALL__ | nc -N __GW__ 10003 +ns cat __TEMP_NS_SMALL__ | ncat __GW__ 10003 hostw hout HOST_MD5_SMALL md5sum __TEMP_SMALL__ | cut -d' ' -f1 check [ "__HOST_MD5_SMALL__" = "__MD5_SMALL__" ] test TCP/IPv6: host to ns: big transfer -nsb nc -6 -l 10002 > __TEMP_NS_BIG__ -host cat __TEMP_BIG__ | nc -N ::1 10002 +nsb ncat -6 -l ::1 10002 > __TEMP_NS_BIG__ +host cat __TEMP_BIG__ | ncat ::1 10002 nsw hout MD5_BIG md5sum __TEMP_BIG__ | cut -d' ' -f1 nsout NS_MD5_BIG md5sum __TEMP_NS_BIG__ | cut -d' ' -f1 check [ "__NS_MD5_BIG__" = "__MD5_BIG__" ] test TCP/IPv6: ns to host (spliced): big transfer -hostb nc -6 -l 10003 > __TEMP_BIG__ -ns cat __TEMP_NS_BIG__ | nc -N ::1 10003 +hostb ncat -6 -l ::1 10003 > __TEMP_BIG__ +ns cat __TEMP_NS_BIG__ | ncat ::1 10003 hostw hout HOST_MD5_BIG md5sum __TEMP_BIG__ | cut -d' ' -f1 check [ "__HOST_MD5_BIG__" = "__MD5_BIG__" ] nsw test TCP/IPv6: ns to host (via tap): big transfer -hostb nc -6 -l 10003 > __TEMP_BIG__ +hostb ncat -6 -l :: 10003 > __TEMP_BIG__ nsout GW6 ip -j -6 route show|jq -rM '.[] | select(.dst == "default").gateway' nsout IFNAME ip -j link show | jq -rM '.[] | select(.link_type == "ether").ifname' -ns cat __TEMP_NS_BIG__ | nc -N __GW6__%__IFNAME__ 10003 +ns cat __TEMP_NS_BIG__ | ncat __GW6__%__IFNAME__ 10003 hostw hout HOST_MD5_BIG md5sum __TEMP_BIG__ | cut -d' ' -f1 check [ "__HOST_MD5_BIG__" = "__MD5_BIG__" ] @@ -95,24 +95,24 @@ check [ "__HOST_MD5_BIG__" = "__MD5_BIG__" ] test TCP/IPv6: host to ns: small transfer temp TEMP_SMALL temp TEMP_NS_SMALL -nsb nc -6 -l 10002 > __TEMP_NS_SMALL__ +nsb ncat -6 -l ::1 10002 > __TEMP_NS_SMALL__ host dd if=/dev/urandom bs=2k count=1 > __TEMP_SMALL__ -host cat __TEMP_SMALL__ | nc -N ::1 10002 +host cat __TEMP_SMALL__ | ncat ::1 10002 nsw hout MD5_SMALL md5sum __TEMP_SMALL__ | cut -d' ' -f1 nsout NS_MD5_SMALL md5sum __TEMP_NS_SMALL__ | cut -d' ' -f1 check [ "__NS_MD5_SMALL__" = "__MD5_SMALL__" ] test TCP/IPv6: ns to host (spliced): small transfer -hostb nc -6 -l 10003 > __TEMP_SMALL__ -ns cat __TEMP_NS_SMALL__ | nc -N ::1 10003 +hostb ncat -6 -l ::1 10003 > __TEMP_SMALL__ +ns cat __TEMP_NS_SMALL__ | ncat ::1 10003 hostw hout HOST_MD5_SMALL md5sum __TEMP_SMALL__ | cut -d' ' -f1 check [ "__HOST_MD5_SMALL__" = "__MD5_SMALL__" ] test TCP/IPv6: ns to host (via tap): small transfer -hostb nc -6 -l 10003 > __TEMP_SMALL__ -ns cat __TEMP_NS_SMALL__ | nc -N __GW6__%__IFNAME__ 10003 +hostb ncat -6 -l :: 10003 > __TEMP_SMALL__ +ns cat __TEMP_NS_SMALL__ | ncat __GW6__%__IFNAME__ 10003 hostw hout HOST_MD5_SMALL md5sum __TEMP_SMALL__ | cut -d' ' -f1 check [ "__HOST_MD5_SMALL__" = "__MD5_SMALL__" ] diff --git a/test/udp/pasta b/test/udp/pasta index c26cea9..3123c42 100644 --- a/test/udp/pasta +++ b/test/udp/pasta @@ -12,17 +12,18 @@ # Author: Stefano Brivio onlyfor pasta -nstools nc tee grep cat ip jq md5sum cut -htools printf dd nc tee grep cat ip jq md5sum cut +nstools ncat tee grep cat ip jq md5sum cut +htools printf dd ncat tee grep cat ip jq md5sum cut test UDP/IPv4: host to ns temp TEMP temp TEMP_NS temp NC_PID ns :> __TEMP_NS__ -nsb (nc -u -q1 -4 -l 10002 & echo $! > __NC_PID__) | tee __TEMP_NS__ | (grep -qm1 "END_OF_TEST" && kill $(cat __NC_PID__)) +nsb (ncat -u -4 -l 127.0.0.1 10002 & echo $! > __NC_PID__) | tee __TEMP_NS__ | (grep -qm1 "END_OF_TEST" && kill $(cat __NC_PID__)) host dd if=/dev/urandom bs=1k count=5 > __TEMP__ && printf "\nEND_OF_TEST\n" >> __TEMP__ -host cat __TEMP__ | nc -u -q1 -N 127.0.0.1 10002 + +host cat __TEMP__ | ncat -u 127.0.0.1 10002 nsw hout MD5 md5sum __TEMP__ | cut -d' ' -f1 nsout NS_MD5 md5sum __TEMP_NS__ | cut -d' ' -f1 @@ -30,26 +31,26 @@ check [ "__NS_MD5__" = "__MD5__" ] test UDP/IPv4: ns to host (recvmmsg/sendmmsg) host :> __TEMP__ -hostb (nc -u -q1 -4 -l 10003 & echo $! > __NC_PID__) | tee __TEMP__ | (grep -qm1 "END_OF_TEST" && kill $(cat __NC_PID__)) +hostb (ncat -u -4 -l 127.0.0.1 10003 & echo $! > __NC_PID__) | tee __TEMP__ | (grep -qm1 "END_OF_TEST" && kill $(cat __NC_PID__)) sleep 1 -ns cat __TEMP_NS__ | nc -u -q1 -N 127.0.0.1 10003 +ns cat __TEMP_NS__ | ncat -u 127.0.0.1 10003 hostw hout HOST_MD5 md5sum __TEMP__ | cut -d' ' -f1 check [ "__HOST_MD5__" = "__MD5__" ] test UDP/IPv4: ns to host (via tap) host :> __TEMP__ -hostb (nc -u -q1 -4 -l 10003 & echo $! > __NC_PID__) | tee __TEMP__ | (grep -qm1 "END_OF_TEST" && kill $(cat __NC_PID__)) +hostb (ncat -u -4 -l 0.0.0.0 10003 & echo $! > __NC_PID__) | tee __TEMP__ | (grep -qm1 "END_OF_TEST" && kill $(cat __NC_PID__)) nsout GW ip -j -4 route show|jq -rM '.[] | select(.dst == "default").gateway' -ns cat __TEMP_NS__ | nc -u -q1 -N __GW__ 10003 +ns cat __TEMP_NS__ | ncat -u __GW__ 10003 hostw hout HOST_MD5 md5sum __TEMP__ | cut -d' ' -f1 check [ "__HOST_MD5__" = "__MD5__" ] test UDP/IPv6: host to ns ns :> __TEMP_NS__ -nsb (nc -u -q1 -6 -l 10002 & echo $! > __NC_PID__) | tee __TEMP_NS__ | (grep -qm1 "END_OF_TEST" && kill $(cat __NC_PID__)) -host cat __TEMP__ | nc -u -q1 -N ::1 10002 +nsb (ncat -u -6 -l ::1 10002 & echo $! > __NC_PID__) | tee __TEMP_NS__ | (grep -qm1 "END_OF_TEST" && kill $(cat __NC_PID__)) +host cat __TEMP__ | ncat -u ::1 10002 nsw hout MD5 md5sum __TEMP__ | cut -d' ' -f1 nsout NS_MD5 md5sum __TEMP_NS__ | cut -d' ' -f1 @@ -57,9 +58,9 @@ check [ "__NS_MD5__" = "__MD5__" ] test UDP/IPv6: ns to host (recvmmsg/sendmmsg) host :> __TEMP__ -hostb (nc -u -q1 -6 -l 10003 & echo $! > __NC_PID__) | tee __TEMP__ | (grep -qm1 "END_OF_TEST" && kill $(cat __NC_PID__)) +hostb (ncat -u -6 -l ::1 10003 & echo $! > __NC_PID__) | tee __TEMP__ | (grep -qm1 "END_OF_TEST" && kill $(cat __NC_PID__)) sleep 1 -ns cat __TEMP_NS__ | nc -u -q1 -N ::1 10003 +ns cat __TEMP_NS__ | ncat -u ::1 10003 hostw hout HOST_MD5 md5sum __TEMP__ | cut -d' ' -f1 check [ "__HOST_MD5__" = "__MD5__" ] @@ -67,10 +68,10 @@ nsw test UDP/IPv6: ns to host (via tap) host :> __TEMP__ -hostb (nc -u -q1 -6 -l 10003 & echo $! > __NC_PID__) | tee __TEMP__ | (grep -qm1 "END_OF_TEST" && kill $(cat __NC_PID__)) +hostb (ncat -u -6 -l :: 10003 & echo $! > __NC_PID__) | tee __TEMP__ | (grep -qm1 "END_OF_TEST" && kill $(cat __NC_PID__)) nsout GW6 ip -j -6 route show|jq -rM '.[] | select(.dst == "default").gateway' nsout IFNAME ip -j link show | jq -rM '.[] | select(.link_type == "ether").ifname' -ns cat __TEMP_NS__ | nc -u -q1 -N __GW6__%__IFNAME__ 10003 +ns cat __TEMP_NS__ | ncat -u __GW6__%__IFNAME__ 10003 hostw hout HOST_MD5 md5sum __TEMP__ | cut -d' ' -f1 check [ "__HOST_MD5__" = "__MD5__" ]