Netzwerk-Grundlagen

Docker für Fortgeschrittene

Mike Metzger

Data Engineering Consultant

Was ist Networking?

  • Ein Computernetzwerk besteht aus Systemen, die über eine definierte Methode kommunizieren
  • Unterschiedliche Ebenen physischer oder logischer Kommunikation, genannt Protokolle
  • Häufige physische Netze: Ethernet und WiFi
  • Logische Netzwerke: TCP/IP, HTTP und SMTP
  • Netzwerke sind in Schichten/Ebenen definiert, oft „Networking-Stack" genannt

Netzwerk-Hardware für Computer

1 Photo by Jordan Harrison on Unsplash.
Docker für Fortgeschrittene

Netzwerkbegriffe

  • Host
    • Allgemeiner Begriff für einen Computer
  • Netzwerk
    • Gruppe von Hosts
  • Schnittstelle
    • Tatsächliche Verbindung von einem Host zu einem Netzwerk, z. B. Ethernet oder WiFi
    • Kann virtuell sein, also rein softwarebasiert
  • LAN
    • Local Area Network, Gruppe von Rechnern an einem Standort
  • VLAN
    • Virtuelles LAN, also ein Software-LAN
Docker für Fortgeschrittene

Internet Protocol

  • IP
    • Internet Protocol, Methode zur Verbindung zwischen Netzwerken mit IP-Adressen
  • IPv4
    • IP-Version mit 4,2 Milliarden Adressen, inzwischen ausgeschöpft
  • IPv6
    • Neuere IP-Version mit 2^128 Adressen, noch in Einführung
IPv4: 10.10.10.1

IPv6: 2001:0db8:85a3:0000:0000:8a2e:0370:7334
Docker für Fortgeschrittene

TCP / UDP

  • TCP
    • Transmission Control Protocol, für zuverlässige Kommunikation zwischen Hosts in IP-Netzen
  • UDP
    • User Datagram Protocol, für Kommunikation zwischen Hosts über IP, wenn Zuverlässigkeit nicht erforderlich ist
Docker für Fortgeschrittene

Ports

  • Port
    • Adressiert Dienste auf einem Host; Wert zwischen 0 und 65535; für Kommunikation via TCP oder UDP
    • Ports unter 1024 sind meist privilegierten Konten vorbehalten
    • Werte über 1024 sind meist kurzlebige/temporäre Ports
    • Anwendungen lauschen auf einem Port.
Docker für Fortgeschrittene

Anwendungsprotokolle

  • HTTP/HTTPS
    • Anwendungsprotokoll; standardmäßig TCP-Port 80 fürs Web, sichere Variante auf TCP 443
  • SMTP
    • E-Mail-Transferprotokoll über TCP-Port 25
  • SNMP
    • Netzwerkmanagement-Protokoll über UDP-Port 161
Docker für Fortgeschrittene

Docker und Networking

  • Kann zwischen Containern kommunizieren
  • Kann mit dem Hostsystem kommunizieren
  • Je nach Einstellungen auch mit externen Hosts
  • Typisch: Ports vom Container zum Host freigeben
  • Wirkt wie eine Übersetzung zwischen Containern und Hosts
Docker für Fortgeschrittene

Docker und IP

  • Container können IP-Adressen haben
  • Nutze ifconfig <interface> oder ip addr show <interface> im Container, um Adressen zu finden
  • Nutze ping -c <x> <host>, um die Verbindung zu prüfen
    • ping -c 3 myhost

ifconfig

Docker für Fortgeschrittene

Lass uns üben!

Docker für Fortgeschrittene

Preparing Video For Download...