PROXMOX NETWORK AYARLARI

Proxmox VE (Virtual Environment), network mimarisi, harici ve katmanlı ek yazılımlar yerine doğrudan Linux kernel networking stack sunduğu yerleşik sürücü ve anahtarlama yeteneklerine dayanır. Bu yaklaşım, network paketlerinin işlenmesinde minimum latency ve maksimum line-rate performansı sağlar. Sanallaştırma ağ altyapısının temel bileşenleri şunlardır: 

Fiziksel Ağ Kartları (NICs): Sunucu donanımı üzerindeki fiziksel ethernet kartlarıdır (ens3, enp1s0, enp2s0 vb.). Kernel seviyesinde sürücülerle yönetilir.

Sanal Köprüler (Linux Bridge - vmbr ): Layer 2 (Data Link) seviyesinde çalışan yazılımsal anahtarlardır. Fiziksel NIC'leri, sanal makine adaptörlerini (TAP) ve konteyner arayüzlerini (veth) birbirine bağlar.

Alt-Arayüzler (Sub-Interfaces): Tek bir fiziksel veya sanal arayüzden noktalı isimlendirme kullanılarak türetilen, mantıksal katmanlardır.

VLAN Yapıları (IEEE 802.1Q): Sanal yerel ağ etiketleme protokolüdür. Aynı fiziksel altyapı üzerinde trafiği mantıksal olarak birbirinden ayırarak izole eder. 

Varsayılan Bridge Yapısı (vmbr0) ve İşleyişi

Proxmox VE kurulumu tamamlandığında, sistem varsayılan ağ konfigürasyonu olarak vmbr0 adında bir Linux Bridge oluşturur. Bridge-ports kurulum sırasında, sunucudaki birincil fiziksel ağ kartını (örneğin ens3) bu sanal köprünün köprü portu (bridge-ports ens3) olarak atar. Bu mimaride fiziksel NIC, tüm IP parametrelerinden arındırılarak layer 2 seviyesinde köprünün dış dünyaya açılan fiziksel kapısı haline gelir.

Mevcut Ağ Yapısının İncelenmesi

Proxmox VE yönetim panelinde Datacenter > [Node Adı] > System > Network menüsüne gidilerek mevcut ağ arayüzleri görüntülenir. Varsayılan kurulumda fiziksel ağ kartı (nic0) bir Linux Bridge (vmbr0) yapısına bağlıdır ve yönetim IP adresi (örnekte 192.168.1.100/24) bu bridge üzerine atanmıştır.

Yeni Ağ Bileşeni Ekleme Menüsü

Sayfanın üst kısmında bulunan Create açılır menüsü kullanılarak sunucuya yeni bir Linux Bridge, Linux Bond, Linux VLAN veya Open vSwitch (OVS) yapılandırması eklenebilir.

İkinci Bir Sanal Köprü (Linux Bridge) Oluşturma

Açılan Create: Linux Bridge penceresinde yeni bir ağ köprüsü (vmbr1) tanımlanır.

·         IPv4/CIDR: Ağ köprüsüne verilecek olan statik IP adresi ve alt ağ maskesi girilir (Örn: 10.10.10.100/24).

·         Bridge ports: Bu köprünün dış dünyaya erişmesi için kullanılacak fiziksel ağ kartının adı yazılır (Örn: ens37).

·         VLAN aware: İşaretlendiğinde bu köprü üzerinden VLAN etiketli paketlerin geçişine izin verilir.

·         Comment: Açıklama alanına kullanım amacı (Örn: Backup Network) yazılabilir.


Management IP Sunucunun IPv4/IPv6 yönetim adresi, alt ağ maskesi ve varsayılan ağ geçidi bilgileri doğrudan fiziksel NIC'e değil, vmbr0 köprü arayüzüne tanımlanır. Proxmox VE Web Yönetim Arayüzü (GUI - Port 8006), SSH servisi (Port 22) ve clusterdaki REST API haberleşmesi bu Management IP üzerinden yürütülür. 

