IP协议 地址划分&MAC地址作用&ip addr命令

一、ip addr命令解读

bash 复制代码
root@test:~# ip addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default 
    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: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether fa:16:3e:c7:79:75 brd ff:ff:ff:ff:ff:ff
    inet 10.100.122.2/24 brd 10.100.122.255 scope global eth0
       valid_lft forever preferred_lft forever
    inet6 fe80::f816:3eff:fec7:7975/64 scope link 
       valid_lft forever preferred_lft forever

1.1 ip地址后面的scop

  • 对于 eth0 的scop是global,表名这张网卡可以接收各个地方的包,可以对外通信
  • 对于 lo 这张网卡来说,scop是host 标识这张网卡仅仅供本机内部通信。lo的全称是loopback,又称为回环接口用于本机通信,由内核直接处理 一般分配到127.0.0.1这个ip地址 不会再任何网络中出现。

1.2 <BROADCAST,MULTICAST,UP,LOWER_UP>是啥

这个是et_device flags **网络设备的状态标识,**UP 表示网卡处于启动的状态;BROADCAST 表示这个网卡有广播地址,可以发送广播包。MULTICAST 表示网卡可以发送多播包;LOWER_UP 表示 L1 是启动的,也即网线插着呢。

1.3 MTU1500

是指什么意思呢?是哪一层的概念呢?最大传输单元 MTU 为 1500,这是以太网的默认值

1.4 qdisc pfifo_fast

qdisc 全称是 queueing discipline,中文叫排队规则。内核如果需要通过某个网络接口发送数据包,它都需要按照为这个接口配置的 qdisc(排队规则)把数据包加入队列。最简单的 qdisc 是 pfifo,它不对进入的数据包做任何的处理,数据包采用先入先出的方式通过队列。pfifo_fast 稍微复杂一些,它的队列包括三个波段(band)。在每个波段里面,使用先进先出规则。三个波段(band)的优先级也不相同。band 0 的优先级最高,band 2 的最低。如果 band 0 里面有数据包,系统就不会处理 band 1 里面的数据包,band 1 和 band 2 之间也是一样。数据包是按照服务类型(Type of Service,TOS)被分配到三个波段(band)里面的。TOS 是 IP 头里面的一个字段,代表了当前的包是高优先级的,还是低优先级的。

二、理解ip地址

  • IP 地址是一个网卡在网络世界的通讯地址,相当于我们现实世界的门牌号码。
  • 内网IP地址可以重复:例如一个小区内,可以有不同的门牌号,不同小区可以有相同的门牌号这就类似于内网的IP地址。
  • 外网IP不可以重复:ip作为计算机世界的通讯地址,不可以重复,不然就无法起到定位的作用。

三、IPV4

介绍

例如:"<font style="color:rgb(51, 51, 51);">10.100.122.2</font>" 中,被分为四个部分,每个部分八个bit,所以ip地址总共32位,最多大概有4亿个ip地址,如果每个设备都分一个,那远远不够。

IPv4对Ip地址的分类

A、B、C类比较常见

D 类是组播地址。使用这一类地址,属于某个组的机器都能收到。这有点类似在公司里面大家都加入了一个邮件组。发送邮件,加入这个组的都能收到。

分类造成的问题

如上图所示,ip地址被分为了五类,但是如果强硬的按照这个分类来划分网络号和主机号的话,c类太少,B类太多 十分尴尬

无类型域间选路CIDR

CIDR(Classless Inter-Domain Routing)解决了原来生硬的对地址进行分类的问题,没有生硬的划定几位网络号。CIDR 引入了子网掩码,和广播地址。CIDR将32位的ip地址,动态的划分网络号和主机号。

例如 "10.100.122.2/24" 其中24表示前24位用来标识网络号,后面的8位用来标识主机号。24表示成子网掩码 "255.255.255.0" ,同时它的广播地址是"10.100.122.255"

获取网络号:将子网掩码和 IP 地址按位计算 AND,就可得到网络号。

公有IP和私有IP地址

ABC类型的网络里,分为了公有IP和私有IP,私有IP可重复可自己分配。公有IP则需要统一分配,全世界可访问。

四、MAC地址

mac地址是什么格式的?

举例,ff:ff:ff:ff:ff:ff 这就是mac地址,用16进制标识,由6个byte字节组成。

为啥ip可以定位还需要mac地址

网络设备连接互联网,往往是通过NAT(网络地址转换协议)去链接的,这样的话内网可能有几十台设备对应的外网ip也只有一个。如果只知道外网ip是无法找到对应的内网设备的,所以需要用到mac地址来精确到每个网络设备。这样还有一个好处,在一个子网中,因为有不同的mac地址所以不必担心组网时产生冲突。

只靠mac地址可以定位到设备吗

在同一个子网中可以,一但跨子网,就需要依靠ip地址了。

相关推荐
维构lbs智能定位10 小时前
基于UWB定位技术的工地安全管理系统从技术原理到功能应用详解
网络·安全·工地安全管理系统
Cyber4K10 小时前
【Kubernetes专项】DockerFile、数据持计划、网络模式及资源配额
运维·网络·云原生·容器·kubernetes
开开心心就好11 小时前
系统管理工具,多功能隐私清理文件粉碎工具
java·网络·windows·r语言·电脑·excel·symfony
逑之11 小时前
C语言笔记15:动态内存管理
c语言·网络·笔记
hui函数11 小时前
如何解决 pip install 网络报错 403 Forbidden(访问被阻止)问题
网络·pip
乾元11 小时前
现场运维机器人的工程化落地——移动探针采集 + AI 诊断,在真实网络中的实现路径
运维·网络·人工智能·架构·机器人·自动化
鲨莎分不晴11 小时前
Docker 网络深度解析:打破容器的“孤岛效应”
网络·docker·容器
draking12 小时前
Anthropic 封杀当天,我把 OpenCode 升到 1.1.11,踩了 5 个坑
macos·ai编程
liulilittle12 小时前
rinetd 端口转发工具技术原理
linux·服务器·网络·c++·端口·通信·转发