Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
Nächste ÜberarbeitungBeide Seiten der Revision
linux:docker [2022/07/31 13:31] – [Netzwerk] adilinux:docker [2022/08/09 15:00] – [MACVLAN] adi
Zeile 168: Zeile 168:
 Container können mit dem Parameter ''ip_address'' (docker-compose) eine eigene feste IP-Adresse besitzen. Container können mit dem Parameter ''ip_address'' (docker-compose) eine eigene feste IP-Adresse besitzen.
 Soll ein DHCP-Server die IP-Adressen verwalten, so muss man bedenken, dass sich die MAC-Adresse eines Containers ändert, wenn dieser oder der Docker-Daemon neugestartet wird. Soll ein DHCP-Server die IP-Adressen verwalten, so muss man bedenken, dass sich die MAC-Adresse eines Containers ändert, wenn dieser oder der Docker-Daemon neugestartet wird.
-Dies kann mit dem Parameter ''mac_address'' (docker-compose) angepasst werden und eine ständige MAC-Adresse vergeben werden.+Dies kann mit dem Parameter ''mac_address'' (docker-compose: **IST IN VERSION 3 DEPRECATED**) angepasst werden und eine eindeutige MAC-Adresse vergeben werden.
  
-MAC-Adressen werden vom Docker-Daemon generiert. Hier ein Auszug aus der [[https://docs.docker.com/engine/reference/run/#network-settings|Docker Reference]]: <code>By default, the MAC address is generated using the IP address allocated to the container. You can set the container’s MAC address explicitly by providing a MAC address via the --mac-address parameter (format:12:34:56:78:9a:bc).Be aware that Docker does not check if manually specified MAC addresses are unique.</code>+MAC-Adressen werden vom Docker-Daemon generiert. Hier ein Auszug aus der [[https://docs.docker.com/engine/reference/run/#network-settings|Docker Reference]]: <code>By default, the MAC address is generated using the IP address allocated to the container. 
 +You can set the container’s MAC address explicitly by providing a MAC address via the --mac-address parameter (format:12:34:56:78:9a:bc). 
 +Be aware that Docker does not check if manually specified MAC addresses are unique.</code> 
 + 
 +Eine einzigartige MAC-Adresse kann sich man aber relativ leicht zusammenstellen. 
 +Wie immer geben die ersten 3 Stellen der MAC-Adresse den Hersteller (also die OUI => Organizationally Unique Identifier, „organisatorisch eindeutige Kennung“) an, bei Docker ist dies aber nicht der Fall. 
 +Ein Docker-Daemon hat in diesem Fall die ersten 2 Stellen generiert, es geht also nur um die letzten 4 Stellen. 
 + 
 +Dazu nimmt man einen Dezimal / Hexadezimal Rechner und wandelt die letzten 4 Oktette der IP-Adresse des Containers um. 
 + 
 +Beispiel: 
 +generierte MAC-Adresse: ''02:42:c0:a8:8a:0b'' 
 +Hier sind die Stellen ''02:42'' die festen Angaben, die letzten 4 würden in Dezimal folgendes ergeben ''192:168:138:11''
 +Dies ist die IP-Adresse des Containers. 
 + 
 +Hat man einen DCHP-Server, kann man bei diesem eine IP-Adresse für einen Container reservieren. 
 +Danach rechnet man diese in Hexadezimal um und erhält somit die eindeutige MAC-Adresse. 
 + 
 +=== Route von/zu Docker-Host === 
 +Generell sind Docker Container, welche sich in einem macvlan befinden, vom Docker Host isoliert (obwohl beide vielleicht im selben Subnetz sind. 
 +Damit man die Verbindung wiederherstellen kann, muss eine Netzworkbridge mit einer entspr. Route zum Container/-Netzwerk erstellt werden. 
 +Hier ein Beispiel (Quelle: [[https://www.networkshinobi.com/docker-host-cant-access-containers-running-on-macvlan/]]): 
 +<code>ip link add <NAME_CUSTOM_BRIDGE_DEVICE> link <PHYSICAL_LINKED_DEVICE_TO_NETWORK> type macvlan mode bridge 
 +ip addr add <IP_ADDRESS_FROM_MACVLAN> dev <NAME_CUSTOM_BRIDGE_DEVICE> 
 +ip link set <NAME_CUSTOM_BRIDGE_DEVICE> up 
 +ip route add <IP_ADDRESS_FROM_CONTAINER_IN_MACVLAN>/32 dev <NAME_CUSTOM_BRIDGE_DEVICE></code>
 ===== Images und Container ===== ===== Images und Container =====
  
Navigation
Drucken/exportieren
QR-Code
QR-Code Docker (erstellt für aktuelle Seite)