Bridge mod, Proxmox VE'nin varsayılan ve en yaygın network dağıtım modelidir. Bu modda sanal makineler (VM) ve konteynerler (LXC), fiziksel ağ anahtarına (switch) doğrudan bağlı bağımsız birer fiziksel sunucu gibi davranır.Sanal makinelerin sanal ağ adaptörleri (örneğin 100 ID'li VM'in ilk adaptörü için tap100i0), Proxmox VE çekirdeği tarafından otomatik olarak vmbr0 köprüsüne birer sanal port olarak bağlanır. vmbr0 köprüsü fiziksel NIC üzerinden dış ağdaki anahtarlama cihazına doğrudan bağlı olduğundan, sanal makineler layer 2 broadcast ve multicast trafiğini dış ağa iletebilir. Böylece VM sistemler, kurum içindeki fiziksel DHCP sunucularından IP adresi alabilir ve varsayılan ağ geçidi (Gateway) üzerinden dış dünya ile doğrudan haberleşebilir. 

Yönlendirilmiş ağ mimarisinde (Routed Configuration ) sanal brigelere doğrudan bir fiziksel NIC portal olarak bağlanmaz (bridge-ports none). Trafik akışı, Layer 3 seviyesinde Linux çekirdeğinin IP yönlendirme (net.ipv4.ip_forward=1) yetenekleri kullanılarak sağlanır.Bu modelde fiziksel NIC ve sanal köprüler farklı IP bloklarına sahip bağımsız arayüzler olarak tanımlanır. Dış ağdan gelen paketler host üzerindeki IP yönlendirme tablosuna (routing table) göre ilgili sanal bridge ve bağlı sanal makineye yönlendirilir

Kurulumu ve yönetimi basittir. Sanal makineler fiziksel ağdan doğrudan IP alabilir. Broadcast storms ve MAC flooding risklerini engeller. Veri merkezi tarafındaki port başına MAC adresi sınırlamalarını tamamen aşar. Buna ramen yüksek sayıda VM bulunan büyük ağlarda Layer 2 broadcast trafiği overhead oluşturur. Veri merkezi switchlerinde MAC tablosu limitlerine takılabilir. Karmaşık yönlendirme tabloları ve static route yönetimi gerektirir. VM'lerin dış ağdaki Layer 2 servislerine (ör. dış DHCP) erişimini sınırlar. Kullanım ihtiyaçlar bakımından kurumsal veri merkezleri, yerel network içi sanallaştırma, L2 izole VLAN altyapıları ve HA cluster kurulumlarında henellikle tercih edilir. Veri merkezi barındırma (Hoster / Co-location) sağlayıcıları, MAC adresi kısıtlaması olan Hetzner/OVH gibi ortamlarda çogunlukla kullanılır. 

NAT ve Masquerading (iptables) Kullanımı Sınırlı sayıda kamuya açık (public) IP adresinin bulunduğu durumlarda veya VM sistemlerin dış ağlardan tamamen izole edildiği Private Subnet senaryolarında iptables ile maskeleme (Masquerading / Network Address Translation - NAT) yapılandırılır.İç ağdaki sanal makinelerin dış dünyaya erişiminde giden trafik adım adım şu süreçten geçer:

1. Sanal makine, özel IP adresi (örneğin 10.10.10.15/24) üzerinden bir ağ paketi oluşturur ve varsayılan ağ geçidi olarak tanımlı sanal bridge (vmbr1 - 10.10.10.1) iletir.

2. Linux çekirdeği, IP forwarding mekanizmasını çalıştırarak paketin hedef IP adresini inceler ve paketi dış ağa bakan fiziksel arayüze (ens3) yönlendirir.

3. iptables ağ filtresi üzerindeki POSTROUTING -o ens3 -j MASQUERADE kuralı tetiklenir. Paketin kaynak IP adresi (10.10.10.15), Proxmox hostunun dış ağa bakan kamuya açık fiziksel IP adresi ile değiştirilir ve dış ağa gönderilir.

4. Dış dünyadan gelen yanıt paketleri hosta ulaştığında, çekirdek üzerindeki NAT bağlantı takip tablosu (conntrack) uyarınca hedef IP adresi tekrar ilgili sanal makinenin özel IP adresine çevrilerek VM'e teslim edilir. 

Linux (Sub-Interfaces) ve VLAN (802.1Q)

Tek Arayüz Üzerinden Alt-Arayüz Türetme (vmbr0.X) ve IP Atama

Fiziksel ağ kartı sayısının sınırlı olduğu sunucu altyapılarında, IEEE 802.1Q standardına uygun alt-arayüzler (sub-interfaces) noktalı notasyon mantığıyla tanımlanır (örneğin vmbr0.100, vmbr0.6).Bu mimaride, ana köprü (vmbr0) altındaki trafiği etiketlemek üzere türetilen her bir alt-arayüz kernel seviyesinde bağımsız bir layer 2-3 nesnesi olarak davranır. Türetilen alt-arayüzlere bağımsız IP adresleri ve alt ağ maskeleri atanarak; tek bir fiziksel kablo veya port üzerinden yönetim, yedekleme ve veri gibi farklı layer 3 mantıksal ağları birbirine karıştırılmadan izole edilir. 

