这ifconfig
命令会向您转储大量信息,特别是如果您有很多接口,并且您不知道它们来自哪里。我已读完“Ifconfig 命令 - 详细解释”教程页面,其中提供了大部分信息的详细概述ifconfig
。但它并没有包含我想要的所有信息(而且这篇文章在 2006 年发布后也可能已经过时)。
使用ip addr show eth0
:
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
link/ether 08:00:27:e2:80:18 brd ff:ff:ff:ff:ff:ff
inet 10.0.2.15/24 brd 10.0.2.255 scope global eth0 valid_lft forever preferred_lft forever
我发现解析一些输出很困难。
- 在下面
eth0
:<…>
描述……接口功能?不确定在哪里可以找到全套选项,不确定它们叫什么,不知道该用谷歌搜索什么。还有什么其他选择?state UP
– 我知道还有state DOWN
和state RUNNING
。这些都是软件构造,对吧?当我跑步时,身体上没有任何变化ip link set dev eth0 down
,对吧?那么当这种状态发生变化时,内核会如何采取不同的行为呢?这种状态会改变吗?group default
– 接口组。他们解决的独特问题是什么?
- 在下面
inet
- 这是什么
scope global
意思? – 私有IP如何具有全球范围?我缺少什么?
- 这是什么
该命令输出的语法是什么?
答案1
以下是我已经可以解析的部分,供有相同问题的其他人参考。
eth0
是接口名称。它可以是任何字符串:mtu 1500
最大传输单元= 1500 字节,这是通过该接口发送的帧的最大大小。该数量通常受到以太网协议上限 1500 的限制。如果您发送较大的数据包并且它到达以太网接口,则该帧将被分段,其有效负载将在两个或多个数据包中传输。这实际上没有任何好处,所以最好遵循标准。qdisc
pfifo_fast
排队规则=先进先出的三个管道。这决定了接口在过载时如何选择接下来传输哪个数据包。group default
接口组通过组合客户端上聚合接口的功能,为客户端提供单个接口。qlen 1000
传输队列长度 = 1000 个数据包。第 1000 个数据包将排队,第 1001 个数据包将被丢弃。
link/ether
表示链路层协议为以太网:brd
意思是广播。这是设备在发送广播时设置为目的地的地址。接口可以看到它所在线路上的所有流量,但足够礼貌,只能读取发送给它的数据。对接口进行寻址的方式是使用其特定地址或广播地址。
inet
表示网络层协议是internet
(ipv4
)。inet6
意味着 IPv6。lft
代表一生。如果您通过以下方式获得此地址动态主机配置协议,那么您的 IP 地址租约就有有效的生命周期。只是为了让交接更容易一点,(可能)更短首选寿命。
答案2
从主机的角度来看,具有全局范围的地址是全局的,即它们不限于主机或本地链路。如果地址落在 RFC1819(专用互联网地址分配)中指定的范围内,主机并不关心,也不做任何不同的事情。 “私有”地址仅按照惯例是私有的。主机不关心哪个路由器进行 NAT,也不关心从私有地址到公共地址的地址转换距主机有多少跳。此外,您也可以使用其他地址实现 NAT。