Linux网卡状态查看

article/2025/10/8 6:30:10

博文背景

想知道ip a命令的输出都是什么意思,过于简单的如mtu、mac地址和广播地址我就不解释了

具体操作

重要文档
https://baturin.org/docs/iproute2/
http://web.archive.org/web/20220807073512/http://www.policyrouting.org/iproute2.doc.html
https://lartc.org/howto/

详解开始

ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000link/ether 00:0c:29:34:c3:3b brd ff:ff:ff:ff:ff:ffaltname enp2s1inet 192.168.8.128/24 metric 100 brd 192.168.8.255 scope global dynamic ens33valid_lft 1025sec preferred_lft 1025secinet6 fe80::20c:29ff:fe34:c33b/64 scope linkvalid_lft forever preferred_lft forever

尖括号里面有up并且后面的state也有up那么为什么会有两个up呢?

请看https://superuser.com/questions/1463162/unknown-state-of-network-interface

这里提到网卡分为管理状态和运行状态

为了方便理解,我们断开虚拟机的网卡连接

vmware adapter

查看网卡状态

state down

会发现左边是up但是右边是down的状态

NO_CARRIER(大写)是一条从调制解调器发送到它所连接的设备(通常是计算机)的短信,表明调制解调器没有(或不再)连接到远程系统。

参考 https://en.wikipedia.org/wiki/NO_CARRIER

尖括号里面的东西叫网络设备的状态标识(net_device_flags)

参考 https://man7.org/linux/man-pages/man7/netdevice.7.html

BROADCAST:表示网卡有广播地址
MULTICAST:表示网卡可以发送多播包
UP:表示网卡处于启动的状态
LOWER_UP:网卡连接正常,就是网卡已经上电

参考 https://www.cnblogs.com/qgdtq/p/15350333.html

group指的是Link groups are similar to port ranges found in managed switches. You can add network interfaces to a numbered group and perform operations on all the interfaces from that group at once.Links not assigned to any group belong to group 0 (“default”).

参考 https://baturin.org/docs/iproute2/#ip-link-group

qdisc和qlen指的是Linux 操作系统中的流量控制器 TC (Traffic Control) 用于Linux内核的流量控制,它规定建立处理数据包的队列,并定义队列中的数据包被发送的方式,从而实现对流量的控制。qdisc(队列规则,queueing discipline)是 Linux 流量控制系统的核心。实际就是一个队列上面附加的排队规则,下文有时也直接称为队列。
qdisc其实就是一个调度器,每个网络接口都会有一个调度器,qdisc会根据调度器的规则重新排列数据包进入队列的顺序。qlen我暂且简单理解成队列的长度,可能有误,读者自行斟酌。
请看 https://blog.csdn.net/qq_44577070/article/details/123967699
参考 https://tldp.org/en/Traffic-Control-HOWTO/ar01s04.html

inet指的是Internet protocol family
参考 https://unix.stackexchange.com/questions/545462/what-does-inet-stand-for-in-the-ip-utility

link/loopback和link/ether指的应该就是网卡类型,具体没有找到权威解释

scope指的是

Scope | Description
global | valid everywhere
site | valid only within this site (IPv6)
link | valid only on this device
host | valid only inside this host (machine)

Scope is normally determined by the ip utility without explicit use on the command line. (…)

The scope of a route in Linux is an indicator of the distance to the destination network. The scope of an IP address is an indicator of how far from the local host the address is known, which, to some extent also tells you how far the owner of that address is from the local host (…).

Host: An address has a host scope when it is used only to communicate within the host itself. Outside the host this address is not known and can not be used. An Example is the loopback address, 127.0.0.1

Link: An address has a link scope when it is meaningful and can be used only within a LAN. An example is a subnet’s broadcast address.

Global: An address has global scope when it can be used anywhere. This is the default scope for most addresses. (…)

The main reason to use scopes seems to be that a host with multiple interfaces and addresses has to decide when to use which address. For communication with itself a loopback address (scope host) can be used. With communication elswhere, a different address has to be selected.