İzole Ağ Gruplarının Ayrıştırılması 

İşletimsel güvenliği, trafik önceliklendirmeyi (QoS) ve ağ performansını artırmak amacıyla veri merkezinde farklı işlevlere sahip trafik tipleri mantıksal VLAN'lara ayrıştırılmalıdır:

● Yönetim Ağı (Management Network - örn. VLAN 1): Proxmox VE Web GUI (8006), SSH ve API trafiğinin geçtiği, dış erişime sıkılaştırılmış izole yönetim kanalı.

● Yedekleme Ağı (Proxmox Backup Server / PBS - örn. VLAN 10): Sunucunun Proxmox Backup Server (PBS) veya NFS/iSCSI depolama üniteleriyle yüksek hacimli blok ve dosya transferi gerçekleştirdiği özel veri hattı .

● Sanal Makine Erişim Hatları (VM Production Traffic - örn. VLAN 200, VLAN 300): Sanal makinelerin production veya guest ağ trafiğini taşıyan layer 2 izole veri hatları.

Linux VLAN Konfigürasyonu

Ağ trafiğini izole etmek amacıyla Create: Linux VLAN pencerisinden bir VLAN arayüzü tanımlanır.

·         Name: Arayüz adı nokta notasyonu ile yazılabilir (Örn: vmbr0.100 -> vmbr0 köprüsü üzerinde VLAN ID 100).

·         IPv4/CIDR: Bu VLAN arayüzü için geçerli IP adresi girilir (Örn: 192.168.100.100/24).

·         Alt kısımdaki sarı ipucu kutusunda belirtildiği gibi, VLAN numarası doğrudan isme eklenebilir veya ham cihaz (VLAN raw device) seçilerek etiket atanabilir.

Eklenen Ağ Arayüzlerinin Listelenmesi ve Onaylanması

Tanımlanan vmbr0.100 (Linux VLAN) ve vmbr1 (Linux Bridge) öğeleri listede yerini alır.

·Not: Yeni oluşturulan arayüzlerin Active sütununda henüz No olarak görünmesi normaldir. Ayarların sunucu üzerinde aktifleşip çalışır duruma gelmesi için üst menüdeki Apply Configuration butonuna tıklanmalıdır.

Veri Merkezi Mimarisi: Yüksek hacimli veri transferi gerçekleştiren Proxmox Backup Server (PBS) yedekleme süreçleri, Ceph depolama senkronizasyon hatları (Cluster Network) veya NFS/iSCSI depolama trafiği, kesinlikle cluster içii heartbeat trafiğini taşıyan Corosync ağ kanalları ile aynı fiziksel NIC veya VLAN üzerinde çalıştırılmamalıdır. Yedekleme esnasında yaşanacak bandwidth saturation, Corosync paketlerinde mikrosaniye seviyesinde gecikmelere (jitter) yol açarak küme quorum kaybına ve donanımsal fencing felaketlerine sebep olur.

Bridge Seviyesinde VLAN Duyarlılığı (VLAN Awareness) ve Dinamik Etiketleme Geleneksel Linux ağ mimarisinde her bir VLAN için ayrı bir sanal köprü (vmbr1, vmbr2) ve alt-arayüz tanımlanması gerekir. Proxmox VE, Linux çekirdeğinin sunduğu bridge-vlan-aware yes özelliğini entegre ederek bu karmaşıklığı ortadan kaldırır.

● Çalışma Mekanizması: Toplam ağ trafiğini taşıyan fiziksel switch portu Trank (Trunk) olarak yapılandırılır. Proxmox VE tarafındaki köprü üzerinde VLAN Aware parametresi aktifleştirildiğinde, köprü gelen tüm 802.1Q etiketlerini soymaz; etiket bilgilerini koruyarak köprü içinde etiketli (Tagged) olarak taşır.

