架构师_程序员_码农网

B Passwort abrufen
Registrieren

QQ登录

Nur ein Schritt zum Start

Suche
Ansicht:2439|Antwort: 3
打印 上一主题 下一主题

Docker verwendet Macvlan, um eine separate IP-Adresse für Container zu setzen.

[Link kopieren]
A 跳转到指定楼层
Besitzer
发表于 2022-11-19 12:01:56|只看该作者回帖奖励 | UmgekehrtesBlättern|Lesemodus
Anforderung: Ich möchte Docker-Containern über den DHCP-Dienst des Routers unabhängige LAN-IP-Adressen zuweisen, damit ich die entwickelte ASP.NET Core-Anwendung auf mehreren Servern bereitstellen kann (ich muss die Anwendung auf mehreren Servern bereitstellen, um Hochverfügbarkeit zu erreichen), und dann können alle von ihnen miteinander kommunizieren.
Einige Anwendungen, insbesondere Legacy-Anwendungen oder Anwendungen, die den Netzwerkverkehr überwachen, erwarten eine direkte Verbindung mit dem physischen Netzwerk. In diesem Fall können Sie den macvlan-Netzwerktreiber verwenden, um der virtuellen Netzwerkschnittstelle jedes Containers eine MAC-Adresse zuzuweisen, so dass es so aussieht, als ob es sich um eine physische Netzwerkschnittstelle handelt, die direkt mit dem physischen Netzwerk verbunden ist. In diesem Fall müssen Sie eine physische Schnittstelle auf Ihrem Docker-Host für macvlan. und angeben. Das Subnetz und das Gateway macvlan. Sie können Ihr Netzwerk sogar macvlan isolieren, indem Sie eine andere physische Netzwerkschnittstelle verwenden.