参考 https://serverfault.com/questions/63014/ip-address-scope-parameter

vaild_lft和preferred_lft指的是
Autoconfigured IPv6 global unicast addresses acquire their valid and preferred lifetime assignments from RAs. A valid lifetime is the time period during which an address is allowed to remain available and usable on an interface. A preferred lifetime is the length of time an address is intended for full use on an interface, and must be less than or equal to the address’s valid lifetime.
参考 https://techhub.hpe.com/eginfolib/networking/docs/switches/WB/16-01/5200-0135_wb_2920_ipv6/content/ch01s15.html

虽然针对ipv6的,但是有时候ipv4也会出现这玩意,有关ipv4我没找到详细资料但道理应该差不多。
根据 https://phoenixnap.com/blog/ipv4-vs-ipv6 显示对于ipv4这个概念并不适用。


http://chatgpt.dhexx.cn/article/7b7VAPrk.shtml

相关文章

SimpleDateFormat类 格式化日期

功能&#xff1a;格式化和解析日期 将Date类型的日期格式化成我们需要的日期类型一般是 字符串类型将字符串类的日期再转回来。 用到两个方法 format(Date date) &#xff1a; 将date型转换成特定格式的字符串 parse(String str) &#xff1a; 将字符串str转换成特定格式的dat…

php如何格式化日期格式,PHP如何格式化日期? 涨知识了

在做php开发时&#xff0c;经常会用到日期函数&#xff0c;我们可以通过这个函数将日期格式化输出显示。日期有多种的显示格式&#xff0c;这些格式在PHP里怎么格式化&#xff1f;下面一起来看下。 操作方法 01 先看下我们的代码&#xff0c;如图&#xff0c;在php里要获取到当…

Oracle格式化日期

将oralce中时间格式为XXX年XX月XX日&#xff0c;如下图: 需要给年月日添加引号&#xff0c;如to_char(sysdate,yyyy"年"mm"月"dd"日" )&#xff1b; select to_char(sysdate,yyyy"年"mm"月"dd"日") from dual;

微信小程序下拉菜单功能的实现

页面wxml代码如下&#xff1a; <!-- 下拉菜单栏 --><view classlist><ul class"font_s30"><li bindtap"getNav" data-idarea style"color:{{c_area}}"><view><span class "l_name" id"area&qu…

微信小程序-自定义下拉框组件

知识点&#xff1a;组件&#xff0c;animation&#xff0c;获取当前点击元素的索引与内容 微信小程序中没有select下拉选项框&#xff0c;所以只有自定义。自定义的话&#xff0c;可以选择模板的方式&#xff0c;也可以选择组件的方式来创建。 这次我选择了组件&#xff0c;这…

微信小程序下拉菜单组件实现

先看需求和效果&#xff0c;移动端设计比较常用的下拉菜单&#xff0c;主要用于筛选查询列表结果。下拉菜单的样式可以根据自己的具体需求进行修改。这里根据自己的实际需求开发了三种下拉类型&#xff1a; 效果展示 第一个是单选下拉菜单&#xff0c;单选之后立即收起。 第…

微信小程序 实现从顶部弹出的下拉框

效果图&#xff1a; 我尝试了微信提供的API wx.animation去实现这个功能&#xff0c;但很是麻烦&#xff0c;而且对于我这刚接触小程序的渣渣而言&#xff0c;实现起来也很是困难。所以我换了种方法&#xff0c;采用CSS的动画去实现。 wxml: <image classfabiao src../ico…

微信小程序下拉菜单实例

微信小程序下拉菜单思路与步骤&#xff1a; 布局方面&#xff0c;整体使用dl来写&#xff0c;二级包在dd中&#xff0c;用ul li来写&#xff1b;交互方面&#xff0c;点击某一级菜单&#xff0c;关闭兄弟子菜单&#xff0c;点击某子菜单关闭所有菜单。 1.使用dt做出第一级菜单 …

