IP地址+子网掩码+CIDR学习笔记

2024-02-17 16:28

本文主要是介绍IP地址+子网掩码+CIDR学习笔记,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录

一、IP地址

1、表示方法:

2、特殊IP地址

二、子网掩码

1、判断网络位和主机位

2、子网划分

三、无分类编址CIDR

1、CIDR路由汇聚

汇聚规则:

汇聚ID:

2、最佳路由匹配原则

一、IP地址

1、表示方法:

机器中存放的IP地址是32位二进制代码,为了提高可读性:

        每8位加入一个空格,提高可读性

        每8位的二进制数转换为十进制,用点分十进制记法

例:10000000 00001011 00000011 00011111 --》 128.11.3.31

IP地址包含网络位+主机位

        网络位用来确定属于哪个网络

        主机位用来确定在某网络中属于第几台主机

        网络位类似于班级号,主机位类似于学号

2、特殊IP地址

ABC三类地址:网络位 + 主机位

        网络位:用来表示一个网络

        主机位:有x位主机位,该网络中能容纳2^x个主机。如A类能容纳2^24次方个主机

        其中有效/有用的ip地址位的数量为2^x - 2个(去除全0和全1的情况)

        注:全0类似于代指班级,全1为班级广播,其余可给学生作学号使用

单播地址:一对一

组播地址:组内传递

        D类:范围224-239:

                1110MMMM   Multicast group   Multicast group   Multicast group

                没有网络位和主机位,全部是组播地址

        (DHCP协议 -- 动态下发地址)没有ip地址的主机都可以使用全0暂时作为直接的id,所以全0可以用作源地址,但因为无法确认究竟是哪个主机,因此不能作为目的地址。

        ping 127.0.0.1时能pin通,说明电脑里的tcp ip协议组安装没问题

        127和169.254可以理解为单播地址

广播地址:

公有地址:分配给注册并向Inter NIC提出申请的组织机构,可直接访问因特网

私有地址:非注册地址,专门为组织机构内部使用:

注:组播地址既不是公网也不是私网

二、子网掩码

1、判断网络位和主机位

带上子网掩码后,无法按照ABC类IP地址进行分类

利用子网掩码来判断网络位和主机位:二进制中1为网络位,0为主机位

如255.255.255.128:前25位为网络位,后面为主机位

2、子网划分

A类子网掩码:255.0.0.0 用斜杠表示: /20 (20位1)

B类子网掩码:255.255.0.0 用斜杠表示: /20 (20位1)

C类子网掩码:255.255.255.0 用斜杠表示: /24 (24位1)

划分子网:

        将主机位从左向右配成子网网络位,n个主机位可划分位2^n个网络,剩下的主机位还是主机位,每个子网支持主机位为2^(m-n) - 2个

三、无分类编址CIDR

1、CIDR路由汇聚

汇聚规则:

        选择网络地址相同的位进行汇聚,不同的位划分至主机位,实现将多个网段汇聚成一个新的超网网段。

        从左到右将最早的不同的十进制转换成二进制,然后从左到右找到第一位不同数字,相同的位数就是超网ID的网络位数。

汇聚ID:

        将主机位全部置为0,后面加:/网络位数

        例:四个路由:172.18.129.0/24   172.18.130.0/24  172.18.132.0/24  172.18.133.0/24

                将主机位全部置零:  172.18.10000 000.0/21 --->  172.18.128.0/21(超网ID)

2、最佳路由匹配原则

使用路由汇聚时,路由表中每个项目由“网络前缀”和“下一跳地址”组成

        网络前缀:在某网络中

        下一跳地址:传到该路由器后,数据包将向哪传送

查找路由表时可能会得到不止一个匹配结果,从匹配结果中选择具有最长网络前缀的路由:最长前缀匹配

网络前缀越长,地址块越小,路由越具体,因此也成为最长匹配/最佳匹配

注:一旦是主机路由,子网掩码为255.255.255.255

        网络位小于32位的路由称为网段路由

这篇关于IP地址+子网掩码+CIDR学习笔记的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

