ifconfig

Bugün GNU/Linux kullanan sistem yöneticilerinin çoğu eski alışkanlıklarından dolayı ağ cihazlarını (NIC) ayarlamak için ifconfig komutunu kullanırlar, ancak ifconfig uzun süredir geliştirilmeyen ve artık terk edilen (deprecated) bir yazılımdır. Dolayısıyla kullanmamak daha doğrudur.

Programın geliştirilmesinin durdurulduğu ilk olarak Debian mail listinde paylaşıldı. Bugün CentOS 7 gibi sistemlerde bu komut bulunmamaktadır.

Duyuruyu şuradan görebilirsiniz: https://lists.debian.org/debian-devel/2009/03/msg00780.html

ifconfig'in artık geliştirilmemesinin pek çok sebebi vardır, ve bunun yerine ip komutunun kullanımı tavsiye edilir. Örneğin netmask tanımlanmasına CIDR notasyonu desteklenmez, 255.255.255.248 yerine /29 yazamazsınız.

Öte yandan, bazı eski sistemlerde veya gömülü sistemlerde ip komutu bulunmayabilir. Bunun için nasıl çalıştığı hakkında fikir sahibi olmakta fayda var.

Mevcut Cihazları Listelemek

ifconfig programı parametresiz çağırıldığında mevcut ağ cihazlarını (NIC, Network Interface Controller) listeler.

eaydin@dixon ~ $ ifconfig eth0 Link encap:Ethernet HWaddr a0:d3:c1:5e:68:ec UP BROADCAST MULTICAST MTU:1500 Metric:1 RX packets:0 errors:0 dropped:0 overruns:0 frame:0 TX packets:0 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:0 (0.0 B) TX bytes:0 (0.0 B) lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 inet6 addr: ::1/128 Scope:Host UP LOOPBACK RUNNING MTU:65536 Metric:1 RX packets:7869 errors:0 dropped:0 overruns:0 frame:0 TX packets:7869 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:3719917 (3.7 MB) TX bytes:3719917 (3.7 MB) wlan0 Link encap:Ethernet HWaddr 80:56:f2:5b:ad:ab inet addr:192.168.99.20 Bcast:192.168.99.255 Mask:255.255.255.0 inet6 addr: fe80::8256:f2ff:fe5b:adab/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:416423 errors:0 dropped:0 overruns:0 frame:0 TX packets:281587 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:531301670 (531.3 MB) TX bytes:38844271 (38.8 MB)

 

Yukarıdaki çıktıda 3 cihaz görülüyor.

eth0: Ethernet kartı cihazı. Açık konumda (UP) ancak bir IP adresi yok. HWaddr ile gösterilen kısım MAC adresi.

lo: Lookback interface. Yerel ağ'ın oluşması, 127.0.0.1 IP adresinin bir yere işaret edebilmesi için oluşan sanal cihaz.

wlan0: Başka bir ethernet kartı. Adından anlaşılacağı üzere kablosuz (wireless) cihaz. Hem IPv4 hem de IPv6 adresleri görülüyor. Ayrıca RX ve TX ile giden, gelen paket sayısı ve miktarı gösteriliyor. Cihaz açıldığından beri 531.3MB indirme (download, receive) yapmış, 38.8MB gönderme (upload, transmisson) yapmış.

Tek cihazı görüntülemek için parametre olarak ismi verilebilir.

eaydin@dixon ~ $ ifconfig eth0 eth0 Link encap:Ethernet HWaddr a0:d3:c1:5e:68:ec UP BROADCAST MULTICAST MTU:1500 Metric:1 RX packets:0 errors:0 dropped:0 overruns:0 frame:0 TX packets:0 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)

 

Bazı durumlarda cihazların tamamı listelenmeyebilir. Özellikle DOWN durumda olan cihazları da görüntülemek için -a parametresi kullanılmalıdır.

ifconfig -a

Komut bazı bilgileri /proc altındaki dosyalardan öğrenir. Aşağıda birkaç örneğini görebilirsiniz.

eaydin@dixon ~ $ cat /proc/net/dev Inter-| Receive | Transmit face |bytes packets errs drop fifo frame compressed multicast|bytes packets errs drop fifo colls carrier compressed eth0: 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 lo: 3925336 8112 0 0 0 0 0 0 3925336 8112 0 0 0 0 0 0

 

iwconfig

Hangi cihazın kablosuz arayüzünün olduğunu (wireless extension) anlamak için iwconfig komutu kullanılabilir.

 

iwconfig komutu, bu bilgileri /proc/net/wireless dosyasını okuyarak derler.

 

iwconfig komutu ifconfig ile aynı şekilde kullanılabilir. ifconfig ile kullanacağınız bütün parametreleri iwconfig ile kullıp kablosuz cihazlarınızı ayarlayabilirsiniz.

 

Temel Komutlar

Aşağıda ifconfig ile temel cihaz ayarlamalarının nasıl yapıldığını göreceğiz.

ÖNEMLİ NOT: Bu ayarlar sistemi doğrudan etkiler, reboot gerektirmez. Dolayısıyla cihazın IP adresini veya benzer bilgileri değiştirirseniz internet erişimini etkileyebilirsiniz. Uzaktan bağlı olduğunuz cihazlarda bu komutları kullanırken dikkatli olmanızı tavsiye ederiz. Bu ayarlar sistem reboot olduğunda kaybolur, yani /etc/network/interfaces veya /etc/sysconfig/network-scripts/ifcfg-eth0 gibi dosyaları düzenlediğinizde olduğu gibi kalıcı değildir.

Cihaz Açıp Kapatmak

Cihazları (örn. eth0) aktif hale getirmek için

 

veya

 

Pasif hale getirmek içinse

 

veya

 

IP Adresi Atamak

Bir cihaza IP adresi atamak için cihaz isminden sonra doğrudan IP'yi yazabilirsiniz.

 

Netmask Atamak

Cihazın netmaskını belirtmek için kullanılır, daha önce belirttiğimiz gibi CIDR notasyonunu desteklemez.

 

Broadcast Tanımlamak

Netmask tanımlamaya oldukça benzerdir.

 

IP Adresi, Netmask ve Broadcast'i Aynı Anda Tanımlamak

Genellikle yukarıdaki işlemler tek komut ile gerçekleştirilir.

 

MTU Ayarlamak

MTU (Maximum Transmission Unit - Maksimum Aktarım Birimi) ayarlanabilir. Bu ayarı her kart desteklemeyebilir, çoğunlukla değiştirmenize de gerek olmaz. Ancak bir sebepten değiştirmek isterseniz aşağıdaki şekilde ayarlayabilirsiniz. Buradaki MTU birimi Byte cinsindendir.

 

Promiscuous Mode

Ethernet kartınız destekliyorsa (son yıllarda büyük çoğunluğu destekliyor) kartınıza gelen ancak sizi ilgilendirmeyen paketleri de CPU'ya gönderip işlemenize olanak sağlayabilirsiniz. Böylece ağınızdaki trafik hakkında fikir sahibi olabilirsiniz.

Açmak için

 

Kapatmak için

 

MAC Adresini Değiştirmek

Cihazınızın MAC adresini değiştirebilirsiniz. Genellikle ağdaki ARP tablolarının karışmasına sebep olacaktır bu yüzden dikkatli kullanmanızda fayda var.