[Können NICs auch virtualisiert werden? NIC-Virtualisierungstechnologie macvlan im Detail
h ttps:// www.itsvse.com/thread-10388-1-1.html
Zunächst müssen Sie die physische NIC des Host-Rechners so einstellen , dass sie den "Mixed Mode"-Modus zulässt. Nehmen Sie ESXI als Beispiel und stellen Sie den virtuellen Switch wie folgt ein:



Die Systemumgebung ist wie folgt:

CentOS Linux Version 7.9.2009 (Core)
Docker Version 20.10.20, Build 9fdeb9c


Installieren Sie den Docker-Dienst auf dem CentOS 7-Host. (ausgelassen)



Setzen Sie net.ipv4.ip_forward = 1, Sie können die aktuelle Konfiguration mit sysctl -a überprüfen, wenn es nicht 1 ist, ändern Sie es bitte auf 1, Tutorial ausgelassen. Der Hauptzweck besteht darin, zu prüfen, ob die von einer NIC empfangenen Informationen an andere NICs weitergeleitet werden können, wenn der Linux-Host mehr als eine NIC hat; wenn der Wert auf 1 gesetzt ist, kann er die Pakete weiterleiten.

Nach der Installation des Docker-Dienstes erstellen Sie ein macvlan-Netzwerk mit dem folgenden Befehl:

--ip-range: Legt die Teilmenge fest, die Docker zugewiesen werden soll 192.168.50.192/27, d. h. ein Bereich von 32 Adressen, der bei 192.168.50.192 beginnt und bei 192.168.50.223 endet.
--gateway: legt die Gateway-Adresse fest, normalerweise die IP-Adresse des Routers, bitte legen Sie sie entsprechend Ihrer eigenen Situation fest.
-o parent: übergeordnete Schnittstelle, d.h. der physische NIC-Name des Hosts, der je nach Situation über die IP-Adresse eingesehen werden kann.


Nachdem die Erstellung abgeschlossen ist, können Sie sie mit dem folgenden Befehl anzeigen:



Versuchen Sie, einen Busybox-Container zu starten und ihn mit folgendem Befehl so einzustellen, dass er das neu erstellte macvlan-Netzwerk verwendet:

Tipp: Wenn Sie die IP-Adresse für den Container festlegen müssen , verwenden Sie den Parameter --ip, Beispiel: --ip=192.168.50.210

Um die IP-Adresse eines Containers anzuzeigen, verwenden Sie den folgenden Befehl:



Natürlich ist es auch möglich, in den Container zu gehen und ihn mit dem folgenden Befehl zu betrachten:



Wir verwenden andere Rechner im LAN, um die IP-Adresse des Containers anzupingen, und wir können feststellen, dass wir durchpingen können, wie unten gezeigt:



Überprüfen Sie die IP- und MAC-Zuordnungstabelle des Routers. Sie können sehen, dass die Mac- und IP-Adresse des Docker-Containers mit der des Routers übereinstimmt, wie unten dargestellt:



Versuchen Sie, einen anderen redis-Container zu starten und stellen Sie ihn so ein, dass er das neu erstellte macvlan-Netzwerk mit dem folgenden Befehl verwendet:

CentOS-Host selbst hat auch eine Redis-Anwendung läuft, und verwendet auch Port 6379, erstellen wir eine neue Redis-Container-Anwendung auch Port 6379 verwenden, das heißt, die gleichen Host-Port 6379 von zwei verschiedenen ip hören, versuchen zu sehen, ob es funktionieren kann.

Die Testergebnisse sind normale Arbeit, wie unten gezeigt:





Referenz

h ttps:// docs.docker.com/network/macvlan/




Vorheriger Artikel [Turn] Können NICs auch virtualisiert werden? NIC-Virtualisierungstechnologie macvlan Details
Nächster Artikel :[Real-play] Remote-Desktop-Verbindung mit FRP Intranet Penetration
Der Code Bauer Netzwerk, nur in den Prozess der Praxis veröffentlicht, stieß auf technische Schwierigkeiten, nicht in die Irre führen andere.
sofa
发表于 2022-11-28 19:30:39|只看该作者
Ich bin mir nicht sicher, ob ich das schaffen werde, aber ich bin mir sicher, dass ich es schaffen werde.
Der Code Bauer Netzwerk, nur in den Prozess der Praxis veröffentlicht, stieß auf technische Schwierigkeiten, nicht in die Irre führen andere.
Bänke
发表于 2023-3-12 09:18:32|只看该作者
Ich bin mir nicht sicher, ob ich dazu in der Lage sein werde.
Der Code Bauer Netzwerk, nur in den Prozess der Praxis veröffentlicht, stieß auf technische Schwierigkeiten, nicht in die Irre führen andere.
Bodenbelag
发表于 2023-4-22 15:45:19|只看该作者
Danke fürs Teilen.
Ich bin mir nicht sicher, ob du in der Lage bist, das Beste daraus zu machen, aber ich bin sicher, dass du in der Lage sein wirst, das Beste daraus zu machen.
Sie müssen sich anmelden, bevor Sie zurückschreiben können Anmelden | Registrieren

D iese Version der integralen Regeln


HAFTUNGSAUSSCHLUSS: Alle Software, Programmiermaterialien oder Artikel, die von Code Farmer veröffentlicht werden, dürfen nur zu Lern- und Forschungszwecken verwendet werden; die oben genannten Inhalte dürfen nicht zu kommerziellen oder illegalen Zwecken verwendet werden, andernfalls müssen alle Konsequenzen von den Benutzern selbst getragen werden. Diese Seite informiert aus dem Netz, Urheberrechtsstreitigkeiten haben nichts mit dieser Seite zu tun. Sie müssen die oben genannten Inhalte innerhalb von 24 Stunden nach dem Herunterladen vollständig von Ihrem Computer entfernen. Wenn Ihnen das Programm gefällt, unterstützen Sie bitte die echte Software, kaufen Sie die Registrierung und erhalten Sie einen besseren echten Service. Bei Verstößen wenden Sie sich bitte per E-Mail an uns, damit wir uns darum kümmern können.

E-Mail To:help@itsvse.com

QQ| ( 鲁ICP备14021824号-2)|Sitemap

GMT+8, 2024-9-19 05:18

SchnellantwortZurück zum AnfangZurück zur Liste