Ubuntu Dünyası

Netplan’da Uzmanlaşmak: Ubuntu’da Modern Ağ Yapılandırması Nasıl Yapılır?

Ubuntu ile uzun süredir haşır neşir olan kullanıcılar hatırlayacaktır: eskiden ağ ayarlarını değiştirmek istediğimizde doğruca /etc/network/interfaces dosyasını açıp elle düzenlerdik. Ancak Ubuntu 17.10 ile başlayan ve günümüz Ubuntu Sunucu (Ubuntu Server) sürümlerinde standart hâline gelen bir değişiklik oldu: karşımıza Netplan çıktı.

Eğer hâlâ eski usul ağ yapılandırmasına takılı kaldıysanız veya Netplan’ı sadece yüzeysel olarak biliyorsanız, bu yazı tam size göre. Netplan’ın mantığını, YAML dosyalarının nasıl okunup yazılacağını ve pratikte en çok karşılaşacağınız senaryoları birlikte inceleyeceğiz.

Netplan Nedir, Neden Var?

Netplan, Canonical tarafından geliştirilen ve Ubuntu’da ağ arayüzlerini yapılandırmak için kullanılan modern bir araç. Temel amacı basit: kullanıcıya sade, okunabilir bir YAML formatı sunup, arka planda bu ayarları systemd-networkd veya NetworkManager gibi asıl ağ yönetim servislerine devretmek.

Yani Netplan aslında bir “çevirmen” gibi çalışıyor. Siz basit bir YAML dosyası yazıyorsunuz, Netplan bunu arka plandaki servisin anlayacağı yapılandırmaya dönüştürüyor. Bu sayede masaüstü sürümlerde NetworkManager, sunucu sürümlerinde ise genellikle systemd-networkd kullanılsa da, siz her ikisinde de aynı mantıkla YAML dosyaları yazabiliyorsunuz.

Peki Bu Değişiklik Neden Yapıldı?

Eski /etc/network/interfaces sistemi yıllarca işini gördü, ama günümüzün karmaşık ağ senaryoları için (VLAN’lar, bridge’ler, bonding, cloud-init entegrasyonu gibi) yeterince esnek değildi. Netplan, özellikle bulut ortamlarında (AWS, Azure, Google Cloud gibi) otomatik yapılandırmayı kolaylaştırmak ve farklı ağ backend’leri arasında tutarlı bir arayüz sağlamak için tasarlandı.

Netplan Yapılandırma Dosyaları Nerede?

Netplan yapılandırma dosyaları /etc/netplan/ dizininde tutulur ve .yaml uzantısıyla biter. Genellikle karşınıza 00-installer-config.yaml veya 50-cloud-init.yaml gibi isimler çıkar. Sunucuyu kurarken Ubuntu kurulum sihirbazının otomatik oluşturduğu dosya budur.

Dosyanın içeriğine göz atmak için:

cat /etc/netplan/00-installer-config.yaml

Tipik bir yapılandırma şuna benzer:

network:
  version: 2
  renderer: networkd
  ethernets:
    eth0:
      dhcp4: true

Burada version her zaman 2 olmalı, renderer ise hangi backend’in kullanılacağını belirtir (networkd veya NetworkManager). ethernets altında ise her arayüz için ayrı ayrı ayar tanımlarsınız.

Statik IP Adresi Nasıl Ayarlanır?

DHCP yerine sabit (statik) bir IP adresi vermek istiyorsanız, YAML dosyanız şöyle görünmeli:

network:
  version: 2
  renderer: networkd
  ethernets:
    eth0:
      dhcp4: false
      addresses:
        - 192.168.1.100/24
      routes:
        - to: default
          via: 192.168.1.1
      nameservers:
        addresses:
          - 8.8.8.8
          - 1.1.1.1

Burada addresses alanına IP adresinizi CIDR notasyonuyla (yani /24 gibi alt ağ maskesiyle birlikte) yazıyorsunuz. routes kısmında varsayılan ağ geçidini (gateway) belirtiyoruz. Eski sürümlerde gateway4 anahtarı kullanılırdı, ancak bu artık kullanımdan kaldırıldığı (deprecated) için routes yapısını kullanmanız önerilir.

Uyarı: YAML dosyalarında girintileme (indentation) çok kritik! Boşluk (space) kullanmalısınız, sekme (tab) kesinlikle kullanmayın. Tek bir hatalı boşluk bile dosyanın çalışmamasına yol açar.

Değişiklikleri Uygulamak: apply ve try Komutları

YAML dosyasında değişiklik yaptıktan sonra bunu sisteme uygulamak için iki temel komut kullanabilirsiniz:

Özellikle uzaktan bağlandığınız (SSH ile) bir sunucuda ağ ayarı değiştiriyorsanız, netplan try kullanmanızı şiddetle öneririm. Çünkü hatalı bir yapılandırma sizi sunucudan tamamen dışarıda bırakabilir ve fiziksel erişiminiz yoksa büyük bir baş belasına dönüşebilir.

Yapılandırmanın doğru sözdizimine (syntax) sahip olup olmadığını kontrol etmek için de şu komutu kullanabilirsiniz:

sudo netplan generate

Birden Fazla Arayüz ve Bridge Örneği

Sanallaştırma yapan veya birden fazla ağ kartı kullanan sistem yöneticileri için Netplan, bridge (köprü) yapılandırmasını da oldukça sade bir şekilde sunar:

network:
  version: 2
  renderer: networkd
  ethernets:
    enp3s0: {}
  bridges:
    br0:
      interfaces: [enp3s0]
      dhcp4: true

Bu yapı, özellikle KVM veya LXD gibi sanallaştırma platformlarında sanal makinelerin fiziksel ağa köprülenmesi için sıkça kullanılır.

Sonuç: Netplan’a Alışmak Değer

İlk bakışta YAML formatı biraz ürkütücü gelebilir, özellikle eski /etc/network/interfaces stiline alışkınsanız. Ama Netplan’ın sunduğu tutarlılık, cloud-init entegrasyonu ve modern ağ senaryolarına (bonding, VLAN, bridge) verdiği destek, bu küçük öğrenme eğrisine değiyor.

Özetle aklınızda kalması gerekenler şunlar: yapılandırma dosyaları /etc/netplan/ altında, girintileme boşlukla yapılır, değişiklik sonrası netplan apply veya güvenlik için netplan try kullanılır. Bu üç noktayı hatırladığınızda Netplan artık sizin için bir kâbus değil, günlük sistem yönetiminin doğal bir parçası olacak.

Exit mobile version