---
title: 'Ağ Bölütleme ve Silahtan Arındırılmış Bölge'
source: 'https://academia.sh/tr/kurslar/ag-guvenligi/ag-bolutleme-ve-dmz'
course: 'Ağ Güvenliği'
language: tr
updated: '2026-08-17T18:08:39+00:00'
license: 'CC BY-SA 4.0'
---

# Ağ Bölütleme ve Silahtan Arındırılmış Bölge

Sekiz bölgelik bir grafikte dört yerleşim koşturulur: düz ağ, yalnız çevre denetimi, silahtan arındırılmış bölge olmadan bölütleme ve tam bölütleme; her birinde açık yol sayısı, dış bölgeden ilk atlamada ve geçişli olarak erişilen kalem, bir bölge düştüğünde ulaşılan bölge ve kural yazımında gözden kaçan meşru akış sayılır.

Önceki ders sınırda duran kutunun ne görebildiğini saydı ve kanıtlanmayan her iddianın arkadaki
ağa girdiğini varsaydı. Varsayımın kendisi bu dersin konusudur: "arkadaki ağ" tek bir şey miydi?
Sekiz akış sınıfı da aynı düzlükte duruyordu; sayaç toplayıcısına ulaşan bir mesaj, faturalama
arayüzüne de aynı hamleyle ulaşabiliyordu. Bölütleme kutunun kanıtladığı iddia sayısını
değiştirmez; **iddianın sunulabileceği yolun sayısını** değiştirir.

Ölçülen üç şey var. Bölge grafiğinde kaç yönlü çift açık, bir bölge düştüğünde kaçına ulaşılıyor
ve bölgeler arası meşru trafiğin sürmesi kaç kural satırı istiyor. Bulut ağı ölçeğinde adres planı
ve alt ağ aritmetiği başka bir kursta ölçüldü; buradaki eksen adres değil, bölge grafiğinin
kendisidir.

- **CS7.** Sekiz bölge, kalem sayıları ve kural listesi kurgusal bölgesel ölçüm ağına aittir.
  Gerçek trafik akmıyor; ölçülen şey `node` ile kurulan grafik modelidir.
- **CS8.** Bölge içinde kısıt yok sayıldı: bir bölgedeki kaleme ulaşan, o bölgenin bütün
  kalemlerine ulaşır. Gerçekte bölge içi denetim de yazılabilir; kalem sayısını düşürür,
  bölgeler arası ölçümün yönünü değiştirmez.
- **CS9.** Dış bölge varış noktası sayıldı, geçiş noktası sayılmadı. İç bir bölgeden dışarıya
  çıkmak, dış bölgenin ulaşabildiği her yere ulaşmak anlamına gelmiyor.
- **CS10.** Kural satırı yönlü bölge çifti düzeyinde sayıldı. Gerçekte her satır kapı ve protokol
  de belirtir; satır sayısını büyütür, karşılaştırmanın yönünü değiştirmez.
- **CS11.** "Bölge düştü" ifadesi yalnız o bölgedeki bir kalemin denetim dışına çıktığı durumu
  adlandırıyor. Nasıl çıktığı modellenmedi ve yazılmadı.
- **CS12.** Kural yazımında gözden kaçan iki meşru akış modele elle konuldu. Gerçekte bu sayı
  gözlem süresine ve akışın seyrekliğine bağlıdır.

## Bölge Grafiği ve Dört Yerleşim

Model bölgeleri düğüm, izin verilen yönlü çiftleri kenar olarak tutuyor. Dört yerleşim aynı işi
görüyor ve yalnız iki eksende ayrılıyor: iç bölgeler arasında sınır var mı ve dışa bakan kalemler
ayrı bir bölgede mi duruyor. Dışa bakan kalemler ayrı durduğunda o bölge silahtan arındırılmış
bölgedir; durmadığında aynı kalemler uygulama bölgesinin içine yerleşir.

