Python’da kullanıcıdan veri girmesini istediğimizde input fonksiyonunu kullanmamız gerekmektedir. Bu fonksiyonun kullanımını daha iyi anlamak için örnek uygulamalar yapalım;
Örnek1;
deneme=input("Bir değer giriniz")
print ("Girilen değer", deneme)
Burada input kullanarak kullanıcıdan veri girmesini istedik ve bunu deneme isimli değişkene atadık. Daha sonra print ile girilen değeri ekranda yazdırmış olduk.
Örnek2;
sayi1=input("Birinci sayıyı giriniz")
sayi2=input("Birinci sayıyı giriniz")
toplam=sayi1+sayi2
print("Girilen iki sayının toplamı", toplam)
Bu örnekte kullanıcıdan iki adet sayı girmesini istedik ve daha sonra bu iki sayıyı toplayarak ekranda yazdırdık.
Örnek3;
deneme=input("bir kelime girin")
print ("Girilen kelimenin karkater sayisi", len(deneme) )
Bu örnekte kullanıcıdan veri girmesini istedik ve daha sonra bu girilen verinin kaç karakterli olduğunu ekranda yazdırmış olduk. Len fonksiyonunun ne işe yaradığını önceki makalede anlatmıştım.
Python’da metin türü bir değişkeni (string) istediğimiz biçimde yazdırmak için format fonksiyonunu kullanırız. Bu fonksiyonun kullanımını daha iyi anlamak için basit örnek komutları inceleyelim;
Örnek1:
isim="Onur"
soyisim="Özmen"
print("Benim adım {} soyadım {}" .format(isim,soyisim))
Burada format komutundan sonra yazdığımız değişkenleri sırasıyla süslü parantezler içinde ekrana yazdırmış olduk. Ekrandaki çıktı Benim adım Onur soyadım Özmen olacaktır.
Örnek2;
isim="Onur"
soyisim="Özmen"
print("Benim adım {1} soyadım {0}" .format(isim,soyisim))
Burada isim değişkeni 0, soyisim değişkeni 1 değerindedir. Eğer bir tane daha değişkenimiz olsaydı onun değeri de 3 olacaktı. Değişken değerleri bu şekilde sıralanmaktadır. Burada değişkenleri sıra numarasına göre ekranda yazdırmış olduk. Ekrandaki çıktı Benim adım Özmen soyadım Onur olacaktır.
Cisco switchlerde bir portu trunk yaptığımız o port üzerinden tüm vlanların geçişine izin vermiş olmaktayız. Genellikle yapılarda bu şekilde kullanılmasına rağmen bazen trunk port üzerinden tüm vlanların geçişi istenmeyebilir. Bu durumda trunk port üzerinden geçişine izin vermek istediğimiz vlanları belirtmemiz gerekmektedir. Bu işlemi aşağıdaki örnekteki komutları ile yapabiliriz;
enable
conf term
interface fast0/1
switchport trunk allowed vlan 10-20
Burada 10’dan 20’ye kadar olan vlanların geçişine izin vermiş olduk. Eğer sadece bir vlanın geçişine izin vermek istiyorsak komutu aşağıdaki gibi kullanabiliriz;
Cisco router veya layer 3 switchlerde route tablosunu görmek istediğimizde enable mod üzerinden show ip route komutunu uygulamamız gerekmektedir. Bu yazıda bu komutu uyguladığımızda çıktıda yer alan değerleri örnek bir senaryo ile inceleyeceğiz.
1-) Örnek yapımız aşağıdaki görseldeki gibidir;
Bu yapıda 192.168.1.0/24 ve 10.0.0.0/8 networku bulunmaktadır.
2-) İki networkün birbirleriyle haberleşmesi için router cihazları üzerine route yazmamız gerekmektedir. Bu işlemi aşağıdaki komutlar ile yapabiliriz;
Router0 cihazına yazacağımız route bilgisi
ip route 10.0.0.0 255.0.0.0 192.168.2.2
Router1 cihazına yazacağımız route bilgisi
ip route 192.168.1.0 255.255.255.0 192.168.2.2
3-) Router0 üzerinden route tablosuna bakalım. Bu işlem için aşağıdaki komutları uygulayalım;
enable
show ip route
Görselde de görüldüğü gibi Router0 cihazın 10.0.0.0 networküne ulaşmak için Router1 cihazın 192.168.2.2 ip adresli ara yüzünü kullandığı gözükmektedir.
4-) Şimdi de Router0 üzerinden route tablosuna bakalım. Bu işlem için aynı komutları uygulayalım;
enable
show ip route
Görselde de görüldüğü gibi Router1 cihazın 192.168.1.0 networküne ulaşmak için Router0 cihazın 192.168.2.1 ip adresli ara yüzünü kullandığı gözükmektedir.
Bu yazıda Cisco cihazlarda route tablosunun nasıl inceleneceğini anlattık. Tekrar görüşmek üzere. Şimdilik hoşçakalın.
Linux sistemimizi dhcp sunucu olarak yapılandırarak network yapımızda bulunan client cihazlara ip dağıtımı yapabilmemiz mümkündür. Bu işlem için uygulamamız gereken adımları bu yazıda detaylı olarak anlatacağım.
Not: İşlemler Ubuntu işletim sistemi üzerinde yapılmıştır.
1-) İlk olarak su root komutunu uyguluyorum. Bu işlemden sonra root şifresi istenecektir. Şifreyi girip enter yaptığımda root yetkisine sahip olacağım.
su root
2-) Sunucu üzerine dhcp servisin kurmak için aşağıdaki komutu uyguluyorum;
sudo apt-get install isc-dhcp-server
Bu komutu uyguladıktan sonra kurulumun onaylanması istenecektir. E tuşuna basıp enter yapıyorum. Eğer işletim sisteminiz İngilizce ise onaylama işlemi için Y tuşuna basıp enter yapmanız gerekecektir.
3-) Kurulumu yaptıktan sonra ağ kartımın ismini öğrenmem gerekmektedir. Bunun için ifconfig komutunu uyguluyorum;
ifconfig
Çıktıda ağ kartımın isminin enp0s3 olduğunu görüyorum.
4-) Nano editörü ile etc/default klasörünün içince yer alan isc-dhcp-server dosyasını açıyorum;
nano etc/default/isc-dhcp-server
5-) Açılan sayfada INTERFACESv4=”” yazan yerin tırnaklarının arasına 3.adımda öğrendiğim ağ kartımın ismini yazıyorum.
INTERFACESv4="enp0s3"
Dosyayı kaydetmek için CTRL + X tuşlarına birlikte basıyorum ve Y tuşuna basıp enter yapıyorum.
6-) Şimdi sıra ip dağıtma ile ilgili ayarları yapmaya geldi. Bu işlem için ilk olarak etc/dhcp klasörünün içinde yer alan dhcpd.conf dosyasını nano editörü ile açıyorum;
nano /etc/dhcp/dhcpd.conf
7-) Açılan sayfanın en altına aşağıdaki değerleri giriyorum;
Dosyayı kaydetmek için CTRL + X tuşlarına birlikte basıyorum ve Y tuşuna basıp enter yapıyorum. Burada 192.168.1.70-75 arasında ip dağıtılması için tanım yaptım. Ayrıca default gateway olarak 192.168.1.1, dns adresi olarak da 8.8.8.8 adresinin dağıtılmasını sağladım.
😎 Son olarak dhcp servisini resetlemek için aşağıdaki komutu uyguluyorum;
sudo /etc/init.d/isc-dhcp-server restart
9-) Bu dhcp sunucu ile aynı ortamda yer alan Windows 10 bilgisayarıma gidiyorum ve bu cihazımın ip adresini ipconfig komutu ile kontrol ediyorum.
Evet görüldüğü gibi bilgisayarım 192.168.1.70 ip adresini aldı. Yaptığım işlemler doğru olarak uygulandı ve sistemim istediğim gibi çalışıyor.
Bu yazıda Linux üzerine dhcp server rolünün nasıl kurulacağını anlattım. Takıldığınız yer olursa yorum bölümünden yazabilirsiniz. Kısa sürede dönüş yapacağım.