ip link 命令总结 您所在的位置:网站首页 SET什么指令功能 ip link 命令总结

ip link 命令总结

2024-01-20 04:35| 来源: 网络整理| 查看: 265

link表示link layer的意思,即链路层。该命令用于管理和查看网络接口。 ip link set

ip link set DEVICE { up | down | arp { on | off } | name NEWNAME | address LLADDR } 选项说明: dev DEVICE:指定要操作的设备名 up and down:启动或停用该设备 arp on or arp off:启用或禁用该设备的arp协议 name NAME:修改指定设备的名称,建议不要在该接口处于运行状态或已分配IP地址时重命名 address LLADDRESS:设置指定接口的MAC地址

例如:

停用 eth1网卡: ~ # ip link set eth1 down 启用 eth1网卡: ~ # ip link set eth1 up 等价于: ~ # ifconfig eth1 down 或 ifconfig eth1 up

ip link show

语法格式: ip [ -s | -h | -d ] link show [dev DEV] 选项说明: -s[tatistics]:将显示各网络接口上的流量统计信息; -h[uman-readable]:以人类可读的方式显式,即单位转换; -d[etails]:显示详细信息 (选项说明可以通过ip help查看)

例如:

~ # ip -s -h -d link show dev eth0 5: eth0: mtu 1500 qdisc mq state UNKNOWN mode DEFAULT group default qlen 1000 link/ether 00:01:02:a4:71:28 brd ff:ff:ff:ff:ff:ff promiscuity 0 numtxqueues 8 numrxqueues 8 RX: bytes packets errors dropped overrun mcast 160M 2.86M 0 0 0 0 TX: bytes packets errors dropped carrier collsns 192k 1.43k 0 0 0 0 ~ #

各字段含义说明:

BROADCAST:支持广播 MULTICAST:支持组播 UP:代表网卡开启状态;如果是关闭状态则不显示UP(重要) LOWER_UP:有说法是代表网卡的网线被接上,自己测试验证发现使用ifconfig eth0 down后,UP和LOWER_UP均不显示; 使用ifconfig eth0 up后,UP和LOWER_UP均显示(重要) 参考补充(3) mtu 1500:网络接口的最大传输单元(Maximum Transmission Unit ):1500字节。是包或帧的最大长度,一般以字节记。 qdisc:排队规则 state UNKNOWN : mode DEFAULT : group default : qlen 1000: link/ether 00:01:02:a4:71:28 表示物理网卡地址 brd ff:ff:ff:ff:ff:ff promiscuity 0 numtxqueues 8 numrxqueues 8 ~ # ip -s -h -d link show dev can0 3: can0: mtu 16 qdisc pfifo_fast state UNKNOWN mode DEFAULT group default qlen 10 link/can promiscuity 0 can state ERROR-ACTIVE restart-ms 100 bitrate 250000 sample-point 0.800 tq 400 prop-seg 3 phase-seg1 4 phase-seg2 2 sjw 1 mcp251x: tseg1 3..16 tseg2 2..8 sjw 1..4 brp 1..64 brp-inc 1 clock 12500000 re-started bus-errors arbit-lost error-warn error-pass bus-off 0 0 0 0 0 0 numtxqueues 1 numrxqueues 1 RX: bytes packets errors dropped overrun mcast 21.6M 2.71M 1 0 1 0 TX: bytes packets errors dropped carrier collsns 0 0 0 0 0 0 ~ #

各字段含义说明:

NOARP:没有arp协议 ECHO:Echo发送的数据包 can state ERROR-ACTIVE restart-ms 100: 一般情况,正常的时候,每个节点大多数时间出于CAN_STATE_ERROR_ACTIVE这个状态,也就是错误主动状态。别看这个状态名字叫错误,但是实际上就 是对应的普通状态。标示这个节点检测到错误,会发出主动错误标示。 随着问题的增多,节点逐渐会升级到CAN_STATE_ERROR_WARNING状态。但是这个状态并没有固定的硬件标示,实际上是一个软件层面的预警。也就是 说,对于CAN_STATE_ERROR_ACTIVE和CAN_STATE_ERROR_WARNING而言,这个节点的任何逻辑行为(包括软硬件)都不会有什么区别。 随着问题的继续增多,节点会升级到CAN_STATE_ERROR_PASSIVE状态。在这个状态下,节点的硬件行为会改变,收到错误的时候,发送的是被动错误标 示。 如果此时问题还会继续,则节点会进入CAN_STATE_BUS_OFF状态。这个时候只有检测到128个连续的11个隐性位才能回到CAN_STATE_ERROR_ACTIVE。(参考文献8) 如果使用ip link set can0 down关闭can设备,can state显示为: STOPPED restart-ms 100:自动重启的延时时间。出现太多错误时,设备可能进入总线关闭状态,给canrestart-ms 设置一个非零值,可以开启总线关闭自动恢复功能, 设置时需要先关闭can设备,如: ip link set can0 down ip link set can0 type can bitrate 250000 loopback on ip link set can0 type can restart-ms 200 ip link set can0 up (参考文献9) bitrate 250000 sample-point 0.800 波特率:250000 sample-point:采样点(参考文献10) tq 400 prop-seg 3 phase-seg1 4 phase-seg2 2 sjw 1 mcp251x: tseg1 3..16 tseg2 2..8 sjw 1..4 brp 1..64 brp-inc 1 (参考文献11-12) re-started bus-errors arbit-lost error-warn error-pass bus-off 重启次数、总线错误、仲裁丢失错误、错误主动(error-warning)、错误被动(error-passive)、总线关闭。接收的过载错误在统计信息的"overrun"域下面列出。 TX :将套接字缓冲区的CAN帧发送到CAN控制器;RX :从CAN控制器的CAN帧读取到套接字缓冲区。 (参考文献13)

补充: (1)除了ip link set 和ip link show,ip link还有其他选项,可以通过ip link help查看; (2)ip命令除了ip link还有其他选项,可以通过ip help查看;(参考文献2-4) (3)参考文献5:

IFF_ALLMULTI Receive all multicast packets. 接收所有多播数据包。 IFF_AUTOMEDIA Auto media selection active. 自动媒体选择激活。 IFF_BROADCAST Valid broadcast address set. 有效的广播地址集。 IFF_DEBUG Internal debugging flag. 内部调试标志。 IFF_DORMANT Driver signals dormant (since Linux 2.6.17) 驱动程序信号休眠(从Linux 2.6.17开始) IFF_DYNAMIC The addresses are lost when the interface goes down. 当接口关闭时,地址将丢失。 IFF_ECHO Echo sent packets (since Linux 2.6.25) Echo发送的数据包(从Linux 2.6.25开始) IFF_LOOPBACK Interface is a loopback interface. 接口是一个环回接口。 IFF_LOWER_UP Driver signals L1 up (since Linux 2.6.17) 驱动程序信号L1启动(从Linux 2.6.17开始) IFF_MASTER Master of a load balancing bundle. 负载平衡捆绑包的主控程序。。 IFF_MULTICAST Supports multicast 支持多播 IFF_NOARP No arp protocol, L2 destination address not set. 没有arp协议,未设置二级目标地址。 IFF_NOTRAILERS Avoid use of trailers. IFF_POINTOPOINT Interface is a point-to-point link. IFF_PORTSEL Is able to select media type via ifmap. IFF_PROMISC Interface is in promiscuous mode. IFF_RUNNING Resources allocated. IFF_SLAVE Slave of a load balancing bundle. IFF_UP Interface is running. 参考资料

参考文献1:linux–ip link命令 参考文献2:ifconfig、route、ip route、ip addr、 ip link 用法 参考文献3:IP命令详解 参考文献4:ifconfig、route、ip route、ip addr、 ip link 用法 参考文献5:网卡信息 UP 和 LOWER_UP 区别 参考文献6:趣谈计算机网络1 - 通讯协议综述 参考文献7:MAC地址详解 参考文献8:ARM Linux CAN 异常排查步骤 参考文献9:SocketCan 问题笔记 参考文献10:CAN采样点设置为多少合适 参考文献11:CAN总线模块的位时间(Bit-Timing)配置 参考文献12:CAN通讯系列–CAN总线基础 参考文献13:树莓派spi转can通信之C编程实现



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有