解析 ip addr 的输出的内容含义

2024-01-30 15:50
文章标签 输出 ip 内容 解析 含义 addr

本文主要是介绍解析 ip addr 的输出的内容含义,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

解读 ip addr 的输出的网络连接信息含义

一、ifconfig 与 ip addr

用过Linux的读者都知道,在Linux查看ip可以使用ifconfig,当然这个ifconfig属于net-tools 工具集,其来源于BSD,Linux从2001年就不对其进行维护了。那我们应该用什么呢?还有iproute2 工具集,其功能更强大,我们今天就来讲讲该工具集的 ip addr命令。

而运行ip addr命令,会出现类似下面的的内容:

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN qlen 1link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00inet 127.0.0.1/8 scope host lovalid_lft forever preferred_lft foreverinet6 ::1/128 scope hostvalid_lft forever preferred_lft forever
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000link/ether 00:0c:62:3c:62:a1 brd ff:ff:ff:ff:ff:ffinet 192.168.108.19/24 brd 192.168.108.255 scope global ens33valid_lft forever preferred_lft foreverinet6 fe80::5df:3b5f:e5fe:ddc2/64 scope linkvalid_lft forever preferred_lft forever
二、IP

该命令会显示机器上的所有网卡,其中的192.168.108.19/24便是IPv4的地址,这个地址由4个部分组成,每个部分8个bit,因此整个地址空间有 4 294 967 296(232232)个地址,也就是近43亿个地址。地球上的人口都比这个多,何况我们很多人都不止使用一个IP地址吧?何况还有一些地址是作为特殊用途而保留的,如局域网专用地址(约1800万个地址)和组播地址(约2700万个地址)。这样IPv4能够使用的地址就更少了,所有我们有了IPv6,IPv6有128位,其地址空间有340282366920938463463374607431768211456个地址,我觉得暂时是够了。128位有点长,于是采用16进制来描述IPv6地址,所有看起来IPv6的地址只有32位。

在这里插入图片描述

如上图,IPv4地址被分为5类,前面的1或0是固定位数,Network是网络号,后面的Host是主机号,就和我们假如是三年二班李子明,三年二班就是网络号,李子明就是主机号,别的班也有可能叫李子明的。

再来看看划分的这几类网络,C类网络只能容纳254台主机,很多情况下都不够,而选择B类又太多了,很多情况下都多很多,那怎么办呢?

于是产生了CIDR,Classless Inter-Domain Routing,无类域间路由选择

二、CIDR

那么IPv4后面斜杠/以及后面的数字代表什么意思呢?这就和CIDR又关系了,192.168.108.19/24说明前24位是网络号,后8位是主机号。通过这种方式,它根据用户的要求根据某些规则动态分配IP地址。

还有一种叫做子网掩码的东西,将子网掩码与IP地址做与运算,就能得到网络号。

CIDR使IP地址从三级编址(使用子网掩码),又回到了两级编址,但这已是无分类的两级编址。

三、MAC地址

在命令输出结果中link/ether 00:0c:62:3c:62:a1 brd ff:ff:ff:ff:ff:ff代表MAC地址,是网卡的物理地址,这个MAC地址是网卡出厂就确定了的,具有唯一性。

但是具有唯一性,不代表我们就干脆用它来进行通信,可以这样类比:MAC地址是我们的身份证号,而IP地址是我们身份证上的地址。

你要找一个远方的朋友进行联系,你用这个身份证号去问别人,是不是没人知道,而用家庭地址一步一步去找,是不是肯定能找到。

那么MAC地址是不是就没用了呢,不是!其具有通信作用,你想想,你去问朋友的家人,这个身份证号是谁,他是不是能够知道。MAC地址的通信范围只能在一个子网中,只要跨子网,MAC地址就没有作用了。

四、其他
4.1 scope

inet 192.168.108.19/24 brd 192.168.108.255 scope global ens33这里面scope代表作用范围,ens33这张网卡这里查询是global,说明可以接受全局的包,哪里的包都接受。而lo网卡查询的scope是host,说明该网卡只能在本机通信。

4.2 lo

lo代表loopback,是虚拟接口,是一种纯软件性质的虚拟接口。任何送到该接口的网络数据报文都会被认为是送往设备自身的。

4.3 <BROADCAST,MULTICAST,UP,LOWER_UP>
<BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000

<BROADCAST,MULTICAST,UP,LOWER_UP> 这个东西是net_device flags网络设备的状态标识

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

至于mtu 1500是指最大传输单元MTU(Maximum Transmission Unit,MTU),表示网络可以传输的最大数据包大小,以字节为单位。

MTU的大小决定了发送端一次能够发送报文的最大字节数。如果MTU超过了接收端所能够承受的最大值,或者是超过了发送路径上途经的某台设备所能够承受的最大值,就会造成报文分片甚至丢弃,加重网络传输的负担。如果太小,那实际传送的数据量就会过小,影响传输效率。

4.5 QDisk

