Ubuntu Core Server Static IP Tanımlama

Merhabalar,

Bu makalede, Ubuntu core sunuculara nasıl statik IP verilebileceğine dair pratik bilgiler aktaracağım. Çok basit bir konu gibi görünse de farklı dağıtımları kullanıp Ubuntu’yu denemek isteyenler için biraz farklı yöntemler gibi gelebilir ve alışık olunmadığı için IP tanımlamada sıkıntı yaşanabilir. 🙂

Yanlış hatırlamıyorsam Ubuntu cephesinde, Ubuntu 17 ile birlikte, ağ arayüzlerini yapılandırmak için Netplan’a geçildi. Netplan, ağ konfigürasyon sürecini çok basit hale getiren YAML tabanlı konfigürasyon sistemine dayanan yardımcı bir uygulamadır. Netplan, daha önce (v17 öncesinde) Ubuntu’da ağ arayüzlerini yapılandırmak için kullandığımız, eski yapılandırma dosyası olan /etc/network/interfaces‘in yerini aldı.

Netplan, hem networkd hem de NetworkManager’ı destekler. networkd, Systemd’nin bir parçasıdır. Başka bir deyişle systemd-networkd, Systemd kullanarak ağ bağlantılarını yönetmek için kullanılır. Öte yandan NetworkManager, ağ seçeneklerini yapılandırmak için kullanılan bir GUI ortam aracıdır.

Kısaca bu açıklamayı da yaptıktan sonra, Ubuntu core sunucuda IP bilgilerini nasıl görebileceğimize bakalım.

Normalde DHCP üzerinden IP almış sistemimizde, dinamik IP yapılandırmasının nasıl yapılabileceğini göreceğiz. Kullandığım versiyon, Ubuntu 18.x LTS. Tüm versiyonlarda bu makaleyi uygulayabilirsiniz.

Burada root kullanıcıyla tüm işlemlerimi yapıyorum. Sizler normal kullanıcı ile bu işlemleri yapmak isterseniz, komutların başında sudo kullanmayı unutmayın. 🙂

hostnamectl

DHCP’den aldığımız IP bilgilerimizi birkaç şekilde görebiliriz. Ubuntu sunucularda, bu bilgileri görmek için birkaç komut var. En bilindik olanla başlayalım. Aslında bu komutlar, hemen hemen tüm linux dağıtımlarında çok benzer komutlar, bazılarıysa tamamen aynıdır.

ip a

Eğer ilgili araçlar yüklüyse, en klasik IP öğrenme komutu olan aşağıdaki komutu kullanabilirsiniz.

ifconfig

Bir diğer komut,

ip address

Aynı şekilde aşağıdaki komut da kullanılabilir.

ip address show

Bu komutun diğer fonksiyonları ise TAB tuşuna iki defa basınca görülebilir.

ip address TABx2

Netplan kullanarak ağ yapılandırması

Ubuntu core sunucusu, sistem ağı için 50-cloud-init.yaml adlı Netplan yapılandırma dosyası oluştururken, Ubuntu masaüstü, ağ yönetimi için 01-network-manager-all.yaml adlı bir Netplan yapılandırma dosyası oluşturur.

Netplan varsayılan yeni yapılandırma dosyaları /etc/netplan dizini altındadır. Bu dosyaları, aşağıdaki komutu kullanarak listeleyebilirsiniz.

ls /etc/netplan/

Aşağıdaki yapılandırma dosyası ise, desktop ortamı yüklü olan ubuntu yapılandırma dosyasıdır. Sadece isim farkı olduğunu görebiliyorsunuz. Bunun dışındaki tek fark, renderer olarak network manager tanımlıdır. Fakat şimdi buna değinmiyoruz.

01-network-manager-all.yaml, ilk arayüzü yapılandırmak için kullanılır. Birden çok arabiriminiz varsa, ikinci arabirim için 02-network-manager-all.yaml kullanmanızı önerebilirim. Netplan, konfigürasyonu sayısal sırayla uygular. Bu, 01 dosyasının 02 dosyasından önce uygulanacağı anlamına gelir.

