Kullanılabilir ağ arayüzlerini nasıl bulabilirim?


88

Bu linux ile ilgili, ancak eğer biri genel * nix yöntemini bilen biri olursa bu iyi olurdu.

Dün sisteme bir ethernet kablosu takılıyken başlattım. "NetworkManager" kurulu değil, bu yüzden bir kez ifconfigDHCP istemcisini elle başlatmak için ethernet arabiriminin adını aramaya başladım , ancak başka bir şey göstermedi lo.

NIC, ile listelenmiştir lspcive uygun çekirdek sürücüsü yüklenmiştir. Sistem normalde wifi kullanır ve bunun için arayüz adını hatırlayabiliyordum wlan0. Denedim ifconfig wlan0 up, wlan0ortaya çıktı. Fakat hatırlayabildiğim tek ethernet arayüzü ismi vardı eth[N]ve em[N]ikisi de işe yaramadı.

Bu belge "öngörülebilir arayüz adları" anlamına gelir ancak basit terimlerle neler olabileceklerini açıklamak konusunda iyi bir iş çıkarmaz. Bu durumda, ismi gereksiz yere karmaşık bir güçlük gibi görünen PCI veri yolu ve slot numaralarından düşülebilecek bir kaynak koduna işaret eder.

Etraftaki diğer araştırmalar bununla systemdbağlantılı olarak belirlenebileceğine inanmamı sağladı udev, ancak neredeyse 100 dosya var /usr/lib/udev/rules.dve bunun için bir sistemd yapılandırma dosyasının nerede (ve eğer ) bulunmasının çok saçma göründüğünü belirlemeye çalışıyorum .

Ayrıca kesin olarak bilmek güzel olurdu onlar adlandırılmış olabilir değil sadece nasıl mevcut olduğunu eğer vs., bunlar, bu yüzden donanım sorunlarını eleyebilmemiz mevcut ağ arayüzleri isimlerini bulmak için basit bir yol yok mudur Linux'ta?


Sorunuzda kullandığınızı belirtiyorsunuz, ip linkfakat o zaman ip link showtam olarak aynı şeyi yapan bir cevabı kabul ediyorsunuz . Neden?
Pavel Šimerda

@ PavelŠimerda Haklısın. Aslında kullanmış olabilirdim ip route- bu soruyu, ertesi gün, sorun çözüldükten sonra yazdım (kendi cevabımı görün); ipAşırı derecede spartan man sayfalarını kullanma alışkanlığımda değilim ve bu yüzden çok beğenmedim, bu yüzden muhtemelen bir denemeden ve geçtikten sonra pes /sysettim, kmod'un yüklendiğini vb. bana göre. Bunu tamamen sorudan kaldıracağım.
goldilocks

İproute2'nin manuel sayfaları günümüzde oldukça iyi, sanırım paketin eski sürümünü kullanıyorsunuz.
Pavel Šimerda

Yanıtlar:


93

Tüm arayüzlerinizi listelediğimi bildiğim en basit yöntem

ifconfig -a

DÜZENLE

Bunun kullanılmadığı bir sistemdeyseniz,

ip link show

3
Adam sayfasına baksaydım! ipParalel olup olmadığını bilmek ilginçtir , çünkü sözde konfigürasyonun (IMO) daha geniş ve daha az kullanıcı dostu bir komutla "eskisi" yapılması gerekiyor.
goldilocks

2
İçimdeki ilk şey man ifconfig: "DİKKAT Bu program eskidir! Değiştirme kontrolü için ip ..." Bu linux'a özgü olabilir. Umarım bir şeyle geriye dönük uyumluluk için onu saklamak zorundadırlar.
goldilocks

4
ifconfig kullanımdan kaldırıldıysa, TMK, bu nedenle kullanarak örnekler göstermeye çalışmalıyız ip. İfconfig wikipedia makalesine bakın: en.wikipedia.org/wiki/Ifconfig .
slm

3
@slm Her ne kadar soru linux'a özgü olsa da, her ikisini de kullanan bir örnek , BSD kullanıcılarının yine de "linux" sayfalarına bakma alışkanlığı içinde olduğu gibi görünüyor - aslında linux'u başlıktan çıkaracağım ve bit (başlangıçta bu kendi kendine cevaplandı ve taşınabilir bir yöntem olduğunu düşünmedim).
goldilocks

5
ifconfig kullanımdan kaldırıldı mı? Haydi. Bu komut yaklaşık 30 senedir var.
Michael Martinez

72

Çekirdek /sys, her ikisini de (örneğin) PCI aygıtları ağacında ayrı ayrı adlandırarak listeler. Nerede başlayacaklarını bilmiyorsanız, onları bulmak basit değildir - ve birlikte sembolik bağlantılar yoluyla birlikte /sys/class/net. Örneğin:

> ls /sys/class/net
em1 lo wlp6so

Başka bir örnek:

> ls /sys/class/net
lo p6s1 wlan0

Hangisinin hangisi olduğundan emin değilseniz, ikisini birden kaldırabilirsiniz:

ifconfig [name] up 

Veya:

ip link set [name] up

Ve sonra ifconfig(tartışmasız) listelenen (oldukça açık) ipuçlarına bakın . Freedesktop.org belgesinden bağlı sistemd kaynak kodu ayrıca şunları ifade eder:

Two character prefixes based on the type of interface:
 *   en -- ethernet
 *   sl -- serial line IP (slip)
 *   wl -- wlan
 *   ww -- wwan

Yukarıdaki durumlardan birinde ( p6s1) olmasına rağmen önek yoktur.


Ethernet için aldığım önek eth. enKablosuz lan için olduğuna inanıyorum .
Kaushal Modi

4
@kaushalmodi ethlinux çekirdeğidir; systemd, udev Freedesktop.org'un tahmin edilebilir arayüz isimleri üzerinden uygulanmaktadır - çekirdek olanlar, bütün kafa karışıklıklarının nedeni olan aynı anlamda öngörülemez değildir. Yukarıdaki alıntı açıkça yapıştırılır ve buradan yapıştırılır . Bundan daha fazlası var, çünkü enethernet için kullanılan herhangi bir sistem makinem yok ; en yakını em, diğerleri tamamen farklı. Daha fazla açıklama için Freedesk.org bağlantısını kendiniz okuyabilirsiniz.
goldilocks

4
[Daha sonra] Geçen yıl bir süre Fedora mı yoksa systemd mi düzeldi? PCI ethernet'im şimdi eno1.
goldilocks


4

ifconfig= Solaris
ipconfig= Windows
ip= Linux

Bildiğim kadarıyla kesinlikle eklemelere ve düzeltmelere açığım.


2
Ha? ifconfig ayrıca Linux'tur.
fpmurphy

4
@ fpmurphy1 man ifconfigBir linux sistemindeki ilk paragrafı (özetin ardından) okuyun .
goldilocks
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.