qdisc pfifo_fast中,QDisk是queueing discipline的简写,即排队规则。

这篇文章对排队规则介绍得非常好:[译] 《Linux 高级路由与流量控制手册(2012)》第九章:用 tc qdisc 管理 Linux 网络带宽 (arthurchiao.art)

4.6 statu

state UP 表示网络接口已启用。

4.7 Qlen

qlen 1000,Qlen代表传输队列长度,此处为1000。

4.8 valid_lft & preferred_lft

valid_lft forever IPv4/IPv6 地址的有效使用期限

Qlen代表传输队列长度,此处为1000。

4.8 valid_lft & preferred_lft

valid_lft forever IPv4/IPv6 地址的有效使用期限

preferred_lft forever IPv4/IPv6 地址的首选生存期

这篇关于解析 ip addr 的输出的内容含义的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/660742

相关文章

在Linux中改变echo输出颜色的实现方法

《在Linux中改变echo输出颜色的实现方法》在Linux系统的命令行环境下,为了使输出信息更加清晰、突出,便于用户快速识别和区分不同类型的信息,常常需要改变echo命令的输出颜色,所以本文给大家介... 目python录在linux中改变echo输出颜色的方法技术背景实现步骤使用ANSI转义码使用tpu

PostgreSQL的扩展dict_int应用案例解析

《PostgreSQL的扩展dict_int应用案例解析》dict_int扩展为PostgreSQL提供了专业的整数文本处理能力,特别适合需要精确处理数字内容的搜索场景,本文给大家介绍PostgreS... 目录PostgreSQL的扩展dict_int一、扩展概述二、核心功能三、安装与启用四、字典配置方法

深度解析Java DTO(最新推荐)

《深度解析JavaDTO(最新推荐)》DTO(DataTransferObject)是一种用于在不同层(如Controller层、Service层)之间传输数据的对象设计模式,其核心目的是封装数据,... 目录一、什么是DTO?DTO的核心特点:二、为什么需要DTO?(对比Entity)三、实际应用场景解析

深度解析Java项目中包和包之间的联系

《深度解析Java项目中包和包之间的联系》文章浏览阅读850次,点赞13次,收藏8次。本文详细介绍了Java分层架构中的几个关键包:DTO、Controller、Service和Mapper。_jav... 目录前言一、各大包1.DTO1.1、DTO的核心用途1.2. DTO与实体类(Entity)的区别1

Java中的雪花算法Snowflake解析与实践技巧

《Java中的雪花算法Snowflake解析与实践技巧》本文解析了雪花算法的原理、Java实现及生产实践,涵盖ID结构、位运算技巧、时钟回拨处理、WorkerId分配等关键点,并探讨了百度UidGen... 目录一、雪花算法核心原理1.1 算法起源1.2 ID结构详解1.3 核心特性二、Java实现解析2.

使用Python绘制3D堆叠条形图全解析

《使用Python绘制3D堆叠条形图全解析》在数据可视化的工具箱里,3D图表总能带来眼前一亮的效果,本文就来和大家聊聊如何使用Python实现绘制3D堆叠条形图,感兴趣的小伙伴可以了解下... 目录为什么选择 3D 堆叠条形图代码实现:从数据到 3D 世界的搭建核心代码逐行解析细节优化应用场景:3D 堆叠图

深度解析Python装饰器常见用法与进阶技巧

《深度解析Python装饰器常见用法与进阶技巧》Python装饰器(Decorator)是提升代码可读性与复用性的强大工具,本文将深入解析Python装饰器的原理,常见用法,进阶技巧与最佳实践,希望可... 目录装饰器的基本原理函数装饰器的常见用法带参数的装饰器类装饰器与方法装饰器装饰器的嵌套与组合进阶技巧

解析C++11 static_assert及与Boost库的关联从入门到精通

《解析C++11static_assert及与Boost库的关联从入门到精通》static_assert是C++中强大的编译时验证工具,它能够在编译阶段拦截不符合预期的类型或值,增强代码的健壮性,通... 目录一、背景知识:传统断言方法的局限性1.1 assert宏1.2 #error指令1.3 第三方解决

全面解析MySQL索引长度限制问题与解决方案

《全面解析MySQL索引长度限制问题与解决方案》MySQL对索引长度设限是为了保持高效的数据检索性能,这个限制不是MySQL的缺陷,而是数据库设计中的权衡结果,下面我们就来看看如何解决这一问题吧... 目录引言:为什么会有索引键长度问题?一、问题根源深度解析mysql索引长度限制原理实际场景示例二、五大解决

深度解析Spring Boot拦截器Interceptor与过滤器Filter的区别与实战指南

《深度解析SpringBoot拦截器Interceptor与过滤器Filter的区别与实战指南》本文深度解析SpringBoot中拦截器与过滤器的区别,涵盖执行顺序、依赖关系、异常处理等核心差异,并... 目录Spring Boot拦截器(Interceptor)与过滤器(Filter)深度解析:区别、实现