
VLAN ve Ağ Segmentasyonu: Güvenli Ağ Tasarımı Rehberi
VLAN yapılandırması, ağ segmentasyonu stratejileri, trunk ve access port ayarları ile güvenli ağ mimarisi tasarımı.
VLAN ve Ağ Segmentasyonu: Güvenli Ağ Tasarımı Rehberi
VLAN (Virtual Local Area Network), tek bir fiziksel anahtarlama altyapısını mantıksal olarak birbirinden yalıtılmış broadcast domain'lere böler. Her VLAN ayrı bir L2 segment gibi davranır; farklı VLAN'lar arasındaki trafik zorunlu olarak Layer 3 yönlendirmeden geçer. Bu yapı güvenlik politikasını uygulamanın, broadcast gürültüsünü azaltmanın ve ağı departman veya fonksiyona göre düzenlemenin temel yöntemidir.
VLAN Nedir? L2 Broadcast Domain Segmentasyonu ve Temel Avantajlar
Geleneksel düz ağda bir makinenin ARP yayını tüm switch'lere iletilir. 200 istemcinin olduğu ağda her saniye onlarca ARP, STP topology notification ve diğer broadcast paketleri tüm portlara ulaşır. VLAN bu gürültüyü sınırlandırır: VLAN 10 içindeki bir broadcast yalnızca VLAN 10 üyeleri tarafından görülür.
Düz ağ (VLAN yok):
[ PC1 ] → ARP broadcast → TÜM port/cihazlar alır
VLAN'lı ağ:
[ PC1 ] → ARP broadcast → Sadece VLAN 10 üyeleri alır
[ PC2 ] (VLAN 20) → ARP alMaz
Üç temel kazanım:
- Güvenlik: Muhasebe (VLAN 10) ile misafir WiFi (VLAN 99) aynı switch'te olsa da birbirini L2 düzeyinde göremez. PCI DSS uyumluluğu için kart sahipleri ortamını (CDE) diğer sistemlerden yalıtmak VLAN ile yapılır.
- Performans: Küçük broadcast domain → az gürültü → daha az CPU kesme. Özellikle VoIP ve video streaming için kritik.
- Yönetim kolaylığı: Fiziksel kablo düzeninden bağımsız politika. Bir çalışan masasını değiştirince switch port'unu başka VLAN'a almak yeterli, kablo çekmek gerekmez.
Tarihçe: 802.1Q, ISL ve QinQ (802.1ad)
VLAN etiketleme standardı 1998'de IEEE 802.1Q olarak yayımlandı. Daha önce Cisco kendi özel protokolü ISL (Inter-Switch Link) ile VLAN bilgisini trunk üzerinden taşıyordu; ISL 26-byte header + 4-byte trailer ekliyordu ve yalnızca Cisco ekipmanı arasında çalışıyordu. 802.1Q'nun benimsenmesiyle ISL hızla deprecated oldu ve modern Cisco IOS versiyonlarında artık desteklenmez.
802.1ad (QinQ / Double Tagging) ise servis sağlayıcı senaryolarına yönelik geliştirilmiş bir uzantı. Müşterinin kendi 802.1Q etiketini olduğu gibi kapsüller, taşıyıcı ağ ikinci bir etiket (S-TAG / outer tag) ekler. Bu sayede farklı müşterilerin aynı VLAN ID'lerini çakışma olmadan taşıyabilirler.
802.1Q Frame (tek etiket):
| Dst MAC | Src MAC | 0x8100 (TPID) | TCI | EtherType | Payload |
802.1ad QinQ Frame (çift etiket):
| Dst MAC | Src MAC | 0x88A8 (S-TPID) | S-TAG | 0x8100 | C-TAG | EtherType | Payload |
VLAN Tipleri: Data, Voice, Native, Management, Private VLAN
Sadece numaralı VLAN ID yoktur; her VLAN bir role göre tanımlanır:
Data VLAN (Kullanıcı VLAN'ı): Standart kullanıcı trafiği. Muhasebe, mühendislik, satış gibi departman VLAN'ları. Genellikle VLAN 10, VLAN 20 gibi.
Voice VLAN: VoIP telefonlar için ayrılmış VLAN. QoS (CoS/DSCP) önceliği uygulanır, gecikme ve jitter minimize edilir. Cisco'da switchport voice vlan 150 ile access port'a ek olarak tanımlanır; telefon tagged, PC arkasındaki PC untagged alır.
Native VLAN: Trunk port üzerinde etiketsiz (untagged) gelen çerçevelerin atandığı VLAN. Varsayılan değer VLAN 1'dir. Güvenlik en iyi pratiklerine göre VLAN 1 kullanımdan kaldırılmalı, native VLAN kullanılmayan boş bir VLAN'a (örneğin VLAN 999) taşınmalıdır.
Management VLAN: Switch, router ve diğer ağ donanımının yönetim arayüzlerinin bağlı olduğu VLAN. Kullanıcı trafiğinden yalıtmak güvenlik için zorunludur; bu VLAN'a erişim sadece yönetim iş istasyonlarına açık tutulur.
Private VLAN (PVLAN): İzolasyonun daha ince taneli yapılması gerektiğinde kullanılır. Bir "primary VLAN" içinde portlar üç modda olabilir:
- Promiscuous: Tüm portlarla (uplink/gateway) iletişim kurar
- Community: Aynı community içindeki portlarla ve promiscuous portla iletişim kurar
- Isolated: Yalnızca promiscuous port ile iletişim kurar, aynı VLAN'daki diğer isolated portları göremez
Barındırma ortamlarında her müşteri sunucusu isolated porta bağlanır; birbirini doğrudan göremezler.
802.1Q Etiket Yapısı: 4-Byte Header ve VLAN ID Alanı
IEEE 802.1Q etiketi standart Ethernet frame'ine iki MAC adresi arasına 4 byte ekler. Bu yüzden maksimum frame boyutu 1518'den 1522 byte'a çıkar (jumbo frame kullanmıyorken de MTU planlamasına dikkat edin).
802.1Q Etiket Yapısı (4 byte):
┌─────────────────────────────────────────────────────┐
│ TPID (16 bit) │ TCI (16 bit) │
│ 0x8100 │ PCP(3) │ DEI(1) │ VID (12 bit) │
└─────────────────────────────────────────────────────┘
TPID : Tag Protocol Identifier = 0x8100 (802.1Q)
PCP : Priority Code Point — 0-7 arası CoS (Class of Service) değeri
DEI : Drop Eligible Indicator (eskiden CFI) — 1=congestion anında at
VID : VLAN Identifier — 12 bit → 0-4095 arası değer
VLAN 0 : PCP taşır, VID anlamlı değil
VLAN 4095: Reserved
Kullanılabilir: VLAN 1-4094
12 bit'lik VID alanı 4096 VLAN ID sağlar; ancak 0 ve 4095 rezerve olduğu için fiilen 4094 VLAN kullanılabilir. Büyük veri merkezlerinde bu sayı yetmediğinde VXLAN devreye girer (aşağıda ele alınıyor).
Switch Port Modları: Access, Trunk ve Hibrit Yapılandırma
Access port: Tek VLAN'a atanmış, etiketsiz (untagged) trafik taşır. Son kullanıcı cihazı (PC, yazıcı, IP kamera) buraya bağlanır; cihaz VLAN'dan habersizdir, switch etiketi ekler/çıkarır.
Trunk port: Birden fazla VLAN'ın 802.1Q etiketli olarak geçtiği port. Switch-switch veya switch-router bağlantıları trunk olur. Hangi VLAN'ların geçeceği allowed vlan listesiyle kontrol edilir.
Cisco DTP (Dynamic Trunking Protocol): Cisco switch'ler port modunu otomatik müzakere edebilir (dynamic auto, dynamic desirable). Modern en iyi pratik: DTP'yi kapat, modu manuel yönet. Otomatik trunk müzakeresi VLAN hopping saldırısı için kapı aralayabilir.
Access port Trunk port
┌──────────┐ ┌──────────┐
│ VLAN 10 │ untagged ────► │VLAN 10 │ tagged
│ (bir VL) │ │VLAN 20 │ tagged
└──────────┘ │VLAN 30 │ tagged
│(çok VL) │
└──────────┘
Trunk Port Yapılandırması: Cisco IOS Örneği
# GigabitEthernet0/1'i trunk olarak yapılandır
interface GigabitEthernet0/1
description UPLINK-TO-DISTRIBUTION
switchport mode trunk
switchport trunk encapsulation dot1q
switchport trunk allowed vlan 10,20,30,150
switchport trunk native vlan 999
no shutdown
# Access port örneği — VLAN 10 (muhasebe)
interface FastEthernet0/5
description MUHASEBE-PC
switchport mode access
switchport access vlan 10
spanning-tree portfast
no shutdown
# Voice VLAN ekleme (aynı porta)
interface FastEthernet0/5
switchport voice vlan 150
# DTP'yi kapat (güvenlik için)
interface GigabitEthernet0/1
switchport nonegotiate
Native VLAN En İyi Pratikleri: VLAN 1'den Uzaklaşmak
VLAN 1, tüm Cisco switch'lerde fabrika çıkışı varsayılan native VLAN'dır. Tüm kontrol trafiği (CDP, VTP, STP BPDU) varsayılan olarak VLAN 1 üzerinden akar. Bu yüzden VLAN 1'i hiçbir kullanıcı ya da yönetim trafiği için kullanmamak gerekir.
Native VLAN güvenlik yaklaşımı:
- Tüm trunk portlarda native VLAN'ı kullanılmayan bir ID'ye taşı (
VLAN 999gibi) - Bu VLAN'a hiçbir cihaz ya da IP adresi atama
- Gelen etiketlenmemiş paketler bu "kör" VLAN'a düşsün, zararı yok
- Mümkünse trunk üzerinde native VLAN etiketlemeyi etkinleştir:
vlan dot1q tag native
# Global komut: native VLAN'ı da etiketle (VLAN hopping'i zorlaştırır)
Switch(config)# vlan dot1q tag native
VLAN Hopping Saldırıları: Switch Spoofing ve Double Tagging
VLAN izolasyonu Layer 2'de çalışır; yanlış yapılandırma iki tür atlama saldırısına kapı açar:
Switch Spoofing: Saldırgan, switch portuna bağlı cihazını trunk görünmesi için yapılandırır (DTP etkinken). Switch onu meşru bir trunk partner sanarak tüm VLAN'ları açar. Önlem: DTP'yi kapat, erişim portlarını switchport mode access olarak sabitle.
Double Tagging: Saldırgan native VLAN'da bulunuyor. Paketin dışına native VLAN etiketi (örn. VLAN 1), içine hedef VLAN etiketi (örn. VLAN 20) ekler. İlk switch native etiketi çıkarır, ikinci switch içteki etiketi görür ve paketi VLAN 20'ye iletir. Tek yönlü saldırı (cevap dönmez) ama yeterince tehlikeli.
Double Tagging saldırısı:
Saldırgan → [outer: VLAN1][inner: VLAN20] → Switch1 (outer'ı çıkarır)
→ Switch2 (VLAN20'ye iletir) → Kurban
Önlem paketi:
# 1. Native VLAN etiketle (outer'ı çıkarmaz, saldırı başarısız)
vlan dot1q tag native
# 2. Kullanılmayan portları devre dışı bırak
interface range FastEthernet0/10 - 24
shutdown
# 3. BPDU Guard — beklenmedik STP BPDU gelirse port kapat
interface FastEthernet0/5
spanning-tree bpduguard enable
# 4. Port Security — MAC sınırı
interface FastEthernet0/5
switchport port-security maximum 2
switchport port-security violation restrict
Inter-VLAN Routing: Router-on-a-Stick ve L3 Switch SVI
VLAN'lar L2'de yalıtıldığından aralarında trafik geçmesi için Layer 3 gerekir. Üç yöntem:
Router-on-a-Stick: Router'ın tek fiziksel portu trunk olarak switch'e bağlanır. Her VLAN için router'da bir alt arayüz (subinterface) tanımlanır.
L3 Switch SVI (Switched Virtual Interface): Layer 3 switch hem switching hem routing yapar. Her VLAN için yazılımsal sanal arayüz oluşturulur; bu modern ve önerilen yöntemdir.
Ayrı fiziksel port: Her VLAN için ayrı fiziksel router portu. Pahalı ve eskimiş yöntem.
# L3 Switch SVI yapılandırması (en yaygın modern yöntem)
Switch(config)# ip routing
interface Vlan10
description MUHASEBE
ip address 10.10.10.1 255.255.255.0
no shutdown
interface Vlan20
description SUNUCULAR
ip address 10.20.20.1 255.255.255.0
no shutdown
interface Vlan30
description KULLANICILAR
ip address 10.30.30.1 255.255.255.0
no shutdown
# VLAN'lar arası erişim kısıtı — örnek ACL
ip access-list extended KULLANICI-TO-SUNUCU
permit tcp 10.30.30.0 0.0.0.255 10.20.20.0 0.0.0.255 eq 443
permit tcp 10.30.30.0 0.0.0.255 10.20.20.0 0.0.0.255 eq 80
deny ip 10.30.30.0 0.0.0.255 10.10.10.0 0.0.0.255
permit ip any any
interface Vlan30
ip access-group KULLANICI-TO-SUNUCU in
DHCP Relay ve VLAN: Tek Sunucudan Çoklu Subnet Hizmeti
Her VLAN farklı bir IP subnet'i olduğundan DHCP Discover broadcast'leri VLAN sınırını geçemez. Çözüm: SVI arayüzünde ip helper-address ile DHCP Discover'ı DHCP sunucusuna unicast olarak iletmek (DHCP relay / UDP relay).
# Her SVI'da DHCP relay tanımla
interface Vlan10
ip helper-address 10.99.99.10 # Merkezi DHCP sunucu IP'si
interface Vlan20
ip helper-address 10.99.99.10
interface Vlan30
ip helper-address 10.99.99.10
DHCP sunucusu her VLAN için ayrı scope tanımlar (VLAN10: 10.10.10.100-200, VLAN20: 10.20.20.100-200 gibi). Relay sayesinde sunucuyu tüm VLAN'lar için merkezi tutabilirsiniz.
Güvenlik En İyi Pratikleri: VLAN Segmentasyon Politikası
Güvenli kurumsal ağ tasarımında VLAN segmentasyonu şu prensiple yapılır: "farklı güven düzeyi = farklı VLAN":
| Segment | VLAN | Açıklama |
|---|---|---|
| Yönetim | VLAN 5 | Switch/router yönetim IP'leri |
| Sunucular | VLAN 20 | Web, uygulama, DB sunucuları |
| Kullanıcılar | VLAN 30 | Ofis PC'leri |
| VoIP | VLAN 150 | IP telefonlar |
| Misafir WiFi | VLAN 99 | İnternete çıkış, iç ağa yok |
| IoT/Kameralar | VLAN 70 | Akıllı cihaz, yazıcı |
| Native (boş) | VLAN 999 | Trunk native, hiç cihaz yok |
Ek güvenlik katmanları:
- DHCP Snooping: Sahte DHCP sunucusunu engeller; switch hangi portun DHCP cevabı verebileceğini öğrenir (trusted/untrusted port). Doğrudan ID 218 ile ilişkili.
- Dynamic ARP Inspection (DAI): DHCP Snooping tablosunu kullanarak sahte ARP cevaplarını engeller.
- 802.1X Port-Based Authentication (NAC): Cihaz ağa bağlanmadan önce kimlik doğrulaması yapar; kimliği onaylı cihaz ilgili VLAN'a dinamik olarak atanır. FreeRADIUS veya kurumsal NAC çözümleriyle entegre edilir.
# DHCP Snooping etkinleştirme
ip dhcp snooping
ip dhcp snooping vlan 10,20,30,99,150
# Uplink (trusted) portları işaretle
interface GigabitEthernet0/1
ip dhcp snooping trust
# DAI etkinleştirme
ip arp inspection vlan 10,20,30
Linux'ta VLAN Yapılandırması: ip link, Netplan ve systemd-networkd
Linux çekirdeği 8021q modülüyle 802.1Q'yu destekler. Sanal VLAN arayüzleri ana fiziksel arayüzün alt arayüzleri olarak oluşturulur.
# 8021q modülünü yükle ve kalıcı hale getir
modprobe 8021q
echo '8021q' >> /etc/modules
# VLAN 10 arayüzü oluştur (eth0 trunk port olmalı)
ip link add link eth0 name eth0.10 type vlan id 10
ip addr add 10.10.10.1/24 dev eth0.10
ip link set dev eth0.10 up
# VLAN 20 arayüzü
ip link add link eth0 name eth0.20 type vlan id 20
ip addr add 10.20.20.1/24 dev eth0.20
ip link set dev eth0.20 up
# Kontrol
ip -d link show eth0.10
# outputs: vlan protocol 802.1Q id 10 ...
Kalıcı yapılandırma için Ubuntu Netplan:
# /etc/netplan/01-vlan.yaml
network:
version: 2
ethernets:
eth0:
dhcp4: false
vlans:
eth0.10:
id: 10
link: eth0
addresses: [10.10.10.1/24]
eth0.20:
id: 20
link: eth0
addresses: [10.20.20.1/24]
eth0.30:
id: 30
link: eth0
addresses: [10.30.30.1/24]
netplan apply
systemd-networkd tercih edenler için:
# /etc/systemd/network/10-eth0.network
[Match]
Name=eth0
[Network]
VLAN=eth0.10
VLAN=eth0.20
# /etc/systemd/network/20-vlan10.netdev
[NetDev]
Name=eth0.10
Kind=vlan
[VLAN]
Id=10
# /etc/systemd/network/21-vlan10.network
[Match]
Name=eth0.10
[Network]
Address=10.10.10.1/24
Kurumsal Mimariler: 3-Tier, Spine-Leaf ve VXLAN
3-tier (core / distribution / access): Klasik kurumsal yapı. Access katmanı switch'ler son kullanıcıları bağlar, distribution katmanı inter-VLAN routing ve politika uygular, core katmanı yüksek hızlı omurgayı oluşturur.
Spine-leaf: Modern veri merkezi tasarımı. Her leaf switch tüm spine switch'lere eşit uzaklıkta bağlıdır. Düz topoloji, öngörülebilir gecikme, kolay genişleme. East-west trafik (sunucu-sunucu) optimize edilmiştir.
VXLAN (Virtual Extensible LAN): 12-bit VLAN ID'nin 4096 sınırını aşmak ve büyük veri merkezi veya çok-lokasyon ağ segmentasyonu için kullanılan overlay protokolü. VXLAN, L2 frame'i UDP/IP içine kapsüller; 24-bit VNI (VXLAN Network Identifier) alanı 16 milyondan fazla sanal ağa imkân tanır. EVPN (Ethernet VPN) kontrol düzlemi ile dağıtılmış MAC/IP öğrenmesi yapılır. Cisco ACI, VMware NSX gibi SDN çözümleri altta VXLAN kullanır.
VXLAN Kapsülleme:
[ Outer Eth | Outer IP | Outer UDP (4789) | VXLAN Header (VNI 24bit) | Inner L2 Frame ]
VLAN ID (12 bit) → 4094 segment
VXLAN VNI (24 bit) → 16.777.214 segment
Buyukweb VDS Perspektifi: KVM + virtio-net ile VLAN Yapılandırması
Buyukweb VDS'leri KVM hipervizör ve virtio-net sanal NIC ile çalışır. Ağ operatörü tarafında vSwitch (Open vSwitch veya Linux bridge) 802.1Q trunk konfigürasyonu yapılmıştır; VDS'e iletilen sanal arayüz üzerinde 8021q modülüyle VLAN alt arayüzleri oluşturabilirsiniz.
Tipik kullanım senaryosu:
[Büyükweb KVM Hosti]
|
+─ [Open vSwitch trunk: VLAN 10,20,30]
|
+─ [VDS eth0] ← tagged trunk
|
+─ eth0.10 (10.10.10.x/24) — Uygulama
+─ eth0.20 (10.20.20.x/24) — Veritabanı
+─ eth0.30 (10.30.30.x/24) — Yönetim
VDS içinde ip link add link eth0 name eth0.10 type vlan id 10 komutu ile sanal VLAN arayüzleri oluşturulabilir; ardından iptables veya nftables ile VLAN'lar arası erişim politikası uygulanabilir. Hangi VLAN ID'lerinin aktif edilmesi gerektiğini ağ operasyonları tarafıyla koordine etmek için 0850 302 60 70 numaralı teknik destek hattımıza ulaşabilirsiniz.
Kurumsal özel ağ ihtiyaçlarınız (dedicated private segment, yüksek bant genişliği VLAN trunk) için de aynı hattan danışmanlık alabilirsiniz.
Sık Sorulan Sorular
Native VLAN nedir, neden VLAN 1 kullanılmaz?
Native VLAN, trunk port üzerinde 802.1Q etiketi olmadan gelen çerçevelerin atandığı VLAN'dır. Varsayılan VLAN 1 tüm Cisco switch'lerde varsayılan yönetim VLAN'ı olduğundan CDP, VTP, STP paketleri de bu VLAN üzerinden akar. Saldırgan bu bilinen native VLAN üzerinden double-tagging saldırısı yapabilir. Native VLAN'ı VLAN 999 gibi boş bir ID'ye taşıyarak saldırı yüzeyini azaltırsınız.
Trunk port ile access port farkı nedir?
Access port tek bir VLAN'a atanmış, etiketsiz çerçeve taşır; son kullanıcı cihazları buraya bağlanır. Trunk port birden fazla VLAN'ın 802.1Q etiketli olarak geçtiği port; switch-switch veya switch-router bağlantıları trunk olur.
VLAN hopping saldırısından nasıl korunurum?
DTP'yi devre dışı bırakın (switchport nonegotiate), tüm access portları switchport mode access olarak sabitleyin, native VLAN'ı vlan dot1q tag native ile etiketleyin, kullanılmayan portları kapatın, BPDU Guard etkinleştirin.
VXLAN ne zaman gerekli olur?
VLAN ID 12 bit olduğundan teorik 4094 sınırı var. Büyük çok kiracılı veri merkezi veya çok-lokasyon ağ senaryosunda bu sınır yetersizleşir. VXLAN 24-bit VNI ile 16M+ segment sağlar ve L3 üzerinde L2 segment gerilmesine imkân tanır. Küçük-orta kurumsal ağda VXLAN'a ihtiyaç yoktur.
VDS'imde VLAN yapılandırabilir miyim?
Evet, KVM tabanlı Buyukweb VDS'lerde 8021q modülü yükleyerek ip link add link eth0 name eth0.10 type vlan id 10 komutu ile sanal VLAN arayüzleri oluşturabilirsiniz. Hangi VLAN ID'lerinin ve trunk yapılandırmasının aktif edilmesi gerektiği için 0850 302 60 70 teknik desteği arayın.
L2 switch ile L3 switch farkı nedir?
L2 switch yalnızca MAC tablosuna göre çerçeveleri iletir, VLAN'lar arası yönlendirme yapamaz. L3 switch hem switching hem routing yapabilir; SVI (Switched Virtual Interface) ile her VLAN için IP gateway tanımlanır ve donanım hızında inter-VLAN routing gerçekleştirilir.
802.1X ile VLAN dinamik ataması mümkün mü?
Evet. RADIUS sunucu (FreeRADIUS vb.) kimliği doğrulanan cihaza hangi VLAN'a atanacağını söyler (Tunnel-Private-Group-ID attribute). Switch port, authentication sonrası otomatik olarak doğru VLAN'a geçer. Konuk cihazlar misafir VLAN'ına, şirket cihazları kurumsal VLAN'a otomatik düşer.
İlgili Büyükweb Hizmetleri
Ağ altyapısı, VDS ve kurumsal sunucu ihtiyaçlarınız için Türkiye lokasyonlu Büyükweb hizmetleri:
- VDS Sunucu (Linux/Windows)
- Fiziksel Dedicated Sunucu
- Proxy Paketleri
- Sunucu Barındırma
- Tüm Hosting ve Sunucu Paketleri
Kurumsal özel ağ tasarımı ve VLAN yapılandırması için 0850 302 60 70 numaralı teknik destek hattımıza veya iletişim sayfamıza yazabilirsiniz.
Ağ & Network İlgili Hizmetlerimiz
Bu yazıda anlatılan teknik konuyu profesyonel altyapıyla deneyimleyin
Etiketler:
