Denne artikel er en spejling af maskinoversættelse, klik venligst her for at springe til den oprindelige artikel.

Udsigt: 5217|Svar: 3

Docker bruger Macvlan til at sætte en uafhængig IP-adresse for containere

[Kopier link]
Opslået på 19/11/2022 12.01.56 | | | |
Krav: Jeg vil tildele en uafhængig LAN-IP-adresse til Docker-containeren via routerens DHCP-tjeneste, så den udviklede ASP.NET Core-applikation kan distribueres til flere servere (applikationen skal distribueres til flere servere for at opnå høj tilgængelighed), og derefter kan de overføres til hinanden.
Nogle applikationer, især ældre applikationer eller dem, der overvåger netværkstrafik, forventer at kunne forbinde direkte til det fysiske netværk. I dette tilfælde kan du bruge macvlan-netværksdriveren til at tildele en MAC-adresse til hver containers virtuelle netværksinterface, så det ligner et fysisk netværksinterface, der forbinder direkte til det fysiske netværk. I dette tilfælde skal du specificere en fysisk grænseflade på din Docker-host til macvlan. Og. subnets og gateways i Macvlan. Du kan endda isolere dit netværk med en anden fysisk netværksgrænseflade.


Kan netværkskortet også virtualiseres? Detaljeret forklaring af netværkskort-virtualiseringsteknologi Macvlan
https://www.itsvse.com/thread-10388-1-1.html
Først skal du sætte det fysiske netværkskort for værtsmaskinens netværkskortTillader "promiskuøs tilstand" tilstandFor eksempel, hvis vi bruger ESXI som eksempel, opsæt en virtuel switch som følger:



Systemmiljøet er som følger:

CentOS Linux udgivelse 7.9.2009 (Core)
Docker version 20.10.20, build 9fdeb9c


Installer Docker-tjenesten på CentOS 7-hosten. (udeladt)



Rejsenet.ipv4.ip_forward = 1, du kan se den nuværende konfiguration via sysctl -a, hvis det ikke er 1, så ændr den venligst til 1, tutorialen er udeladt. Hovedformålet er at afgøre, om informationen modtaget af ét netværkskort kan videregives til andre netværkskort, når Linux-værten har flere netværkskort, og hvis den er sat til 1, kan pakkevideresendelse udføres.

Når Docker-tjenesten er installeret, opret et macvlan-netværk med følgende kommando:

--ip-range: Besluttede at tildele delmængden til Docker 192.168.50.192/27, som er et interval på 32 adresser, der starter ved 192.168.50.192 og slutter ved 192.168.50.223.
--gateway: Sæt gateway-adressen, normalt routerens IP-adresse, sæt den venligst efter din faktiske situation
-o forælder: Forældergrænsefladen, som er navnet på værtens fysiske NIC-kort, kan ses via IP A i henhold til den faktiske situation.


Når oprettelsen er færdig, kan du se den med følgende kommando:



Prøv at starte en busybox-container og opsætte et netværk med den nyoprettede macvlan med følgende kommando:

Tip: Hvis nødvendigt, giv beholderenFor at sætte IP-adressen skal du bruge --ip-parameteren, for eksempel: --ip=192.168.50.210

Du kan se IP-adressen på en container ved at bruge følgende kommando:



Selvfølgelig kan du også gå ind i beholderen for at se det med følgende kommando:



ViBrug andre maskiner på LAN'et, prøv at pinge containerens IP-adresse, kan du opdage, at du kan pinge, som vist i figuren nedenfor:



Hvis du kigger på routerens IP- og MAC-mapping-tabelle, kan du se, at MAC/IP-adressen på docker-containeren er den samme som på routeren, som vist i figuren nedenfor:



Prøv at starte en Redis-container igen og opsæt det nye MacVLAN-netværk med følgende kommando:

CentOS-værten selv har også en redis-applikation kørende og bruger port 6379, og vi opretter en redis container-applikation, der også bruger port 6379, altsåDen samme værtport 6379 lyttes til af to forskellige IP-adresser, prøv at se, om det virker.

Testresultaterne fungerer alle normalt, som vist i figuren nedenfor:





Ressourcer

Hyperlink-login er synlig.




Tidligere:Kan netværkskortet også virtualiseres? Detaljeret forklaring af netværkskort-virtualiseringsteknologi Macvlan
Næste:[Øvelse] Brug FRP-intranet-penetration til at opnå fjernskrivebordsforbindelse
Opslået på 28/11/2022 19.30.39 |
Lær at lære...
Opslået på 12/03/2023 09.18.32 |
Lær at lære
Opslået på 22/04/2023 15.45.19 |
Tak fordi du delte.
Ansvarsfraskrivelse:
Al software, programmeringsmaterialer eller artikler udgivet af Code Farmer Network er kun til lærings- og forskningsformål; Ovenstående indhold må ikke bruges til kommercielle eller ulovlige formål, ellers skal brugerne bære alle konsekvenser. Oplysningerne på dette site kommer fra internettet, og ophavsretstvister har intet med dette site at gøre. Du skal slette ovenstående indhold fuldstændigt fra din computer inden for 24 timer efter download. Hvis du kan lide programmet, så understøt venligst ægte software, køb registrering og få bedre ægte tjenester. Hvis der er nogen overtrædelse, bedes du kontakte os via e-mail.

Mail To:help@itsvse.com