Önceki yazılarımızda VLAN'larla ağımızı bölümlere ayırdık, Trunk'larla switch'lerimizi birbirine bağladık ve Spanning Tree (STP) ile olası döngü (loop) felaketlerini engelledik. Ancak STP'nin çalışma mantığını hatırlayalım: Eğer iki switch arasında birden fazla kablo çekerseniz, STP döngüyü engellemek için kablolardan sadece birini aktif tutar, diğerini kapatır (Blocking moduna alır).
Peki ya omurga (Core) switch ile kenar (Access) switch arasındaki 1 Gbps'lik tek bir hat yetersiz kalmaya başlarsa? STP'nin kapattığı o yedek kabloyu boş yatırmak yerine, aktif olan kabloyla birleştirip 2 Gbps'lik tek bir mantıksal hat elde edemez miyiz?
İşte bu noktada devreye EtherChannel girer. Bu yazıda, birden fazla fiziksel portu tek bir mantıksal porta dönüştürmeyi ve bu işlemi endüstri standardı olan LACP (Link Aggregation Control Protocol) kullanarak nasıl yapacağımızı inceleyeceğiz.
EtherChannel (Port-Channel) Nedir?
EtherChannel, 2 ila 8 adet aynı hıza ve özelliğe sahip fiziksel portu birleştirerek (Aggregation) mantıksal tek bir hat oluşturma teknolojisidir. Sağladığı avantajlar şunlardır:
Bant Genişliği Artışı: 4 adet 1 Gbps portu birleştirirseniz, STP bu hattı tek bir 4 Gbps'lik bağlantı olarak görür ve hiçbir portu kapatmaz.
Yük Dengeleme (Load Balancing): Trafik, fiziksel kablolar arasında MAC veya IP adresine göre dağıtılır.
Hata Toleransı (Redundancy): Kablolardan biri kopsa bile, trafik saniyenin çok küçük bir kesrinde diğer sağlam kablolar üzerinden akmaya devam eder.
PAgP mi, LACP mi?
EtherChannel oluştururken iki farklı müzakere (negotiation) protokolü kullanılabilir:
PAgP (Port Aggregation Protocol): Cisco'ya özel (Proprietary) bir protokoldür. Sadece Cisco cihazlar arasında çalışır.
LACP (Link Aggregation Control Protocol - IEEE 802.3ad): Endüstri standardıdır. Bir ucunda Cisco switch, diğer ucunda farklı marka bir switch veya bir sunucu (örneğin VMware ESXi) varsa LACP kullanmak zorundasınız.
Günümüz kurumsal ağlarında en iyi uygulama (best practice) olarak her zaman LACP tercih edilir. Biz de yapılandırmamızı LACP üzerinden yapacağız.
LACP Modları
LACP yapılandırırken portların nasıl davranacağını belirleyen iki mod vardır:
Active: Port, karşı tarafa sürekli LACP paketleri göndererek EtherChannel kurmaya çalışır. (Bizim tercih edeceğimiz mod)
Passive: Port sessizce bekler. Sadece karşıdan LACP paketi gelirse cevap verir ve kanal kurar. (İki tarafı da Passive yaparsanız, kimse ilk adımı atmayacağı için kanal kurulmaz.)
Adım Adım LACP Konfigürasyonu
Senaryomuzda Merkez-SW1 ile Yedek-SW2 arasında GigabitEthernet 1/0/23 ve 1/0/24 portlarını kullanarak bir EtherChannel (Port-Channel 1) oluşturacağız.
Önemli Kural: Birleştirilecek portların hızları, duplex modları, üye oldukları VLAN'lar ve Trunk durumları birebir aynı olmak zorundadır.
Adım 1: Fiziksel Portları Gruplama
Önce fiziksel portlara girip onları LACP protokolüyle "Kanal 1"e (Channel-Group 1) atıyoruz.
! Merkez-SW1 Üzerinde:
Merkez-SW1(config)# interface range gigabitEthernet 1/0/23 - 24
Merkez-SW1(config-if-range)# channel-protocol lacp
Merkez-SW1(config-if-range)# channel-group 1 mode active
Merkez-SW1(config-if-range)# exitKarşı switch'te de benzer işlemi yapıyoruz. (Karşı tarafı 'active' veya 'passive' yapabilirsiniz, garanti olması için iki tarafı da 'active' yapmak yaygındır.)
! Yedek-SW2 Üzerinde:
Yedek-SW2(config)# interface range gigabitEthernet 1/0/23 - 24
Yedek-SW2(config-if-range)# channel-protocol lacp
Yedek-SW2(config-if-range)# channel-group 1 mode active
Yedek-SW2(config-if-range)# exitAdım 2: Mantıksal Portu (Port-Channel) Yapılandırma
Fiziksel portları gruba dahil ettiğimiz an, switch otomatik olarak Port-channel 1 isimli mantıksal bir arayüz oluşturur. Artık Trunk, VLAN veya Spanning Tree ayarlarını fiziksel portlara değil, doğrudan bu mantıksal porta yapmalıyız.
Merkez-SW1(config)# interface port-channel 1
Merkez-SW1(config-if)# description UPLINK-TO-YEDEK-SW2-LACP
Merkez-SW1(config-if)# switchport trunk encapsulation dot1q
Merkez-SW1(config-if)# switchport mode trunk
Merkez-SW1(config-if)# switchport trunk allowed vlan 10,20,50
Merkez-SW1(config-if)# switchport trunk native vlan 999
Merkez-SW1(config-if)# exit(Aynı Trunk ayarlarını Yedek-SW2 üzerindeki interface port-channel 1 için de yapmayı unutmayın.)
Yük Dengeleme (Load Balancing) Algoritmasını Seçme
EtherChannel trafiği kablolara nasıl dağıtacağını varsayılan olarak kaynak MAC adresine göre (src-mac) belirler. Ancak tüm trafik tek bir router veya firewall üzerinden geçiyorsa, bu algoritma trafiği tek bir kabloya yığabilir. Daha verimli bir dağılım için algoritmayı Kaynak ve Hedef IP (src-dst-ip) adresine göre değiştirmek kurumsal ortamlarda daha çok tercih edilir.
Algoritmayı global konfigürasyon modunda değiştiriyoruz:
Merkez-SW1(config)# port-channel load-balance src-dst-ipDoğrulama (Verification) Komutları
EtherChannel konfigürasyonunda hata yapmak çok kolaydır. O yüzden mutlaka durumu kontrol etmeliyiz.
EtherChannel'ın genel durumunu ve üye portları görmek için en temel komut:
Merkez-SW1# show etherchannel summaryÇıktıda Port-Channel yanındaki harflerin SU (Layer2 ve In-Use), fiziksel portların yanındaki harflerin ise P (Bundled in port-channel) olduğundan emin olun. Eğer D (Down) veya s (Suspended) görüyorsanız konfigürasyon uyuşmazlığı vardır.
Yük dengeleme algoritmasının ne olduğunu görmek için:
Merkez-SW1# show etherchannel load-balanceBöylece switch'lerimiz arasındaki otoyolu hem genişlettik hem de yedekliliğini artırdık. Ağımız artık temel anlamda çalışıyor ve performanslı. Ancak güvenlik tarafında ciddi eksiklerimiz var.
Ağımıza fiziksel olarak bağlanan biri IP alıp trafiği dinleyebilir mi? Veya ağ geçidimizi taklit edebilir mi? Serimizin bir sonraki bölümünde, Layer 2 saldırılarına karşı en güçlü savunma hatlarımız olan Port Security, DHCP Snooping ve Dynamic ARP Inspection (DAI) konularına odaklanacağız.
