计算机网络——IP地址

IP地址的分类和表示

IP地址的长度为32位

网络号长度将直接决定整个Internet中能包括的不同网络数

主机号长度直接决定每个网络中能容纳的主机数

有的网络拥有的主机很多,有的网络拥有的主机则很少。所以将因特网的IP地址分为了5大类,即从A类到E类

其中,A类,B类和C类都是常用的单播地址(一对一通信),可以理解成个人的QQ号,QQ号只能分配给一台主机。在网络号的最前面有1~3位的类别位,其数值分别规定为0,10,110,A类,B类,C类地址的主机号分别为3个,2个,1个字节长

D类地址(前四位是1101)用于多播(一对多通信),可以理解成QQ群号,QQ群号可以包含多台主机

E类地址(前五位是11110)保留为以后用

常见的三类Ip地址

在网络地址中,网络号全0表示"本网络",不可以作为分组转发的源地址和目的地址使用,表示某个网络本身,只能用于路由表和转发表

比如学校申请了166.1.0.0这样的B类地址,但是末尾的十六位全为0的IP地址是不能分派给主机的

一个网络号+全0的主机号,这种IP地址,只会用于路由转发表中,用于表示某个网络

所以网络号固定,主机号全为0,它不可以指派给任何一台主机或者路由器使用

对于一个确定的网络号,如果主机号全为1的话,表示该网络上的所有主机,表示对本网络的广播地址,也就是要向网络号为Y的网络去广播IP分组,这种地址只能作为目的地址使用

假设H1要给公司的这些结点广播一个IP分组,那么H1构造的IP数据报中,H1应该填它自己的,也就是166.1.0.1,而目的地址,应该填目的地址的网络号,加上全1的主机号,因为目的网络号是C类地址,那么主机号就占8个比特,如果末尾的8个比特全部写成1,那么翻译成10进制的话应该对应的是255

所以对于H1构造的IP数据报,它要给这整个网络广播一个数据报,那么它的目的地址就应该写成200.1.1.255

那么这样的一个IP数据报经过逐层的转发,到达目的网络的这个路由器,会把IP数据报广播给网络内的所有的主机

所以可以得到这样的结论:对于一个确定的网络号,如果主机号占nbit,那么这个网络中最多能支持主机和路由器的数量就是2的n次方-2台,因为全0或者全1这样的主机号是不能分配给主机或路由器的

那这就意味着,一个A类网络所拥有的最大主机数就不能超过2的24次方-2台

对于C类网络来说,它所拥有的最大主机数不能超过2的8次方-2台

因为主机号全0和全1这两种状态不能作为IP地址分派给任何一台主机或路由器

如果网络号全0,主机号非0,这样的地址表示本网络中主机号为Y的主机,这种主机可以作为源地址,但不能作为目的地址

如果网络号全0,主机号全0,这种地址可以作为源地址使用,但是不能作为目的地址使用,它的含义是表示本网络中的本主机(会在DHCP协议中使用)

这个特殊的IP地址通常是用于一个主机刚开始接触网络的时候,我们知道一台主机刚开始接入网络的时候,它是没有IP地址的状态,那为了让自己拥有一个IP地址,这台主机需要广播一个DHCP报文,通过DHCP报文让自己获得一个IP地址,所以当一台主机暂时还没有IP地址的时候,它的这个IP全地址就只能先写成全0,目的地址写成全1,把这个DHCP报文封装成一个IP数据报,那么这个IP数据报就会广播到整个网络中的每一个节点

在内部网络中,通常会有一个DHCP服务器,你可以理解成它也是一台特殊的主机,那这台DHCP服务器就是专门负责给各个节点分配IP地址用的,所以对应一个新接入的结点来说,当它构造了一个DHCP报文之后,这个报文在整个网络广播,肯定也会广播到DHCP服务器这个地方,那么DHCP服务器收到这个DHCP报文之后,它就会给申请IP地址的主机返回另一个DHCP报文,然后告诉它,我现在给你分配了一个IP地址,就是这样的作用

所以全0的这个IP地址是一台主机暂时还没有分配到IP地址的时候去使用的

网络号和主机号全1表示的是这是一个广播分组,需要给本网络中的所有节点,广播这个IP分组

比如H1要给自己所处的网络广播一个IP分组,那么它可以把源地址设为自己的166.1.0.1,然后把目的地址设为全1,那32位全1对应的就是255.255.255.255,每8位为一组,那这样的IP数据报就会广播给自己所处的网络中的每一个节点,当然也包含这个默认网关

如果网络号是以127开头的,即(01111111),主机号非全0或非全1的时候,这个IP地址保留作为本地软件环回测试,测试本主机进程之间的通信

若主机发送一个目的地址为环回地址(例如127.8.8.1)的IP数据报,则本主机中的协议软件不会把这个数据报发送给任何网络

环回地址作为目的地址的IP数据报永远不会出现在任何网络上

所以A类地址可以指望的网络为126个(即2的7次方-2)

这种IP地址既可以作为源地址,也可以作为目的地址

相关推荐
我命由我1234529 分钟前
35.Java线程池(线程池概述、线程池的架构、线程池的种类与创建、线程池的底层原理、线程池的工作流程、线程池的拒绝策略、自定义线程池)
java·服务器·开发语言·jvm·后端·架构·java-ee
未来之窗软件服务2 小时前
数字人-局域网共用一个数字人平台-谷歌浏览器没有ssl配置
网络·网络协议·ssl·数字人
影龙帝皖7 小时前
Linux网络之局域网yum仓库与apt的实现
linux·服务器·网络
李詹7 小时前
如何解决DDoS攻击问题 ?—专业解决方案深度分析
网络·ddos
打工人你好7 小时前
UNIX域套接字(Unix Domain Sockets, UDS) 的两种接口
服务器·unix
独隅8 小时前
在 macOS 上修改 最大文件描述符限制(Too many open files) 和 网络端口相关参数 需要调整系统级配置的详细步骤
网络·macos
AI云师兄8 小时前
MCP 实战系列(Day 2)- 动手搓个文件系统 MCP 服务器
服务器·人工智能·ai编程
学习中的程序媛~8 小时前
主服务器和子服务器之间通过NFS实现文件夹共享
运维·服务器
IT艺术家-rookie8 小时前
TCP/UDP的连接和数据发送过程详解
网络·网络协议
hi0_69 小时前
Linux 第三讲 --- 基础指令(三)
linux·运维·服务器·c++