Udostępnij za pośrednictwem


Sieć kontenerów systemu Windows

Dotyczy: Windows Server 2025, Windows Server 2022, Windows Server 2019, Windows Server 2016

Ważny

Zapoznaj się z siecią kontenerów w platformie Docker, aby uzyskać ogólne informacje o poleceniach, opcjach i składni w platformie Docker. Z wyjątkiem wszystkich przypadków opisanych w nieobsługiwanych funkcji i opcji sieciowychwszystkie polecenia sieciowe platformy Docker są obsługiwane w systemie Windows z taką samą składnią jak w systemie Linux. Jednak stosy sieciowe systemu Windows i Linux są różne, a w związku z tym niektóre polecenia sieciowe systemu Linux (na przykład ifconfig) nie są obsługiwane w systemie Windows.

Podstawowa architektura sieci

Ten temat zawiera omówienie sposobu tworzenia sieci hostów i zarządzania nimi na platformie Docker w systemie Windows. Kontenery systemu Windows działają podobnie do maszyn wirtualnych w odniesieniu do sieci. Każdy kontener ma wirtualną kartę sieciową (vNIC), która jest połączona z przełącznikiem wirtualnym Hyper-V (vSwitch). System Windows obsługuje pięć różnych sterowników sieci lub trybów, które można utworzyć za pomocą platformy Docker: nat, overlay, transparent, l2bridgei l2tunnel. W zależności od infrastruktury sieci fizycznej i wymagań sieciowych z jedną i wieloma hostami należy wybrać sterownik sieciowy, który najlepiej odpowiada Twoim potrzebom.

ilustruje stos sieciowy systemu Windows

Podczas pierwszego uruchomienia aparatu Docker tworzy on domyślną sieć NAT "nat", która używa wewnętrznego przełącznika wirtualnego i składnika systemu Windows o nazwie WinNAT. Jeśli istnieją wstępnie istniejące zewnętrzne przełączniki wirtualne na hoście, które zostały utworzone za pomocą programu PowerShell lub menedżera Hyper-V, będą one również dostępne dla platformy Docker przy użyciu przezroczystego sterownika sieciowego i można je zobaczyć po uruchomieniu polecenia docker network ls.

ilustruje polecenie PowerShell `docker network ls`

  • Przełącznik wewnętrzny to taki, który nie jest bezpośrednio połączony z adapterem sieciowym na hoście kontenera.
  • Przełącznik zewnętrzny vSwitch jest połączony bezpośrednio z kartą sieciową na hoście kontenera.

ilustruje polecenie programu PowerShell Get-VMSwitch

Sieć "nat" jest domyślną siecią dla kontenerów działających w systemie Windows. Wszystkie kontenery, które są uruchamiane w systemie Windows bez żadnych flag lub argumentów do implementacji określonych konfiguracji sieciowych, zostaną dołączone do domyślnej sieci 'nat' i automatycznie przypisane adres IP z wewnętrznego zakresu adresów IP sieci 'nat'. Domyślny wewnętrzny prefiks adresu IP używany dla "nat" to 172.16.0.0/16.

Zarządzanie siecią kontenerów za pomocą usługi sieciowej hosta

Usługa sieci hosta (HNS) i usługa obliczeniowa hosta (HCS) współpracują ze sobą w celu utworzenia kontenerów i dołączenia punktów końcowych do sieci. Możesz wchodzić w interakcję z HNS za pomocą modułu pomocniczego PowerShell .

Tworzenie sieci

  • Usługa HNS tworzy przełącznik wirtualny Hyper-V dla każdej sieci
  • Usługa HNS tworzy translacje adresów sieciowych i puli adresów IP zgodnie z wymaganiami.

Tworzenie punktu końcowego

  • Usługa HNS tworzy przestrzeń nazw sieci dla każdego punktu końcowego kontenera.
  • Usługa HNS/HCS umieszcza v(m)NIC w przestrzeni nazw sieci
  • Usługa HNS tworzy porty (vSwitch)
  • Usługa HNS przypisuje adres IP, informacje DNS, trasy itp. (w trybie sieciowym) do punktu końcowego

Tworzenie zasad

  • Dla domyślnej sieci NAT, usługa HNS tworzy reguły przekazywania portów WinNAT i mapowania z odpowiednimi regułami Zezwalania na zaporę systemu Windows.
  • W przypadku wszystkich innych sieci usługa HNS korzysta z wirtualnej platformy filtrowania (VFP) na potrzeby tworzenia zasad, w tym równoważenia obciążenia, list ACL i hermetyzacji. Aby uzyskać więcej informacji na temat interfejsów API usługi HNS i schematu, zobacz interfejs API usługi Host Compute Network (HCN) dla maszyn wirtualnych i kontenerów.

Ilustruje stos zarządzania HNS

Nieobsługiwane funkcje i opcje sieciowe

Następujące opcje sieciowe są obecnie NIE obsługiwane w systemie Windows:

  • W systemie Windows Server 2022 kontenery systemu Windows mają następującą obsługę sieci IPv6:
    • Kontenery podłączone do sieci typu l2bridge obsługują stos IPv6.
    • Kontenery dołączone do sieci przezroczystych obsługują komunikację przy użyciu IPv6 z samodzielnie przypisanymi adresami IP, ale nie mają wsparcia dla przypisywania adresów IP dostarczanego przez HNS ani dla innych usług sieciowych, takich jak równoważenie obciążenia i listy kontroli dostępu (ACL).
  • Kontenery systemu Windows dołączone do sieci NAT i sieci typu overlay nie obsługują komunikacji za pośrednictwem protokołu IPv6.
  • Zaszyfrowana komunikacja kontenera za pośrednictwem protokołu IPsec.
  • tryb hosta sieci.
  • Praca sieciowa w zwirtualizowanej infrastrukturze platformy Azure za pośrednictwem transparentnego sterownika sieci.
Polecenie Nieobsługiwana opcja
docker run --ip6, --dns-option
docker network create --aux-address, --internal, --ip-range, --ipam-driver, --ipam-opt, --ipv6, --opt encrypted