From d8d98fbdc215d3748b9307dafba00416a5659de8 Mon Sep 17 00:00:00 2001 From: Michael Messner Date: Fri, 9 Oct 2026 17:37:47 +0200 Subject: [PATCH] tunctl -> ip tuntap --- helpers/helpers_emba_system_emulation.sh | 6 +++--- modules/L10_system_emulation.sh | 5 ++--- modules/S130_binary_map_builder.sh | 4 ++-- 3 files changed, 7 insertions(+), 8 deletions(-) diff --git a/helpers/helpers_emba_system_emulation.sh b/helpers/helpers_emba_system_emulation.sh index 5a5da694..9ed35e24 100755 --- a/helpers/helpers_emba_system_emulation.sh +++ b/helpers/helpers_emba_system_emulation.sh @@ -144,13 +144,13 @@ reset_network_emulation() { print_output "Deleting TAP device ${TAPDEV_0}..." "no_log" write_script_exec "echo -e \"Deleting TAP device ...\n\"" "${ARCHIVE_PATH}"/run.sh 0 fi - if [[ "${lEXECUTE}" -lt 2 ]] && [[ -f "${ARCHIVE_PATH}"/run.sh ]] && ! grep -q "tunctl -d ${TAPDEV_0}" "${ARCHIVE_PATH}"/run.sh >/dev/null; then + if [[ "${lEXECUTE}" -lt 2 ]] && [[ -f "${ARCHIVE_PATH}"/run.sh ]] && ! grep -q "ip tuntap del dev ${TAPDEV_0} mode tap" "${ARCHIVE_PATH}"/run.sh >/dev/null; then lEXECUTE_tmp=1 else lEXECUTE_tmp="${lEXECUTE}" fi - if [[ -f "${ARCHIVE_PATH}"/run.sh ]] && ! grep -q "tunctl -d ${TAPDEV_0}" "${ARCHIVE_PATH}"/run.sh >/dev/null; then - write_script_exec "tunctl -d ${TAPDEV_0}" "${ARCHIVE_PATH}"/run.sh "${lEXECUTE_tmp}" + if [[ -f "${ARCHIVE_PATH}"/run.sh ]] && ! grep -q "ip tuntap del dev ${TAPDEV_0} mode tap" "${ARCHIVE_PATH}"/run.sh >/dev/null; then + write_script_exec "ip tuntap del dev ${TAPDEV_0} mode tap" "${ARCHIVE_PATH}"/run.sh "${lEXECUTE_tmp}" fi } diff --git a/modules/L10_system_emulation.sh b/modules/L10_system_emulation.sh index 4bfc0b18..82e0e756 100755 --- a/modules/L10_system_emulation.sh +++ b/modules/L10_system_emulation.sh @@ -277,7 +277,7 @@ cleanup_tap() { mapfile -t lTAP_CLEAN_ARR < <(ifconfig | grep tap | cut -d: -f1 || true) for lTAP_TO_CLEAN in "${lTAP_CLEAN_ARR[@]}"; do print_output "[*] Cleaning up TAP interface ${lTAP_TO_CLEAN}" - tunctl -d "${lTAP_TO_CLEAN}" || print_error "[-] Error in tap cleanup" + ip tuntap del dev ${lTAP_TO_CLEAN} mode tap done } @@ -2132,8 +2132,7 @@ setup_network_emulation() { export HOSTNETDEV_0="${TAPDEV_0}" print_output "[*] Creating TAP device ${ORANGE}${TAPDEV_0}${NC} ..." write_script_exec "echo -e \"Creating TAP device ${TAPDEV_0}\n\"" "${ARCHIVE_PATH}"/run.sh 0 - write_script_exec "command -v tunctl > /dev/null || (echo \"Missing tunctl ... check your installation - install uml-utilities package\" && exit 1)" "${ARCHIVE_PATH}"/run.sh 0 - write_script_exec "tunctl -t ${TAPDEV_0}" "${ARCHIVE_PATH}"/run.sh 1 + write_script_exec "ip tuntap add dev ${TAPDEV_0} mode tap" "${ARCHIVE_PATH}"/run.sh 1 if [[ "${lVLAN_ID}" != "NONE" ]]; then HOSTNETDEV_0="${TAPDEV_0}"."${lVLAN_ID}" diff --git a/modules/S130_binary_map_builder.sh b/modules/S130_binary_map_builder.sh index 4140c4ca..daef1936 100755 --- a/modules/S130_binary_map_builder.sh +++ b/modules/S130_binary_map_builder.sh @@ -235,12 +235,12 @@ system_emulator_init_runner() { ip route flush dev "${lTAP_INTERFACE}" ip link set "${lTAP_INTERFACE}" down ip link delete "${lTAP_INTERFACE}" - tunctl -d "${lTAP_INTERFACE}" + ip tuntap del dev "${lTAP_INTERFACE}" mode tap else sudo ip route flush dev "${lTAP_INTERFACE}" sudo ip link set "${lTAP_INTERFACE}" down sudo ip link delete "${lTAP_INTERFACE}" - sudo tunctl -d "${lTAP_INTERFACE}" + sudo ip tuntap del dev "${lTAP_INTERFACE}" mode tap fi fi