• Linux网络相关


    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                               接口组
    qlen 1000                                   传输队列长度
    link/ether 00:1e:4f:c8:43:fc                接口的 MAC(硬件)地址
    brd ff:ff:ff:ff:ff:ff                       广播地址
    inet 192.168.0.24/24                        IPv4 地址
    brd 192.168.0.255                           广播地址
    scope global                                全局有效
    dynamic enp0s25                             地址是动态分配的
    valid_lft 80866sec                          IPv4 地址的有效使用期限
    preferred_lft 80866sec                      IPv4 地址的首选生存期
    inet6 fe80::2c8e:1de0:a862:14fd/64          IPv6 地址
    scope link                                  仅在此设备上有效
    valid_lft forever                           IPv6 地址的有效使用期限
    preferred_lft forever                       IPv6 地址的首选生存期

    您可能已经注意到,ifconfig 命令提供的一些信息未包含在 ip a 命令的输出中 —— 例如传输数据包的统计信息。 如果您想查看发送和接收的数据包数量以及冲突数量的列表,可以使用以下 ip 命令:

    $ ip -s link show enp0s25
    2: enp0s25: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000
     link/ether 00:1e:4f:c8:43:fc brd ff:ff:ff:ff:ff:ff
     RX: bytes packets errors dropped overrun mcast
     224258568 418718 0 0 0 84376
     TX: bytes packets errors dropped carrier collsns
     6131373 78152 0 0 0 0

    另一个 ip 命令提供有关系统路由表的信息。

    $ ip route show
    default via 192.168.0.1 dev enp0s25 proto static metric 100
    169.254.0.0/16 dev enp0s25 scope link metric 1000
    192.168.0.0/24 dev enp0s25 proto kernel scope link src 192.168.0.24 metric 100

    ip 命令是非常通用的。 您可以从 ip 命令及其来自Red Hat的选项获得有用的备忘单。

    检查网卡多队列是否绑定了多核

    watch -d  -n1 "cat /proc/interrupts|grep xgbe0"

    这里记录的是自启动以来,每个CPU处理各类中断的数量。第一列是中断号,中间为中断在各CPU发生的次数,最后一列是对应的设备名。通过上面的命令发现中间的数字在变化,表明xgbe0所发出的中断由不同的cpu在处理,表明网卡多队列已经绑定多核,如果网卡所发出的中断全部都是cpu0在处理,则表明网卡多队列未绑定多核。

    摘录:https://zhuanlan.zhihu.com/p/35054568

  • 相关阅读:
    c# 方法重载
    c# propertyGrid下拉选项
    c# 枚举类型
    c# socket编程
    读书笔记之ado.net entity framework
    c# delegate的invoke和bejinInvoke的区别
    C# 读书笔记之类与结构体
    c#笔记之启动新线程
    c# listview的使用
    visual studio2013 改变匹配括号的颜色
  • 原文地址:https://www.cnblogs.com/hoganhome/p/15921620.html
Copyright © 2020-2023  润新知