Nginx实现动态封禁IP的步骤指南

《Nginx实现动态封禁IP的步骤指南》在日常的生产环境中,网站可能会遭遇恶意请求、DDoS攻击或其他有害的访问行为,为了应对这些情况,动态封禁IP是一项十分重要的安全策略,本篇博客将介绍如何通过NG... 目录1、简述2、实现方式3、使用 fail2ban 动态封禁3.1 安装 fail2ban3.2 配

Ubuntu固定虚拟机ip地址的方法教程

《Ubuntu固定虚拟机ip地址的方法教程》本文详细介绍了如何在Ubuntu虚拟机中固定IP地址,包括检查和编辑`/etc/apt/sources.list`文件、更新网络配置文件以及使用Networ... 1、由于虚拟机网络是桥接,所以ip地址会不停地变化,接下来我们就讲述ip如何固定 2、如果apt安

Java深度学习库DJL实现Python的NumPy方式

《Java深度学习库DJL实现Python的NumPy方式》本文介绍了DJL库的背景和基本功能,包括NDArray的创建、数学运算、数据获取和设置等,同时,还展示了如何使用NDArray进行数据预处理... 目录1 NDArray 的背景介绍1.1 架构2 JavaDJL使用2.1 安装DJL2.2 基本操

查询SQL Server数据库服务器IP地址的多种有效方法

《查询SQLServer数据库服务器IP地址的多种有效方法》作为数据库管理员或开发人员,了解如何查询SQLServer数据库服务器的IP地址是一项重要技能,本文将介绍几种简单而有效的方法,帮助你轻松... 目录使用T-SQL查询方法1:使用系统函数方法2:使用系统视图使用SQL Server Configu

使用Java实现获取客户端IP地址

《使用Java实现获取客户端IP地址》这篇文章主要为大家详细介绍了如何使用Java实现获取客户端IP地址,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 首先是获取 IP,直接上代码import org.springframework.web.context.request.Requ

Linux环境变量&&进程地址空间详解

《Linux环境变量&&进程地址空间详解》本文介绍了Linux环境变量、命令行参数、进程地址空间以及Linux内核进程调度队列的相关知识,环境变量是系统运行环境的参数,命令行参数用于传递给程序的参数,... 目录一、初步认识环境变量1.1常见的环境变量1.2环境变量的基本概念二、命令行参数2.1通过命令编程

C++实现获取本机MAC地址与IP地址

《C++实现获取本机MAC地址与IP地址》这篇文章主要为大家详细介绍了C++实现获取本机MAC地址与IP地址的两种方式,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 实际工作中,项目上常常需要获取本机的IP地址和MAC地址,在此使用两种方案获取1.MFC中获取IP和MAC地址获取

C/C++通过IP获取局域网网卡MAC地址

《C/C++通过IP获取局域网网卡MAC地址》这篇文章主要为大家详细介绍了C++如何通过Win32API函数SendARP从IP地址获取局域网内网卡的MAC地址,感兴趣的小伙伴可以跟随小编一起学习一下... C/C++通过IP获取局域网网卡MAC地址通过win32 SendARP获取MAC地址代码#i

shell脚本快速检查192.168.1网段ip是否在用的方法

《shell脚本快速检查192.168.1网段ip是否在用的方法》该Shell脚本通过并发ping命令检查192.168.1网段中哪些IP地址正在使用,脚本定义了网络段、超时时间和并行扫描数量,并使用... 目录脚本:检查 192.168.1 网段 IP 是否在用脚本说明使用方法示例输出优化建议总结检查 1

Redis连接失败:客户端IP不在白名单中的问题分析与解决方案

《Redis连接失败:客户端IP不在白名单中的问题分析与解决方案》在现代分布式系统中,Redis作为一种高性能的内存数据库,被广泛应用于缓存、消息队列、会话存储等场景,然而,在实际使用过程中,我们可能... 目录一、问题背景二、错误分析1. 错误信息解读2. 根本原因三、解决方案1. 将客户端IP添加到Re