Şimdi ağ yapılandırmasına geçelim. Ubuntu’da statik veya dinamik IP adreslemesini yapılandırmak için aşağıdaki adımları izleyin:

İlk olarak, yapılandırmak istediğiniz aktif ağ arayüzlerinin adını bulun. Bunu öğrenmek için aşağıdaki komutu kullanabilirsiniz.

ip a

Burada ens33 isimli ağ aygıtına statik IP vermeyi istiyoruz.

Öncelikle, az önce bahsettiğimiz yapılandırma dosyamızın içeriğinde neler olduğunu görelim.

cat /etc/netplan/50-cloud-init.yaml

Bu dosyada, bu ağ aygıtının DHCP’den IP alacağını görebiliyoruz. Eğer statik IP vermek istersek, bu dosya içinde aşağıdaki formata benzer bir formatta, ilgili bilgileri girmemiz gerekiyor. Yalnız dikkat etmeniz gereken bişey var : satırları yazarken, boşluk vermek için tab tuşunu kullanmayın. Aksi halde format hataları alabilirsiniz.

Bu formata göre düzenlemek üzere, yapılandırma dosyasını herhangi bir düzenleyicide açmamız gerekiyor. Dosyanın içeriğini, yukarıdaki formata uygun şekilde kendi ortamınıza göre düzenleyiniz.

nano /etc/netplan/50-cloud-init.yaml

Benim IP bilgilerim, şekildeki gibi olacaktır. Dosyayı kaydedip çıkış yapıyoruz.

Yapılandırmanın test edilmesi

Ayarları kalıcı şekilde uygulamadan önce, try opsiyonu ile yaptığımız bu ayarların geçerli ayarlar olup olmayacağını test edebilirsiniz. Burada SSH bağlantım kesileceği için, sunucu konsolu üzerinden komutu uygulayacağım.

netplan try

Eğer timeout süresinden önce ENTER tuşuna basarsanız yeni ayarlar kabul edilecek. Basmazsanız, ayarlar geri alınacak…

Yapılandırmanın kalıcı hale getirilmesi

Sonrasında bu ayarları, kalıcı şekilde uygulamak için aşağıdaki komutu kullanıyoruz.

netplan apply

Herhangi bir hata görürseniz, sorunu araştırmak için hata ayıklama modunu da kullanarak deneyebilirsiniz. Hata ayıklamayı (debug) çalıştırmak için aşağıdaki komutu kullanabilirsiniz.

netplan -d apply

İkinci network kartı takılırsa ne olur?

Eğer sisteminizde birden fazla ağ arabirimi varsa ne yaparsınız?

Şimdi örnek olarak bir de bunu deneyelim. Sistemime ikinci ethernet kartını taktım ve IP bilgisini sorguladım.

ip a

İkinci ethernet kartının ismi ens36 ve bakınız down durumda görünüyor. Yani siz aktif etmediğiniz sürece aktif olmayacak ve IP alamayacak. Öncelikle bunu kalıcı olarak aktif duruma geçirelim.

ip link set dev ens36 up

ip a

Şu anda üzerinde IP yok. DHCP’den de IP alamıyor çünkü yapılandırma dosyasında biz manual ayarlar yapmıştık. Az önce ayarları değiştirdiğimiz dosyayı tekrar açalım.

Bu aygıt, örneğin DHCP’den IP alacaksa, yapılandırma dosyamızı şu şekilde düzenliyoruz.

nano /etc/netplan/50-cloud-init.yaml

Ethernets bölümü altına, bu kartımızı da ekledik ve DHCP’den IP alsın dedik. Statik IP isterseniz, ens33 altındakine benzer satırları, ens36 altında yazmanız gerekiyor. Ben bu şekilde bırakıyorum.

Ayarları uygulamak için ise aşağıdaki komutu kullanıyoruz.

netplan apply

ip a

Bakınız bu arabirim de IP aldı.

Ubuntu core sunucularda statik IP tanımlama işlemleri bu adımlardan ibarettir.

Yararlı olması dileğiyle.

Yusuf İşleyen