Files
Linux_post_install/bin/pos-network-ip
T
2026-07-28 10:28:11 -04:00

47 lines
766 B
Bash
Executable File

#!/usr/bin/env bash
set -euo pipefail
usage() {
cat <<EOF
Usage: pos network ip
Display network interfaces, default route, and public IP.
EOF
exit 0
}
case "${1:-}" in
-h|--help) usage ;;
esac
SEP() { printf '\u2550%.0s' $(seq 1 47); echo; }
SEP
echo "Network Interfaces"
SEP
ip -o -4 addr show | while read -r _ ifname _ ipaddr _; do
printf "%-20s %s\n" "$ifname" "${ipaddr%%/*}"
done
echo
SEP
echo "Default Route"
SEP
gateway=$(ip route | awk '/default/ {print $3; exit}')
iface=$(ip route | awk '/default/ {print $5; exit}')
printf "%-20s %s\n" "Interface" "${iface:-N/A}"
printf "%-20s %s\n" "Gateway" "${gateway:-N/A}"
echo
SEP
echo "Public IP"
SEP
curl -4 -s --max-time 5 https://ifconfig.me 2>/dev/null || echo "Unavailable"
echo