当前位置 主页 > 服务器问题 > Linux/apache问题 >

    解读Linux下ip命令展示的网络连接信息

    栏目:Linux/apache问题 时间:2019-10-07 19:29

    前言

    ip 命令可以告诉你很多网络连接配置和状态的信息,但是所有这些词和数字意味着什么? 让我们深入了解一下,看看所有显示的值都试图告诉你什么。

    当您使用 ip a(或 ip addr)命令获取系统上所有网络接口的信息时,您将看到如下所示的内容:

    $ ip a
    1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
     link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
     inet 127.0.0.1/8 scope host lo
     valid_lft forever preferred_lft forever
     inet6 ::1/128 scope host
     valid_lft forever preferred_lft forever
    2: enp0s25: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
     link/ether 00:1e:4f:c8:43:fc brd ff:ff:ff:ff:ff:ff
     inet 192.168.0.24/24 brd 192.168.0.255 scope global dynamic enp0s25
     valid_lft 57295sec preferred_lft 57295sec
     inet6 fe80::2c8e:1de0:a862:14fd/64 scope link
     valid_lft forever preferred_lft forever

    这个系统上的两个接口 - 环回(lo)和网络(enp0s25)——显示了很多统计数据。 lo 接口显然是环回地址loolback。 我们可以在列表中看到环回 IPv4 地址(127.0.0.1)和环回 IPv6(::1)。 而普通的网络接口更有趣。

    为什么是 enp0s25 而不是 eth0

    如果你想知道为什么它在这个系统上被称为 enp0s25,而不是可能更熟悉的 eth0,那我们可以稍微解释一下。

    新的命名方案被称为“可预测的网络接口Predictable Network Interface”。 它已经在基于systemd 的 Linux 系统上使用了一段时间了。 接口名称取决于硬件的物理位置。 en 仅仅就是 “ethernet” 的意思,就像 “eth” 用于对应 eth0,一样。 p 是以太网卡的总线编号,s 是插槽编号。 所以 enp0s25 告诉我们很多我们正在使用的硬件的信息。

    <BROADCAST,MULTICAST,UP,LOWER_UP> 这个配置串告诉我们:

    BROADCAST   该接口支持广播
    MULTICAST   该接口支持多播
    UP          网络接口已启用
    LOWER_UP    网络电缆已插入,设备已连接至网络

    列出的其他值也告诉了我们很多关于接口的知识,但我们需要知道 brd 和 qlen 这些词代表什么意思。 所以,这里显示的是上面展示的 ip 信息的其余部分的翻译。

    mtu 1500                                    最大传输单位(数据包大小)为1,500字节
    qdisc pfifo_fast                            用于数据包排队
    state UP                                    网络接口已启用
    group default                               接口组