```js
// bolge.mjs — bolge grafigi, kalem sayilari ve dort yerlesim; model, gercek ag degil
const ORTAK = { dis: 0, sube: 120, saha: 60, veri: 6, yonetim: 5, yedek: 3 };
export const KALEM = {                       // genel arayuz kalemleri ayri bolgede mi, uygulamayla ayni bolgede mi
  ayri: { ...ORTAK, dmz: 4, uygulama: 12 },
  icinde: { ...ORTAK, uygulama: 16 },
};
// Kural yazilan mesru akislar: varsayilan reddet altinda izin verilen yonlu bolge cifti
export const MESRU = [
  ['dis', 'dmz'], ['dmz', 'uygulama'], ['saha', 'dmz'], ['sube', 'dmz'], ['sube', 'uygulama'],
  ['uygulama', 'veri'], ['uygulama', 'dis'], ['veri', 'yedek'], ['yedek', 'dis'],
  ...['dmz', 'sube', 'saha', 'uygulama', 'veri', 'yedek'].map((b) => ['yonetim', b]),
];
// Kural yaziminda gozden kacan iki mesru akis: ceyrek sonu mutabakati ve sube arsivi
export const KACAN = [['saha', 'veri'], ['sube', 'yedek']];
const tek = (l) => [...new Set(l.map((e) => e.join('>')))].map((s) => s.split('>'));
const katla = (l) => tek(l.map(([a, b]) => [a === 'dmz' ? 'uygulama' : a, b === 'dmz' ? 'uygulama' : b]))
  .filter(([a, b]) => a !== b);
const duzKenar = (bl) => {                   // ic bolgeler arasi kisit yok, giden yon serbest
  const ic = bl.filter((b) => b !== 'dis');
  return [...ic.flatMap((x) => ic.filter((y) => y !== x).map((y) => [x, y])), ...ic.map((b) => [b, 'dis'])];
};
const B8 = ['dis', 'dmz', 'sube', 'saha', 'uygulama', 'veri', 'yedek', 'yonetim'];
const B7 = B8.filter((b) => b !== 'dmz');
export const YERLESIM = {                    // [bolgeler, kenar, yazilmis kural, kalem haritasi]
  duz: [B7, [...duzKenar(B7), ['dis', 'uygulama']], 0, 'icinde'],
  cevre: [B8, [...duzKenar(B8), ['dis', 'dmz']], 1, 'ayri'],
  dmzsiz: [B7, katla(MESRU), katla(MESRU).length, 'icinde'],
  bolutlu: [B8, MESRU, MESRU.length, 'ayri'],
};
export function ulasilan(kenar, bas) {       // gecisli erisim; dis bolge varis noktasidir, gecis noktasi degil
  const gor = new Set(), kuyruk = [bas];
  while (kuyruk.length) {
    const b = kuyruk.shift();
    if (b === 'dis' && bas !== 'dis') continue;
    for (const [x, y] of kenar) if (x === b && !gor.has(y)) { gor.add(y); kuyruk.push(y); }
  }
  gor.delete(bas);
  return gor;
}
export function mesafe(kenar, bas, hedef) {  // hedefe varmak icin kac bolge siniri geciliyor
  let kat = new Set([bas]), n = 0; const gor = new Set([bas]);
  while (kat.size) {
    n++;
    const yeni = new Set();
    for (const [x, y] of kenar) if (kat.has(x) && !gor.has(y)) { gor.add(y); yeni.add(y); }
    if (yeni.has(hedef)) return n;
    kat = yeni;
  }
  return '-';
}
export const yol = (bl, kenar) => bl.reduce((a, b) => a + ulasilan(kenar, b).size, 0);
export const kalemi = (kume, h) => [...kume].reduce((a, b) => a + (KALEM[h][b] ?? 0), 0);
export const ilk = (kenar, bas) => new Set(kenar.filter(([x]) => x === bas).map(([, y]) => y));
export const dogrudan = (kenar, [a, b]) => kenar.some(([x, y]) => x === a && y === b);
```

İki ölçü işlevi grafiğin üzerinde yürüyor. Geçişli erişim, bir bölgeden başlayıp kenarları izleyerek
ulaşılan bütün bölgeleri topluyor; mesafe işlevi aynı yürüyüşü katman katman yapıp hedefe kaç
sınırda varıldığını veriyor. Kalem sayıları iki haritadan okunuyor, çünkü dışa bakan dört kalem
ya kendi bölgesinde ya uygulama bölgesinin içinde duruyor ve toplam iki yüz on kalem her iki
durumda da aynı kalıyor. Yer değiştiren şey kalem sayısı değil, kalemin hangi sınırın arkasında
olduğudur.

## Dört Yerleşimin Açtığı Yol