● Dinamik Etiketleme ve Erişim (Access/Trunk) İşleyişi: VLAN Aware aktif bir sanal köprüde (vmbr0), sanal makinenin ağ adaptörüne GUI üzerinden bir VLAN Tag (örneğin Tag 7) atandığında; bridge, sanal makineden çıkan paketlere dinamik olarak VLAN 7 etiketini basarak (Encapsulation) fiziksel switch'e iletir. Dışarıdan gelen VLAN 7 etiketli paketlerin ise etiketini soyarak (Decapsulation) sanal makineye Access modunda teslim eder. Eğer sanal makine arayüzünde VLAN Tag alanı boş bırakılırsa, ilgili port sanal makineye bir Trunk port gibi davranarak sanal makine içerisindeki konuk işletim sisteminin 802.1Q etiketlemesi yapmasına izin verir. 

Proxmox VE Bonding (Link Aggregation)

Network Bonding (Link Aggregation), sunucu üzerindeki iki veya daha fazla fiziksel ağ kartını (NIC) mantıksal olarak birleştirerek tek bir sanal ağ arayüzü (bond0, bond1 vb.) olarak kullanma yöntemidir.

Bu yapılandırmanın iki temel amacı vardır:

Yüksek Erişilebilirlik (Yedeklilik / Failover): Ağ kablosu, port veya ağ kartı arızalandığında kesintisiz iletişime devam etmek.

Bant Genişliği Artışı (Yük Dengeleme / Load Balancing): Birden fazla bağlantıyı birleştirerek toplam veri aktarım kapasitesini artırmak.

Proxmox VE Bonding Modları

● Mod 0 (Balance-RR / Round-Robin): Paketleri sırasıyla bağlı tüm aktif fiziksel portlardan iletir. Switch tarafında Statik EtherChannel (Static Trunk) yapılandırması şarttır. İki port birleştirildiğinde teorik bant genişliği artar (2x 1 Gbps = 2 Gbps). Ancak paketlerin farklı fiziksel yollardan iletilmesi, paketlerin hedefe sırasız ulaşmasına (out-of-order packets) sebep olur. Bu durum TCP seviyesinde sürekli paket tekrarı (retransmission), TCP çerçeve boyutunun küçülmesi ve head-of-line blocking yol açar. Tek bir MAC adresi kullandığı için switch ARP tablosunu kararlı tutar ancak TCP performansı olumsuz etkilenir.

● Mod 1 (Active-Backup): Unmanaged ucuz switch'lerle tam uyumludur. Arayüzlerden biri birincil (Bond Primary), diğeri ikincil (pasif) olarak çalışır. Proxmox VE konfigürasyonunda bond-primary enp2s0 şeklinde birincil port açıkça belirtilir. Birincil hat çalışırken tüm trafik bu hat üzerinden akar; hattın kopması durumunda sürücü milisaniyeler içinde pasif portu (enp1s0) devreye sokar. Yüksek bant genişliğinden ziyade %100 kesintisiz erişim gerektiren Proxmox Backup Server (PBS), NFS ve iSCSI depolama bağlantıları için en güvenilir moddur.

● Mod 2 (Balance-XOR): Layer 2, layer 3 ve layer 4 bilgileri üzerinden üretilen Hash algoritmalarıyla giden trafiği fiziksel portlar arasında paylaştırır. Switch tarafında Statik EtherChannel zorunludur. Proxmox VE GUI/CLI üzerinde Transmit Hash Policy varsayılan olarak layer2 (MAC bazlı) gelir. Ancak kurumsal veri merkezlerinde giden trafiği IP ve Port seviyesinde eşit dağıtmak için layer 2-3 veya layer3-4 (OSI katman haritalaması) politikaları seçilmelidir.

● Mod 3 (Broadcast): Tüm giden paketleri bağlı tüm fiziksel NIC'lerden aynı anda kopyalayarak gönderir. Gelen trafik ise tek bir porttan kabul edilir. Yüksek toleranslı arıza yedekliliği sağlar fakat ağ üzerinde aşırı paket kopyalanması yarattığı için ciddi bir bant genişliği israfına ve anahtarlama cihazlarında CPU yüküne sebep olur.

● Mod 4 (802.3ad / Dynamic Link Aggregation - LACP): Switch ile Proxmox VE arasında LACPDU (Link Aggregation Control Protocol Data Unit) kontrol paketleri mübadelesi yaparak dinamik link birleştirme sağlar. Switch tarafında Dinamik LACP (Dinamik EtherChannel) desteği şarttır (örneğin Cisco 2960 üzerinde channel-group 11 mode active). Hem gelen hem giden trafikte Hash politikalarına (layer2, layer2+3, layer3+4) göre dinamik yük dengeleme sunar. LACPDU Fast Rate Operasyonel Gerçekliği: Proxmox VE LACP konfigürasyonunda LACPDU fast rate (1s) ayarının aktifleştirilmesi kritik öneme sahiptir. Varsayılan yavaş modda (Slow Rate / 30s) LACPDU paketleri 30 saniyede bir gönderilir ve bir hattın kopması durumunda switch'in hat arızasını algılaması 90 saniyeye kadar uzayabilir. LACPDU fast rate aktif edildiğinde paket alışverişi 1 saniyede bir gerçekleşir; fiziksel hat veya port çökmelerinde failover süresi 3 saniyenin altına inerek HA yapısının kesintisiz kalmasını sağlar.

● Mod 5 (Balance-TLB / Transmit Load Balancing): Switch tarafında hiçbir özel konfigürasyon gerektirmeyen, giden trafik odaklı bir yük dengeleme modudur. Giden trafik, arayüzlerin anlık yük durumuna göre dağıtılır. Ancak gelen trafik yalnızca Bond Primary olarak seçilen tek bir varsayılan arayüz üzerinden kabul edilir. Sunucuya doğru gelen yüksek trafik akışlarında giden yönünün aksine tek bir NIC bant genişliği sınırında (örneğin 1 Gbps) kalınması en büyük darboğazdır.

● Mod 6 (Balance-ALB / Adaptive Load Balancing): Switch bağımsız çalışan bu mod, giden trafikte hedef MAC adresine göre yük dengeleme yaparken, gelen trafikte ARP manipülasyonu (ARP Reply düzenlemeleri) gerçekleştirir. Bonding sürücüsü, gelen ARP sorgularına farklı istemciler için farklı fiziksel NIC'lerin MAC adreslerini yanıt olarak döner.

ALB ARP Tablosu Doygunluğu Riski: Balance-ALB modundaki ARP manipülasyonu, yüzlerce sanal makine ve istemcinin bulunduğu dinamik veri merkezi ortamlarında switch'lerin ARP tablolarının (CAM Table) sürekli aşırı güncellenmesine, önbellek kilitlenmelerine ve ağ cihazlarında beklenmeyen paket yayınlama (unicast flooding) davranışlarına sebep olur. Bu nedenle kurumsal üretim ortamlarında Mod 6 kullanımı önerilmez.

Ağ Kartı Birleştirme (Linux Bond / LACP) Mod Seçimi

Birden fazla fiziksel ağ kartını birleştirerek yedeklilik (failover) ve yüksek bant genişliği sağlamak için Create: Linux Bond menüsü kullanılır.

·         Slaves: Birleştirilecek fiziksel kart isimleri aralarında boşluk bırakılarak yazılır (Örn: ens37 ens38).

·         Mode: Yüksek performans ve yük dengelemesi için standart olan LACP (802.3ad) modu seçilir. (Dikkat: LACP modunun çalışması için bağlı olunan fiziksel switch portlarında da LACP/Trunk konfigürasyonu yapılmış olmalıdır).

Linux Bond Ayarlarının Tamamlanması

Oluşturulan bond0 yapısına IP adresi (10.1.2.100/24) tanımlanır ve isteğe bağlı açıklama girilerek Create butonuna basılır.

Yapılandırılan Linux Bond Yapısının Ağ Listesindeki Görünümü

Bond0 öğesi, kapsadığı köle arayüzler (ens37 ens38) ve çalışma moduyla (LACP) ağ listesine eklenmiştir. Ayarları kalıcı kılmak ve devreye almak için Apply Configuration butonuna basılarak işlem tamamlanır.

Cluster İletişimi (Corosync) ve Bonding Etkileşimi

Corosync Mimarisi ve Kritik Ağ Gereksinimleri

Proxmox VE cluster mimarisinin kalbi Corosync protokolüdür. Corosync; nodelar arası cluster üyeliği (membership), quorum (çoğunluk sağlama) durumu, distributed lock manager (DLM) ve pmxcfs (Proxmox Cluster File System) veritabanının bellek içi gerçek zamanlı senkronizasyonunu yürütür. Corosync, doğası gereği son derece düşük gecikme (latency < 2ms) ve sıfıra yakın paket kaybı (zero packet loss/jitter) talep eder. Cluster içi heartbeat paketlerinin yüksek hacimli sanal makine veya depolama (Ceph, NFS, PBS) trafiği nedeniyle gecikmeye uğramaması için Corosync trafiğine dedicated fiziksel NIC'lerin ayrılması mimari bir zorunluluktur.