From ce50842e3b7b42a51678923fd3bd8fb8d4560e35 Mon Sep 17 00:00:00 2001 From: Dirk Alders Date: Fri, 25 Jul 2025 21:45:31 +0200 Subject: [PATCH] Initial version in own repo --- netst | 6 +++++ netst.py | 67 ++++++++++++++++++++++++++++++++++++++++++++++++ reposinit | 6 +++++ requirements.txt | 3 +++ 4 files changed, 82 insertions(+) create mode 100755 netst create mode 100644 netst.py create mode 100755 reposinit create mode 100644 requirements.txt diff --git a/netst b/netst new file mode 100755 index 0000000..4eef6eb --- /dev/null +++ b/netst @@ -0,0 +1,6 @@ +#!/bin/bash +# +BASEPATH=$(dirname $0) + +$BASEPATH/venv/bin/python $BASEPATH/netst.py $* + diff --git a/netst.py b/netst.py new file mode 100644 index 0000000..9d201bd --- /dev/null +++ b/netst.py @@ -0,0 +1,67 @@ +import dns.resolver +import ifcfg +import json +import socket +import struct +import sys +import time + +interfaces = ifcfg.interfaces() + +def exit_device(): + print("Possible devices:", ", ".join(interfaces.keys())) + sys.exit(1) + + +def gateway(device): + with open("/proc/net/route") as fh: + # skip header + next(fh) + for line in fh: + routes = line.strip().split() + if routes[0] == device: + destination = socket.inet_ntoa(struct.pack("