微信小程序实现上拉下拉菜单

问题 在使用小程序的时候基本的页面的一般都是很简洁的&#xff0c;所以会有一些菜单来做简单的诠释说明&#xff0c;或者是提供一些选项。这些菜单的弹出方式一般是向上和向下&#xff0c;那么如何来设置这些上下拉的菜单呢&#xff1f; 方法 上下拉菜单在微信小程序中起提示、…

微信小程序例子——下拉列表

1、效果展示 2、关键代码 .js文件 Page({data:{// text:"这是一个页面"open:false},showitem:function(){this.setData({open:!this.data.open})},onLoad:function(options){// 页面初始化 options为页面跳转所带来的参数},onReady:function(){// 页面渲染完成},onS…

uni-app微信小程序——下拉多选框

插件来自&#xff1a;select-cy - DCloud 插件市场 1、组件代码 <template><view class"uni-select-cy" :style"{ z-index: zindex }"><view class"uni-select-cy-select" :class"{ active: active }" click.stop&quo…

微信小程序下拉框选择

wxml代码 <view classtop-selected bindtapbindShowMsg><text>{{grade_name}}</text> </view> <!-- 下拉需要显示的列表 --> <view class"select_box" wx:if"{{select}}"><view wx:for"{{grades}}" wx:…

微信小程序——自定义下拉框

微信小程序本身并没有自带的下拉框组件&#xff0c;我们可以通过view标签自定义一个下拉框。(仅供参考&#xff09; 目录 文件目录实现效果实现逻辑设置数据设置默认选项实现弹出下拉框提供选项值设置所选值 源码wxmlwxssjs 文件目录 文件的功能&#xff1a; xxx.js&#xff…

小程序如何实现下拉选项操作

wxml文件代码 <picker class"picker" mode"selector" bindchange"bindAccountChange" value"{{accountIndex}}" range-key"label"range"{{accounts}} "><view class"weui-select">{{accou…

小程序下拉列表框菜单

小程序下拉列表框菜单 <view classtop><view classtop-text> 选择班别</view><!-- 下拉框 --><view classtop-selected bindtapbindShowMsg><text>{{grade_name}}</text><image src/images/xia.png></image></view&…

微信小程序的简单下拉框组件

网上的下拉框组件都不是自己想要的于是就自己写了一个。 wxml 原代码上传竟然显示不出来&#xff0c;wxml只能截图了&#xff0c;然后是js部分 data: { dropdownData:[“综合排序”,”行政区”,”商业圈”],//下拉框的数组 selectData: [‘默认排序’, ‘距离我最近’, …

微信小程序组件 —— 树形下拉框

因为项目需求&#xff0c;需要一个树形下拉选择框&#xff0c;参考了网上的树形结构整理出了这样一个效果图 下载地址&#xff1a;wx_treeSelect下载 其实主要还是参考了treeview的递归思想 微信小程序实现简单的树形图treeview 绘制出下拉框内的内容&#xff0c;在加个状态判…

微信小程序 一个简单的select下拉框

微信小程序 一个简单的select下拉框 用的是transform过渡&#xff0c;没用动画 看看效果 废话不多说&#xff0c;直接上代码 wxml: <view class"item"><label class"first"><text>*</text>公司/商户类型&#xff1a;</labe…

微信小程序下拉选项框

效果图 test.js /*** 页面的初始数据*/data: {shows: false, //控制下拉列表的显示隐藏&#xff0c;false隐藏、true显示selectDatas: [消费账户, 平台返利账户, 微信钱包], //下拉列表的数据indexs: 0, //选择的下拉列 表下标,},// 点击下拉显示框selectTaps() {this.setDa…

微信小程序select下拉框实现。

小程序中是没有h5中的下拉 标签的 所以要实现下拉功能就必须自己动手写拉 这里为了更清楚的显示层级 就把源码直接复制过来了 <view classlist-msg><view classlist-msg1><text>商品金额</text><text>&#xffe5;99.00</text></view&…