Zurück zur Übersicht

Begriff

Host Network

Containerization Networking S2
2 Quellen 0 Lernpfade 1 Backlink enriched

Warum wichtig?

Dieser Begriff ist ein Knoten im SengakujiWorks-Wissensnetz. Nutze Level 0 für die erste Einordnung, Level 1 für Praxis, Level 2 für technische Struktur und Level 3 für Grenzen, Fallstricke und Expertenkontext.

Normalerweise leben Container in ihrer eigenen Blase (eigenes Netzwerk, eigene IP). Mit Host Network platzt die Blase. Der Container teilt sich die Netzwerkkarte direkt mit dem Computer (Host), auf dem er läuft. Er bekommt keine eigene IP-Adresse. Wenn der Container Port 80 öffnet, ist Port 80 auf dem Host offen. Es ist so, als würdest du das Programm direkt auf dem Server installieren, ohne Container-Netzwerk dazwischen. Es ist extrem schnell (kein Overhead), aber gefährlich (Port-Konflikte).

Merksatz: Ein Netzwerkmodus in Docker/Kubernetes, bei dem die Netzwerkisolation des Containers aufgehoben wird und er den Netzwerkstapel (IP, Ports) des Hosts direkt mitnutzt.


Quick-Check

  1. Funktioniert DNS?
    Ja, aber anders. Der Container nutzt /etc/resolv.conf vom Host. Er kann keine Kubernetes-Services (db.default.svc) mehr auflösen (außer man biegt DNS manuell um), weil er nicht mehr im Pod-Netzwerk ist.
  2. Unterschied zu Port Mapping (-p 80:80)?
    Bei Port Mapping ist der Container isoliert, nur ein Port wird durch die Firewall gebohrt (Loch). Bei Host Network ist die ganze Wand weg. Port Mapping ist für Apps, Host Network für Infrastruktur.
  3. Mac/Windows?
    Auf Docker Desktop (Mac/Win) funktioniert --network host NICHT so wie unter Linux. Der Container landet im Netz der Linux VM, nicht auf deinem Windows-Laptop. Port 80 ist dann auf dem Laptop nicht erreichbar. Das verwirrt jeden Anfänger.