Linux'ta yerel IP adresini görmek için ağ ayarlarını değiştirmeniz gerekmez. Terminalde ip addr komutunu çalıştırdığınızda bilgisayardaki ağ arayüzlerini ve bu arayüzlere atanmış IPv4 ile IPv6 adreslerini görebilirsiniz.

Çıktıda Ethernet, Wi-Fi, VPN, köprü ve konteyner arayüzleri aynı anda bulunabilir. Yalnız ilk görünen adresi almayın; kullandığınız bağlantının arayüzünü bulun ve loopback adreslerini dışarıda bırakın.

Buradaki yerel IP adresi, Linux sistemindeki bir ağ arayüzüne atanmış adrestir. İnternette görünen genel IP adresi ise farklı olabilir ve bu rehberdeki terminal çıktısıyla her zaman aynı değildir.

ip addr ile Yerel IP Adresini Bulma

ip komutu, Linux'ta ağ arayüzlerinin mevcut adreslerini görüntülemek için temel yöntemdir. ip addr ve ip address show aynı bilgileri verir; iki komut da yalnız mevcut yapılandırmayı gösterir ve ağ ayarlarını değiştirmez.

Tüm Ağ Arayüzlerini Görüntüleme

Terminalde şu komutlardan birini çalıştırın:

ip addr
ip address show

Her arayüz ayrı bir bölüm olarak görünür. lo loopback arayüzüdür; enp3s0 veya eth0 benzeri adlar Ethernet'i, wlp2s0 veya wlan0 benzeri adlar Wi-Fi bağlantısını gösterebilir. Arayüz adları dağıtıma, donanıma ve kullanılan ağ yöneticisine göre değişebilir.

Etkin Ağ Arayüzünü Seçme

Ethernet kablosuyla bağlıysanız Ethernet arayüzüne, kablosuz bağlıysanız Wi-Fi arayüzüne bakın. <...> içindeki UP bayrağı arayüzün etkinleştirildiğini gösterir; kablonun takılı veya bağlantının kullanılabilir olduğunu tek başına kanıtlamaz. Fiziksel bağlantıda state UP durumunu ve atanmış inet ya da inet6 adresini birlikte kontrol edin. Bu bilgiler internet erişimini tek başına doğrulamaz.

VPN, sanal makine veya konteyner yazılımları tun0, docker0 ya da br-... gibi ek arayüzler oluşturabilir. Bunların adresleri farklı ağlara ait olabilir. Ancak fiziksel kart bir ağ köprüsüne bağlıysa bilgisayarın yerel IP adresi kart yerine köprü arayüzüne atanmış olabilir. Bu durumda fiziksel kartın satırındaki master alanında belirtilen köprünün adreslerine bakın.

IPv4 ve IPv6 Satırlarını Okuma

inet ile başlayan satır IPv4 adresini gösterir. Örneğin 192.168.1.42/24 çıktısında 192.168.1.42 cihaz adresidir; /24, adresin ilk 24 bitinin ağı tanımladığını gösterir.

inet6 ile başlayan satırlar IPv6 adreslerini gösterir. scope link yazan ve genellikle fe80:: ile başlayan link-local adres yalnız aynı yerel bağlantıda kullanılır. scope global ise adresin tek bir bağlantıyla sınırlı olmadığını gösterir; internette yönlendirildiği anlamına gelmez. Örneğin fd ile başlayan ULA adresleri özel ağlarda ve bu ağlar arasında kullanılabilir, fakat genel internette yönlendirilmez. /64 gibi bir ek, IPv6 prefix uzunluğunu, yani ilk kaç bitin ağı tanımladığını belirtir.

Loopback adresleri: 127.0.0.1 yalnız bilgisayarın kendisini temsil eden IPv4 adresidir. ::1 ise bunun IPv6 karşılığıdır. Bu iki adres modem, yönlendirici veya aynı ağdaki başka cihazların ulaşacağı yerel ağ adresi değildir.

Çıktıyı IPv4 veya IPv6 ile Sınırlama

Çok sayıda arayüz ve adres varsa çıktıda yalnızca IPv4 veya yalnızca IPv6 adreslerini gösterebilirsiniz. IPv4 adresleri için ilk, IPv6 adresleri için ikinci komutu kullanın:

ip -4 address show
ip -6 address show

Arayüz adını biliyorsanız yalnızca o bağlantının bilgilerini görüntüleyebilirsiniz. Aşağıdaki örnekte wlp2s0 yerine kendi Ethernet veya Wi-Fi arayüzünüzün adını yazın:

ip address show dev wlp2s0

Bu filtreleme, köprü ve VPN adresleri arasında doğru satırı arama ihtiyacını azaltır. Komut yine yalnız mevcut yapılandırmayı okur.

hostname -I ile Kısa Çıktı Alma

hostname -I komutu, yapılandırılmış ağ arayüzlerinin adreslerini tek satırda gösterebilir:

hostname -I

Komutta küçük i yerine büyük I harfini kullanın. Çıktı loopback ve IPv6 link-local adreslerini dışarıda bırakır; buna karşılık Ethernet, Wi-Fi, VPN ve diğer yapılandırılmış arayüzlere ait birden fazla adres döndürebilir.

Adreslerin çıktı sırası her sistemde aynı olmayabilir. Birden fazla sonuç görürseniz ilk adresi doğrudan seçmeyin; adresin hangi arayüze ait olduğunu ip addr çıktısından kontrol edin.

NetworkManager Sistemlerinde nmcli Kullanma

NetworkManager kullanan dağıtımlarda nmcli komutuyla bağlantı bilgilerini ayrıca görebilirsiniz. Temel yöntem yine ip komutudur; çünkü nmcli her Linux kurulumunda bulunmaz.

nmcli device show

Bu komut ve makaledeki diğer adres görüntüleme komutları çoğu sistemde sudo gerektirmez; ağ ayarlarını değiştirmez.

Çıktıdaki GENERAL.DEVICE alanı arayüz adını, GENERAL.STATE alanı bağlantı durumunu, IP4.ADDRESS ile IP6.ADDRESS alanları ise atanmış adresleri gösterir. Belirli bir arayüz için komutun sonuna arayüz adı ekleyebilirsiniz:

nmcli device show wlp2s0

Yerel Ağ Bağlantılarında Kaynak ve Hedef Adresleri

Ev ve küçük ofis ağlarında IPv4 adresi çoğunlukla özel adres bloklarından birindedir: 10.0.0.0/8, 172.16.0.0/12 veya 192.168.0.0/16. Bu aralıklardaki adresler özel ağlarda ve aralarında yönlendirme bulunan özel ağlar arasında kullanılabilir; genel internette doğrudan yönlendirilmez.

Başka bir cihazdan bu Linux bilgisayara bağlanacaksanız o cihazın ulaşabildiği ağdaki Linux adresini kullanın. Ev ağında bu genellikle aynı modeme bağlı Ethernet veya Wi-Fi bağlantısının adresidir; köprü kurulumunda köprünün adresi olabilir. Ayrı ağlar arasındaki bağlantı için yönlendirme gerekir. Aynı ağda olsanız bile güvenlik duvarı, Wi-Fi istemci yalıtımı veya hizmetin dinlediği adres bağlantıyı engelleyebilir.

Linux bilgisayardan bir yazıcıya ya da başka bir sunucuya bağlanırken ise hedef olarak Linux bilgisayarın kendi adresini değil, erişeceğiniz cihazın veya hizmetin adresini girin. Sistem, kullandığı kaynak adresini hedefe giden rotaya ve varsa uygulama ayarlarına göre seçer.

Yerel ve Genel IP Adresleri Arasındaki Farklar

ip addr ve hostname -I, Linux kullanan bilgisayardaki ağ arayüzlerine atanmış adresleri gösterir. İnternetteki sitelerin gördüğü genel IP adresi çoğu ev ağında modem, yönlendirici veya internet servis sağlayıcısının uyguladığı adres çevirisi nedeniyle farklıdır.

Bilgisayara atanmış genel bir IPv6 adresiyle doğrudan internete çıkılıyorsa sitenin gördüğü adres arayüzdeki adresle aynı olabilir. VPN veya proxy kullanımı bu durumu değiştirebilir. Dış bir hizmetten bağlantının kaynak adresini sorgulayan terminal komutları ise o hizmetin gördüğü çıkış adresini verir; bilgisayardaki bütün yerel adresleri listelemez.