如何找到可用的网络接口?


88

这是关于linux的,但是如果有人知道通用的* nix方法会很好。

昨天,我使用插入的以太网电缆引导了系统。未安装“ NetworkManager”,因此一旦启动,我便去寻找用于ifconfig手动启动DHCP客户端的以太网接口的名称,但是除了显示其他内容外lo

通过列出了NIC lspci,并加载了适当的内核驱动程序。系统通常使用wifi,我记得它的接口名称是wlan0。当我尝试时ifconfig wlan0 upwlan0出现了。但是我能记得的只有以太网接口的名字是eth[N]em[N]-这两者都不工作。

本文档引用了“可预测的接口名称”,但是并不能很好地用简单的术语解释它们的含义。它确实引用了一段源代码,这意味着在这种情况下,该名称可能是从PCI总线和插槽号推导出来的,这似乎是不必要的复杂麻烦。

其他搜索使我相信,这可能是由systemd与结合确定的udev,但是其中几乎有100个文件/usr/lib/udev/rules.d,花了一个小时试图确定在哪里(如果有)有一个systemd配置文件,这似乎也很荒谬。

这也将是不错的肯定知道,他们是可用的,不只是他们怎么可能被命名为,如果是这样,所以我可以排除硬件问题等是不是有一个简单的方法来找到可用的网络接口的名称在Linux上?


在该问题中,您说自己曾经使用过,ip link但随后您接受了一个答案,该答案表明ip link show哪个功能完全相同。为什么?
PavelŠimerda2014年

@PavelŠimerda你是对的。我可能实际上已经使用过ip route-问题解决后第二天就写了这个问题(请参阅我自己的答案);我不习惯使用ip并且不欣赏过分斯巴达的手册页,因此我很可能在尝试了一下之后就开始放弃了/sys,因为我知道kmod已加载,等等,这更简单了。对我来说。我将从问题中完全删除它。
goldilocks 2014年

如今,iproute2的手册页相当不错,我想您使用的是旧版本的软件包。
PavelŠimerda2014年

Answers:


93

我知道列出所有接口的最简单方法是

ifconfig -a

编辑

如果您使用的系统已过时,则可以使用

ip link show

3
如果我只是看了手册页!有趣的是,知道是否ip具有并行功能,因为据认为ifconfig被“废弃”了,从而使该(IMO)更钝且用户友好性较低。
goldilocks 2014年

2
我的第一件事man ifconfig:“注意,该程序已过时!要替换ip ...,这可能特定于linux。希望他们必须保留它以便与某些东西向后兼容。
goldilocks 2014年

4
如果不建议使用ifconfig TMK,那么我们应该尝试使用显示示例ip。请参阅ifconfig维基百科文章:en.wikipedia.org/wiki/Ifconfig
slm

3
@slm尽管问题是(特定于)Linux,但使用两者的示例似乎不错,因为BSD用户可能仍然习惯于查看“ Linux”页面-实际上,我将把Linux从标题中删除并编辑一个一点(最初这是可以自行回答的,我认为没有可移植的方法)。
goldilocks 2014年

5
ifconfig已弃用?来吧。这个命令已经存在了大约30年。
Michael Martinez

72

内核/sys在(例如)PCI设备树中分别列出了它们的名称-尽管在您不知道从哪里开始的情况下在其中找到它们并不容易-并通过中的符号链接一起找到它们/sys/class/net。例如:

> ls /sys/class/net
em1 lo wlp6so

另一个例子:

> ls /sys/class/net
lo p6s1 wlan0

如果不确定哪个是哪个,则可以将它们全部放在其中:

ifconfig [name] up 

要么:

ip link set [name] up

然后看一下ifconfig(没有参数)列出的(相当清楚的)线索。从Freedesktop.org文档链接的系统源代码还涉及:

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

尽管在(p6s1)以上情况之一中,没有前缀。


我为以太网获取的前缀是eth。我相信en是无线局域网。
Kaushal Modi 2015年

4
@kaushalmodi eth是一个Linux内核。systemd通过udev Freedesktop.org的可预测接口名称实现-内核名称在同一意义上是不可预测的,这是造成所有混乱的原因。上面的报价明确地从此处粘贴n' 。除此之外,还有更多功能,因为我没有en用于以太网的任何系统化机器。最接近的是em,其他则完全不同。您可以自己阅读问题中的Freedesk.org链接以获取更多说明。
goldilocks 2015年

4
[后来]去年某个时候Fedora或systemd更正了吗?我的PCI以太网现在就在eno1
goldilocks


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.