```js
// kosum1.mjs — dort yerlesimde acik yol, dis bolgeden erisilen kalem ve kesilen mesru akis
import { YERLESIM, MESRU, KACAN, ulasilan, mesafe, yol, kalemi, ilk, dogrudan } from './bolge.mjs';

console.log(`kural yazilan mesru akis ${MESRU.length}, kural yaziminda gozden kacan ${KACAN.length}\n`);
console.log(`${'yerlesim'.padEnd(9)} ${'bolge'.padStart(5)} ${'kural'.padStart(5)} ${'acik/tum yol'.padStart(12)} ` +
  `${'ilk atlama kalem'.padStart(16)} ${'gecisli kalem'.padStart(13)} ${'veriye sinir'.padStart(12)} ${'kesilen mesru'.padStart(13)}`);
for (const [ad, [bl, kenar, kural, h]] of Object.entries(YERLESIM)) {
  const tum = bl.length * (bl.length - 1);
  console.log(`${ad.padEnd(9)} ${String(bl.length).padStart(5)} ${String(kural).padStart(5)} ` +
    `${`${yol(bl, kenar)}/${tum}`.padStart(12)} ${String(kalemi(ilk(kenar, 'dis'), h)).padStart(16)} ` +
    `${String(kalemi(ulasilan(kenar, 'dis'), h)).padStart(13)} ${String(mesafe(kenar, 'dis', 'veri')).padStart(12)} ` +
    `${String(KACAN.filter((m) => !dogrudan(kenar, m)).length).padStart(13)}`);
}
console.log('\ndis bolgeden ulasilan bolgeler:');
for (const [ad, [, kenar]] of Object.entries(YERLESIM))
  console.log(`  ${ad.padEnd(9)} ${[...ulasilan(kenar, 'dis')].join(', ')}`);
const kes = KACAN.filter((m) => !dogrudan(YERLESIM.bolutlu[1], m));
console.log(`\nbolutlu yerlesimde kesilen mesru akis: ${kes.map(([a, b]) => `${a} -> ${b}`).join(', ')}`);
```

```
kural yazilan mesru akis 15, kural yaziminda gozden kacan 2

yerlesim  bolge kural acik/tum yol ilk atlama kalem gecisli kalem veriye sinir kesilen mesru
duz           7     0        42/42               16           210            2             0
cevre         8     1        56/56                4           210            2             0
dmzsiz        7    12        23/42               16            25            2             2
bolutlu       8    15        31/56                4            25            3             2

dis bolgeden ulasilan bolgeler:
  duz       uygulama, sube, saha, veri, yedek, yonetim
  cevre     dmz, sube, saha, uygulama, veri, yedek, yonetim
  dmzsiz    uygulama, veri, yedek
  bolutlu   dmz, uygulama, veri, yedek

bolutlu yerlesimde kesilen mesru akis: saha -> veri, sube -> yedek
```

İkinci satır bu dersin en pahalı yanılgısını sayıyor. Çevre yerleşiminde dışa bakan kalemler ayrı
bir bölgeye taşındı, dışarıdan yalnız o bölgeye izin veren tek bir kural yazıldı ve dış bölgenin
ilk atlamada eriştiği kalem on altıdan dörde indi. Buna karşılık geçişli kalem iki yüz onda kaldı
ve açık yol elli altıda tam. İç bölgeler arasında hiçbir sınır olmadığı için, dışa bakan dört
kalemden birine ulaşan taraf altı iç bölgenin tamamına ulaşıyor. Silahtan arındırılmış bölge tek
başına bir bölge değil, bir ilk atlamadır; arkasında sınır yoksa yalnız ilk adımı geciktirir.

Üçüncü ve dördüncü satırlar aynı bölütlemeyi iki ayrı yerleşimde gösteriyor. İkisi de geçişli
kalemi iki yüz ondan yirmi beşe indiriyor; fark ilk atlamadadır. Dışa bakan kalemler uygulama
bölgesinin içinde bırakıldığında dış bölgeden gelen bağlantı doğrudan on altı kalemin yanına
iniyor ve bölge içinde sınır olmadığı için hepsine ulaşıyor. Ayrı bölgeye taşındığında bu sayı
dörde iniyor ve veri bölgesine varmak için geçilmesi gereken sınır sayısı ikiden üçe çıkıyor. Ayrı
bölgenin bütün kazancı bu iki sayıdır: on iki kalem ve bir sınır.

Kural sütunu bedeli veriyor. Düz yerleşimde hiç kural yok; bölütlü yerleşim on beş satır istiyor
ve bu on beş satır bölge çiftinden ibaret, kapı ve protokol eklendiğinde her satır birkaç satıra
bölünür. Sağdaki sütun daha sinsi bir bedeli veriyor: bölütleme iki meşru akışı kesiyor. Çeyrek
sonu mutabakatı saha bölgesinden veri bölgesine, şube arşivi şube bölgesinden yedek bölgesine
gidiyordu; ikisi de kural yazılırken kimsenin aklına gelmedi, çünkü ikisi de seyrek çalışıyor. Düz
ağda bu akışlar hiç kural istemediği için hiç görünmemişti.

