🔥博客主页: 我要成为C++领域大神
🎥系列专栏:【C++核心编程】 【计算机网络】 【Linux编程】 【操作系统】
❤️感谢大家点赞👍收藏⭐评论✍️
本博客致力于分享知识,欢迎大家共同学习和交流。
IP地址分类
IP被分为5类,A、B、C、D、E五类,这五类是按照一定的范围划分的。
A类IP地址的范围是1.0.0.0~127.255.255.22(0000 0001),通常由大量的主机和公网所使用。
B类IP地址范围是128.0.0.0~191.255.255.255(1000 0000),通常由国际大公司,政府使用。
C类IP地址范围是192.0.0.0~223.255.255.255(1100 0000),通常由小公司,校园网,科研单位使用。
D类IP地址范围是224.0.0.0~239.255.255.255(1110 0000),用于组播。
E类IP地址范围是240.0.0.0~255.255.255.255(1111 0000),这部分IP地址保留不使用。
如何区分IP地址类类别?
A类地址本应从0.0.0.0开始的,但是由于0.0.0.0~0.255.255.255的IP地址比较特殊,所以就被保留起来了。所以A类地址从1.0.0.0开始。
B类地址从128.0.0.0开始的,128用二进制表示为1000 0000;
C类地址从192.0.0.0开始的,192用二进制表示为1100 0000;
224:1110 0000 240:1111 0000
我们可以发现每一类地址的起始地址都是上一类起始地址二进制表示向下一位加1,因此我们只需要记住B类地址起始地址,就可以记住了其它类地址的范围。
子网掩码
子网掩码又叫做网络掩码,地址掩码,子网络遮罩,顾名思义就是将子网络遮起来,不让外界窥探到。子网掩码不能单独存在,它必须结合IP地址一起使用。只有一个作用,就是将IP地址分为主机部分和网络部分。即用来分割子网和区分哪些ip是同一个网段的,哪些不是同一网段的。
子网掩码是一个32位的二进制数,子网掩码中的1表示网络部分,0表示主机部分。
例如,一个常见的子网掩码是255.255.255.0,它对应的二进制形式是:11111111.11111111.11111111.00000000。这意味着前24位用于表示网络号,而后8位用于表示主机号。
某主机的网络地址=某主机IP地址 & 该类IP地址子网掩码 (按位与)
计算网络号和主机号
将IP地址和子网掩码转换为二进制
首先,我们需要将IP地址和子网掩码都转换为二进制形式。例如,如果IP地址是192.168.1.100,子网掩码是255.255.255.0,那么它们的二进制形式分别是:
IP地址: 11000000.10101000.00000001.01100100
子网掩码:11111111.11111111.11111111.00000000
执行按位与操作
接下来,我们对IP地址和子网掩码执行按位与(AND)操作。这意味着,对于每一对相应的位,如果两个相应的二进制位都为1,则结果为1,否则为0。在上述例子中,执行按位与操作后得到:
网络号:11000000.10101000.00000001.00000000(转换为十进制为192.168.1.0)
确定主机号
主机号是IP地址中不属于网络号的部分。在上述例子中,由于子网掩码的后8位都是0,所以IP地址的后8位就是主机号。因此,主机号是:01100100(转换为十进制为100)。
默认子网掩码
每个类别的IP地址对应的默认子网掩码不同。按照ABC类IP地址,分为了三类子网掩码。
A类:255.0.0.0,A类子网掩码默认1段全为1
B类:255.255.0.0,B类子网掩码默认2段全为1
C类:255.255.255.0,C类子网掩码默认3段全为1
通过子网掩码,我们就可以知道这个IP是属于哪个网段的。
ip地址:192.168.1.1 子网掩码:255.255.255.0
ip地址:192.168.1.2 子网掩码:255.255.255.0
我们可以直接的判断,他们是同属于一个网段的ip地址。
那么对于下面这样的呢?
ip地址:192.168.1.1 子网掩码:255.255.255.0
ip地址:192.168.1.2 子网掩码:255.255.0.0
这两个ip地址虽然在不看掩码的情况下,比较像,但他们并不是同一个网段内的。
这个可以从子网掩码来判断,
192.168.1.1 255.255.255.0是属于192.168.1.0网段的。
而192.168.1.2 255.255.0.0是属于192.168.0.0网段。
网关
网关又称网间连接器,协议转换器。网间连接器,就是连接两个子网之间的设备或软件。
网络A的网段是192.168.1.0,网络B的网段是192.168.2.0,这两个网段之间不可以直接进行通信。想要实现通信,就必须依靠网关。因此网关也叫做网间连接器,通过网关可以连通这两个网络。
网关实现的原理:网络A里的主机若想和网络B里的主机进行通信,需要先设置好网关。设置好网关后,A主机先将数据发送给网络A的网关,然后网络A的网关将数据转发给网络B的网关,网络B的网关再将数据转发给目的IP。
网关都是具有路由功能的IP地址,就是说网关必须要有路由功能,默认的主机号都是0,这样的才是网关。比如网络A的网关IP地址应该是192.18.1.0,网络B的网关地址应该是192.18.2.0。
广播地址
广播地址用于向网络中的所有设备进行广播。具有正常的网络号部分,而主机号部分全为1的IP地址称之为广播地址。
有限广播地址:指的是32位全为1即(255.255.255.255)的IP地址,用于本网广播。
理解广播地址可以类比为广播电台或电视广播。当电台或电视台发出广播信号时,所有收听或收看该频道的设备都能收到这个信号,而不需要知道接收者的具体地址。类似地,在计算机网络中,广播地址允许发送者将数据包发送给同一网络中的所有设备,而无需知道每个设备的具体IP地址。
网络地址、广播地址和主机地址的区分
网络地址: 网络地址是指仅包含网络号而不包含主机号的IP地址。它用于唯一标识一个网络。在网络通信中,网络地址用于路由和寻址。例如,一个IP地址为192.168.0.0,IP掩码为255.255.255.0,那么它的网络地址就是192.168.0.0。
广播地址: 广播地址是指在特定网络上发送广播消息的地址。它用于向网络上的所有设备发送信息。广播地址通常是某个网络的最大可能地址,将主机号部分全部设置为1。例如,在 IP 地址为192.168.0.0,IP掩码为255.255.255.0 的情况下,广播地址就是192.168.0.255。
主机地址: 主机地址是指除网络地址和广播地址之外的IP地址部分。它用于标识一个特定的主机或设备。主机地址可以是网络中的任意一个有效地址。例如,在 IP 地址为192.168.0.0,IP掩码为255.255.255.0 的情况下,可以有从192.168.0.1到192.168.0.254的主机地址。