2026-02-18 14:19:12 +01:00
2026-02-18 14:19:12 +01:00
2026-02-18 14:19:12 +01:00
2026-02-17 11:35:21 +01:00
2026-02-18 14:19:12 +01:00

Dockernet Inspector

Ein Bash-Script zur Verwaltung und Analyse von Docker-Netzwerken.

Beschreibung

Dockernet Inspector hilft bei der täglichen Arbeit mit Docker-Netzwerken und bietet vier Hauptfunktionen:

  1. Alle Netzwerke auflisten
  2. Netzwerk-Details inspizieren
  3. Belegte IPs pro Netzwerk anzeigen
  4. Belegte IPs in allen Netzwerken anzeigen (aufsteigend sortiert)

Beim Inspizieren eines Netzwerks werden u. a. folgende Informationen angezeigt:

  • Netzwerk-Driver (bridge, overlay, host, ...)
  • Bridge-Interface auf dem Host
  • Subnet und Gateway
  • Interface-Status (operstate)
  • RX/TX Netzwerk-Statistiken

Installation

  1. Repository klonen:
git clone https://git.techniverse.net/scriptos/dockernet-inspector.git
cd dockernet-inspector
  1. Script ausführbar machen:
chmod +x dockernet-inspector.v1.sh

Verwendung

Syntax

bash ./dockernet-inspector.v1.sh [BEFEHL] [OPTIONEN]

Verfügbare Befehle

Befehl Beschreibung
networks Listet alle verfügbaren Docker-Netzwerke auf
inspect <netzwerk> Zeigt detaillierte Informationen zu einem Netzwerk
ips <netzwerk> Zeigt alle belegten IPv4-Adressen im angegebenen Netzwerk
ips-all Zeigt alle belegten IPv4-Adressen in allen Docker-Netzwerken (aufsteigend)
<netzwerk> Alias für inspect <netzwerk> (Rückwärtskompatibilität)
help, -h, --help Zeigt die Hilfe an

Beispiele

# Alle Docker-Netzwerke auflisten
bash ./dockernet-inspector.v1.sh networks

# Netzwerk analysieren (explizit)
bash ./dockernet-inspector.v1.sh inspect bridge

# Netzwerk analysieren (Alias)
bash ./dockernet-inspector.v1.sh my-custom-network

# Belegte IPs eines Netzwerks
bash ./dockernet-inspector.v1.sh ips dockernet

# Belegte IPs in allen Netzwerken
bash ./dockernet-inspector.v1.sh ips-all

# Hilfe
bash ./dockernet-inspector.v1.sh help

Ausgabe-Beispiele

networks

Verfügbare Docker Netzwerke:
==============================
ID                          NAME      DRIVER    SCOPE
abcd1234efgh5678ijkl9012    bridge    bridge    local
mnop4567qrst8901uvwx2345    host      host      local
yzab3456cdef7890ghij1234    mynet     bridge    local

inspect

Docker-Netzwerk   : my-network
Driver            : bridge
Bridge-Interface  : br-1234567890ab
Subnet/Gateway    : 172.18.0.0/16 / 172.18.0.1
OperState         : up
RX bytes/packets  : 123456 / 789
TX bytes/packets  : 654321 / 456

ips

Belegte IP-Adressen im Netzwerk 'dockernet':
========================================
CONTAINER   IP
dozzle      172.16.0.95
grafana     172.16.0.129

ips-all

Belegte IP-Adressen in allen Netzwerken (aufsteigend):
=======================================================
NETZWERK                       CONTAINER          IP
dockernet                      dozzle             172.16.0.95
datagerry.dockernetwork.local  datagerry-nginx   172.16.14.10
matrixnetwork                  matrix-synapse-db  172.19.0.11

Fehlerbehandlung

Das Script gibt unter anderem folgende Fehlermeldungen aus:

  • Kein Befehl angegeben: Fehler: Befehl erforderlich. Verwendung: $0 networks|inspect|ips|ips-all|help
  • Keine Netzwerk-Angabe bei inspect: Fehler: Netzwerkname erforderlich. Verwendung: $0 inspect <docker-network-name>
  • Keine Netzwerk-Angabe bei ips: Fehler: Netzwerkname erforderlich. Verwendung: $0 ips <docker-network-name>
  • Netzwerk nicht gefunden: Fehler: Netzwerk '<name>' nicht gefunden.
  • Docker-Netzwerke konnten nicht abgerufen werden: Fehler: Docker Netzwerke konnten nicht abgerufen werden.

Voraussetzungen

  • Docker ist installiert und läuft
  • Bash (Version 4+ empfohlen)
  • Linux-Host (für /sys/class/net/ beim inspect-Befehl)

Technische Details

Das Script nutzt:

  • docker network ls und docker network inspect
  • sort -V für natürliche IP-Sortierung
  • column -t -s $'\t' für dynamisch ausgerichtete Tabellen
  • set -euo pipefail für robuste Script-Ausführung

Lizenz

Siehe LICENSE.

Autor

Patrick Asmus

Version

  • Version: 1.2.0
  • Datum: 18.02.2026
  • Modifikation: IP-Listen pro Netzwerk und netzwerkübergreifend hinzugefügt
Description
No description provided
Readme MIT 40 KiB
Languages
Shell 100%