Açık yol sütununda bir ters okuma tuzağı var. Bölütlü yerleşim otuz bir açık yol gösteriyor,
silahtan arındırılmış bölgesi olmayan yerleşim yirmi üç; sayıya bakılırsa ikincisi daha dar
görünüyor. Fark bölge sayısındandır: sekiz bölgeli grafikte elli altı, yedi bölgeli grafikte kırk
iki yönlü çift vardır. Bölge eklemek çift sayısını büyütür. Yol sayısı bu yüzden tek başına
karşılaştırılamaz; karşılaştırılabilen şey yolun indiği kalemdir ve o sütun iki yerleşimde de
yirmi beştir.

## Bölge Düştüğünde

```js
// kosum2.mjs — bir bolge dustugunde ulasilan bolge ve kalem; duz ile bolutlu yerlesim yan yana
import { YERLESIM, ulasilan, kalemi } from './bolge.mjs';

const [B, DUZ] = [YERLESIM.duz[0], YERLESIM.duz[1]];
const BOL = YERLESIM.bolutlu[1];
const ic = (k) => [...k].filter((b) => b !== 'dis');
console.log(`${'dusen bolge'.padEnd(11)} ${'duz bolge'.padStart(9)} ${'duz kalem'.padStart(9)} ` +
  `${'bolutlu bolge'.padStart(13)} ${'bolutlu kalem'.padStart(13)}  bolutlu yerlesimde ulasilan`);
let [td, tb] = [0, 0];
for (const b of B.filter((x) => x !== 'dis')) {
  const [d, s] = [ic(ulasilan(DUZ, b)), ic(ulasilan(BOL, b))];
  td += d.length; tb += s.length;
  console.log(`${b.padEnd(11)} ${String(d.length).padStart(9)} ${String(kalemi(d, 'icinde')).padStart(9)} ` +
    `${String(s.length).padStart(13)} ${String(kalemi(s, 'ayri')).padStart(13)}  ${s.join(', ') || '-'}`);
}
console.log(`\nulasilan bolge toplami   duz ${td}   bolutlu ${tb}   kapanan ${td - tb} (%${Math.round((td - tb) * 100 / td)})`);
const d = ic(ulasilan(BOL, 'dmz')), y = ic(ulasilan(BOL, 'yonetim'));
console.log(`dmz dustugunde       ${d.length} bolge, ${kalemi(d, 'ayri')} kalem  (${d.join(', ')})`);
console.log(`yonetim dustugunde   ${y.length} bolge, ${kalemi(y, 'ayri')} kalem  — ${BOL.filter(([a]) => a === 'yonetim').length} dogrudan kural`);
console.log(`bolutlemenin kapattigi yol ${td - tb}; kapatamadigi bolge 1`);
```

```
dusen bolge duz bolge duz kalem bolutlu bolge bolutlu kalem  bolutlu yerlesimde ulasilan
sube                5        90             4            25  dmz, uygulama, veri, yedek
saha                5       150             4            25  dmz, uygulama, veri, yedek
uygulama            5       194             2             9  veri, yedek
veri                5       204             1             3  yedek
yedek               5       207             0             0  -
yonetim             5       205             6           205  dmz, sube, saha, uygulama, veri, yedek

ulasilan bolge toplami   duz 30   bolutlu 17   kapanan 13 (%43)
dmz dustugunde       3 bolge, 21 kalem  (uygulama, veri, yedek)
yonetim dustugunde   6 bolge, 205 kalem  — 6 dogrudan kural
bolutlemenin kapattigi yol 13; kapatamadigi bolge 1
```

Düz sütunda her satır aynı sayıyı veriyor: beş bölge. Hangi bölgenin düştüğü değişmiyor, sonuç
değişmiyor; ikinci sütundaki kalem farkı yalnız düşen bölgenin kendi kalemlerinin dışarıda
bırakılmasından geliyor. Bölütlü sütunda satırlar birbirinden ayrışıyor ve ayrışmanın yönü kural
listesinin yönüdür. Yedek bölgesi düştüğünde hiçbir bölgeye ulaşılmıyor, çünkü o bölgeden çıkan
tek kural dışarıya bakıyor. Veri bölgesi düştüğünde yalnız yedek bölgesine ulaşılıyor. Akışın
yönü aşağı doğru olduğu için zincirin altındaki bölgeler yukarı çıkamıyor.

