Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Şunlar için geçerlidir: Windows Server 2025, Windows Server 2022, Windows Server 2019, Windows Server 2016
Kullanıcılar, Windows üzerinde Docker tarafından oluşturulan varsayılan 'nat' ağından yararlanmaya ek olarak özel kapsayıcı ağları tanımlayabilir. Kullanıcı tanımlı ağlar Docker CLI docker network create -d <NETWORK DRIVER TYPE> <NAME> komutu kullanılarak oluşturulabilir. Windows'da aşağıdaki ağ sürücüsü türleri kullanılabilir:
NAT ağ sürücüsü
'nat' sürücüsüyle oluşturulmuş bir ağa bağlanmış kapsayıcılar, bir iç Hyper-V anahtarına bağlanır ve kullanıcı tarafından belirtilen (--subnet) IP ön ekinden bir IP adresi alır. Kapsayıcı ana bilgisayarından kapsayıcı uç noktalarına port yönlendirme/haritalama desteklenir.
Bahşiş
Varsayılan 'nat' ağı tarafından kullanılan alt ağı, Docker daemon yapılandırma dosyasındaki fixed-cidr ayarı aracılığıylaözelleştirebilirsiniz.
Not
Windows Server 2019 (veya üzeri) üzerinde oluşturulan NAT ağları, yeniden başlatma sonrasında artık kalıcı olmaz.
NAT ağı oluşturma
alt ağ 10.244.0.0/24ile yeni bir NAT ağı oluşturmak için:
docker network create -d "nat" --subnet "10.244.0.0/24" my_nat
Saydam ağ sürücüsü
'Transparent' sürücü ile oluşturulan bir ağa bağlı kapsayıcılar, dış Hyper-V switch aracılığıyla fiziksel ağa doğrudan bağlanır. Fiziksel ağdan IP'ler statik olarak (kullanıcı tarafından belirtilen --subnet seçeneği gerektirir) veya bir dış DHCP sunucusu kullanılarak dinamik olarak atanabilir.
Not
Aşağıdaki gereksinim nedeniyle kapsayıcı konaklarınızı saydam bir ağ üzerinden bağlamak Azure VM'lerinde desteklenmez.
Gereklidir: Bu mod bir sanallaştırma senaryosunda kullanıldığında (kapsayıcı konağı bir VM'dir) MAC adresi sahtekarlığı gerektirir.
Saydam ağ oluşturma
alt ağ 10.244.0.0/24, ağ geçidi 10.244.0.1, DNS sunucusu 10.244.0.7 ve VLAN kimliği 7ile yeni bir saydam ağ oluşturmak için:
docker network create -d "transparent" --subnet 10.244.0.0/24 --gateway 10.244.0.1 -o com.docker.network.windowsshim.vlanid=7 -o com.docker.network.windowsshim.dnsservers="10.244.0.7" my_transparent
Kaplama ağ sürücüsü
Docker Swarm ve Kubernetes gibi kapsayıcı düzenleyicileri tarafından popüler olarak kullanılan katman ağına bağlı kapsayıcılar, birden çok kapsayıcı konağında aynı ağa bağlı diğer kapsayıcılarla iletişim kurabilir. Her katman ağı, özel IP ön eki tarafından tanımlanan kendi IP alt ağıyla oluşturulur. Katman ağ sürücüsü, kiracı kapsayıcı ağları arasında ağ trafiği yalıtımı elde etmek için VXLAN kapsüllemesini kullanır ve katman ağları arasında IP adreslerinin yeniden kullanılmasına olanak tanır.
Gerekli: Ortamınızın katman ağları oluşturmak için gerekli önkoşul karşılandığından emin olun.
Gerekli: Windows Server 2019'da bunun için KB4489899gerekir.
Gerekli: Windows Server 2016'da bunun için KB4015217gerekir.
Not
Windows Server 2019 ve üzerinde Docker Swarm tarafından oluşturulan katman ağları, giden bağlantı için VFP NAT kurallarından yararlanır. Bu, belirli bir kapsayıcının 1 IP adresi aldığı anlamına gelir. Ayrıca ping veya Test-NetConnection gibi ICMP tabanlı araçların hata ayıklama durumlarında TCP/UDP seçenekleri kullanılarak yapılandırılması gerektiği anlamına gelir.
Katman ağı oluşturma
alt ağ 10.244.0.0/24, DNS sunucusu 168.63.129.16ve VSID 4096ile yeni bir katman ağı oluşturmak için:
docker network create -d "overlay" --attachable --subnet "10.244.0.0/24" -o com.docker.network.windowsshim.dnsservers="168.63.129.16" -o com.docker.network.driver.overlay.vxlanid_list="4096" my_overlay
L2bridge ağ sürücüsü
'l2bridge' sürücüsüyle oluşturulan bir ağa bağlı kapsayıcılar, dış Hyper-V anahtarıyla fiziksel ağa bağlanır. l2bridge'de, giriş ve çıkışta Katman 2 adres çevirisi (MAC yeniden yazma) işlemi nedeniyle kapsayıcı ağ trafiği ana bilgisayarla aynı MAC adresine sahip olacaktır. Veri merkezlerinde bu, bazen kısa süreli kapsayıcıların MAC adreslerini öğrenmek zorunda olan ağ anahtarlarının üzerindeki stresi azaltmaya yardımcı olur. L2bridge ağları 2 farklı şekilde yapılandırılabilir:
- L2bridge ağı, kapsayıcı konağıyla aynı IP alt ağıyla yapılandırılır
- L2bridge ağı yeni bir özel IP alt ağıyla yapılandırıldı
Yapılandırmada 2 kullanıcının konak ağ bölmesine ağ geçidi işlevi gören bir uç nokta eklemesi ve belirlenen ön ek için yönlendirme özelliklerini yapılandırması gerekir.
L2bridge ağı oluşturma
alt ağ 10.244.0.0/24, ağ geçidi 10.244.0.1, DNS sunucusu 10.244.0.7 ve VLAN Kimliği 7 ile yeni bir l2bridge ağı oluşturmak için:
docker network create -d "l2bridge" --subnet 10.244.0.0/24 --gateway 10.244.0.1 -o com.docker.network.windowsshim.vlanid=7 -o com.docker.network.windowsshim.dnsservers="10.244.0.7" my_l2bridge
Bahşiş
L2bridge ağları yüksek oranda programlanabilir; l2bridge'i yapılandırma hakkında daha fazla bilgi buradabulunabilir.
L2tunnel ağ sürücüsü
Oluşturma işlemi l2bridge ile aynıdır, ancak bu sürücü yalnızca bir Microsoft Cloud Stack (Azure)kullanılmalıdır. l2bridge'e göre tek fark, tüm kapsayıcı trafiğinin SDN ilkesinin uygulandığı sanallaştırma konağına gönderilmesi ve böylece kapsayıcılar için Azure Ağ Güvenlik Grupları gibi özelliklerin etkinleştirilmesidir.
Ağ topolojileri ve IPAM
Aşağıdaki tabloda, her ağ sürücüsü için iç (kapsayıcıdan kapsayıcıya) ve dış bağlantılar için ağ bağlantısının nasıl sağlandığı gösterilmektedir.
Ağ modları/Docker sürücüleri
| Docker Windows Ağ Sürücüsü | Tipik kullanımlar | Kapsayıcıdan kapsayıcıya (Tek düğüm) | Kapsayıcıdan dış sistemlere (tek düğüm + çok düğümlü) | Kapsayıcıdan kapsayıcıya (çok düğümlü) |
|---|---|---|---|---|
| NAT (Varsayılan) | Geliştiriciler için iyi |
|
Yönetim vNIC aracılığıyla yönlendirildi (WinNAT'ye bağlı) | Doğrudan desteklenmez: Ana bilgisayar aracılığıyla bağlantı noktalarının açığa çıkarılması gerekir |
| Saydam | Geliştiriciler veya küçük dağıtımlar için iyi |
|
(Fiziksel) ağ bağdaştırıcısına doğrudan erişime sahip kapsayıcı konağı üzerinden yönlendirildi | (Fiziksel) ağ bağdaştırıcısına doğrudan erişime sahip kapsayıcı konağı üzerinden yönlendirildi |
| Katman | Çok düğümlü ortamlar için iyidir; Docker Swarm için gereklidir, Kubernetes'te de mevcuttur. |
|
Doğrudan desteklenmez - Windows Server 2016'da NAT ağına ekli ikinci kapsayıcı uç noktası veya Windows Server 2019'da VFP NAT kuralı gerektirir. | Aynı/Alt Ağlar Arası: Ağ trafiği VXLAN kullanılarak kapsüllenmiştir ve Mgmt vNIC üzerinden yönlendirilir |
| L2Bridge | Kubernetes ve Microsoft SDN için kullanılır |
|
Giriş ve çıkışta kapsayıcı MAC adresi yeniden yazıldı |
|
| L2Tunnel | Yalnızca Azure | Aynı/Alt Ağlar Arası: fiziksel konağın Hyper-V sanal anahtarına, ilkenin uygulandığı yere sabitlenmiş saç | Trafiğin Azure sanal ağ geçidinden geçmesi gerekir | Aynı/Alt Ağlar Arası: fiziksel konağın Hyper-V sanal anahtarına, ilkenin uygulandığı yere sabitlenmiş saç |
IPAM
IP Adresleri her ağ sürücüsü için farklı şekilde ayrılır ve atanır. Windows, nat sürücüsü için IPAM sağlamak üzere Host Networking Service'i (HNS) kullanır ve ağ kaplaması için IPAM sağlamak üzere Docker Swarm Modu (iç KVS) ile çalışır. Diğer tüm ağ sürücüleri bir dış IPAM kullanır.
| Ağ Modu / Sürücü | IPAM |
|---|---|
| NAT | İç NAT alt ağ ön ekinden Konak Ağ Hizmeti (HNS) tarafından dinamik IP ayırma ve atama |
| Saydam | Kapsayıcı konağının ağ ön eki içindeki IP adreslerinden statik veya dinamik (dış DHCP sunucusu kullanılarak) IP ayırma ve atama |
| Kaplama | Docker Engine Swarm Modu yönetilen ön eklerden dinamik IP ayırma ve HNS aracılığıyla atama |
| L2Bridge | Konak Ağ Hizmeti (HNS) tarafından verilen alt ağ ön ekinden dinamik IP ayırma ve atama. |
| L2Tunnel | Yalnızca Azure - Eklentiden dinamik IP ayırma ve atama |
Hizmet Bulma
Service Discovery yalnızca belirli Windows ağ sürücüleri için desteklenir.
| Sürücü adı | Yerel Hizmet Bulma | Genel Hizmet Bulma |
|---|---|---|
| Nat | EVET | Docker EE ile EVET |
| Kaplama | EVET | Docker EE veya kube-dns ile EVET |
| saydam | HAYIR | HAYIR |
| l2bridge | kube-dns ile EVET | kube-dns ile EVET |