Şube ve saha bölgeleri en kalabalık kalem kümesini taşıyor — yüz yirmi ve altmış kalem — ve düşen
bölge onlar olduğunda ulaşılan kalem yirmi beşte kalıyor. Düz yerleşimde aynı iki satır doksan ve
yüz elli veriyordu. Kapanan yolun toplamı otuz üzerinden on üç; bölütleme bölge çiftlerinin
yaklaşık yarısını kapatıyor, tamamını değil.

Kesilen iki meşru akışın bu tabloda bir karşılığı var. Saha bölgesinden veri bölgesine giden
mutabakat akışı için bir kural yazılırsa satır sayısı on altıya çıkar ve saha bölgesi düştüğünde
ulaşılan kalem yirmi beşten otuz bire gider. Kural yazmak yolu geri açar; akış meşru olduğu için
de yazılır. Bölütlemenin ölçüsü bu yüzden kurulduğu gün alınan sayı değildir. Her yeni meşru akış
bir satır ekler, her satır bir yol açar ve satırlar tek yönde birikir — akış durduğunda kuralı
silmek için kimseye bir uyarı gitmez.

Son satırlar bölütlemenin kapatamadığı bölgeyi adlandırıyor. Yönetim bölgesi altı bölgeye
doğrudan yazılmış durumda ve düştüğünde iki yüz beş kaleme ulaşılıyor — bölütlü yerleşimde bile
düz ağdakiyle aynı sayı. Bunun nedeni bir eksiklik değil, işin kendisidir: yönetim bölgesi
yapılandırma dağıtmak ve arıza gidermek için her bölgeye erişmek zorundadır. Bölütleme bu bölgede
hiçbir yol kapatmıyor. Silahtan arındırılmış bölge düştüğünde ulaşılan yirmi bir kalem de aynı
sınıftandır: dışa bakan bölge tanımı gereği içeriye bir kural taşır, o kural olmasa bölge hiçbir
işe yaramaz. Bölütlemenin kapattığı yol sayılabilir; kapatamadığı bölge de sayılabilir ve bir
tanedir.

## Özet

- Yalnız çevre denetimi dış bölgenin ilk atlamada eriştiği kalemi 16'dan 4'e indiriyor ama geçişli
  kalem 210'da kalıyor: iç bölgeler arasında sınır yoksa dışa bakan tek kaleme ulaşan taraf 6 iç
  bölgenin tamamına ulaşıyor.
- Bölütleme geçişli kalemi 210'dan 25'e indiriyor. Dışa bakan kalemleri ayrı bölgeye taşımanın
  kazancı bunun üstüne 2 sayıdır: ilk atlamada erişilen kalem 16'dan 4'e, veri bölgesine giden
  sınır sayısı 2'den 3'e gidiyor.
- Bedeli 15 kural satırı ve 2 kesilen meşru akıştır. Kesilen ikisi de seyrek çalışan işlerdir
  (çeyrek sonu mutabakatı, şube arşivi); düz ağda hiç kural istemedikleri için hiç görünmemişlerdi.
- Bir bölge düştüğünde ulaşılan bölge toplamı düz yerleşimde 30, bölütlü yerleşimde 17: kapanan yol
  13. Şube bölgesi düştüğünde ulaşılan kalem 90'dan 25'e iniyor.
- Bölütlemenin kapatamadığı bölge yönetim bölgesidir: 6 bölgeye doğrudan yazılmıştır ve düştüğünde
  205 kaleme ulaşılıyor — bölütlü yerleşimde de düz yerleşimdeki sayının aynısı.

## Sonraki Adım

Yönetim bölgesi satırı çözülmemiş bir kalem bırakıyor: altı bölgeye doğrudan yazılan bir bölge,
bölütlemenin hiçbir yol kapatmadığı tek yerdir. Sonraki dersin sorusu bu bölgeyi kaldırmak değil,
oradan çıkan bağlantıları tek bir noktadan geçirmenin ne kazandırdığıdır. Bir denetim noktası
konulduğunda kaç bağlantı o noktadan geçiyor, o noktanın kaydettiği ve kanıtladığı iddia sayısı ne
oluyor, nokta düştüğünde kaç yol birden kesiliyor ve en önemlisi — kaç yol o noktayı hiç
kullanmadan hedefe varıyor.
