IP地址,子网掩码,网关(2024.3.27)

本文介绍了IP地址在互联网通信中的作用,区分了IPv4和IPv6的区别,详细解释了子网掩码如何决定网络范围,以及网关和广播IP的概念。还给出了如何使用UDP广播实现局域网内的消息传递。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

    IP地址就是我们的电脑(主机)在网络中的“身份证”,要想上网,与网络中的其他电脑相互通信,你的电脑就得有一个IP地址,这样别的电脑才能在这个“茫茫人海”中找到你。

    网络根据覆盖的范围,氛围了广域网,局域网(以前看过的很多书,又把局域网分为了城域网,区域网等等,在我的理解,其实都是局域网,只是范围的大小不一样)。广域网就是我们所称的Internet网络,它可以连接到这个世界的任何角落(只要是接入到这个网络中);而局域网就是针对某个范围的区域组建的一个局部网络(比如企业内部的网络,学校内部的网络等等)。

    目前使用最多的IP地址还是IPv4,它由4组数字组成,他们之间使用“点.”相连接,换算成二进制就是 11111111.11111111.11111111.11111111 ,由4组8位二进制组成,根据换算就可以得出这4组数字的范围为0~255。由于目前IPv4的IP地址已经远远不能满足网络地址的需求,所以就出现了IPv6的新的IP地址,由原来几千上万主机使用1个IP地址,扭转成了1台主机可以使用上亿个的IP地址的局面。

    我们还是以IPv4来看,IP地址与子网掩码互为“一对情侣”,一个IP地址由网段+主机名组成,在同一网段的主机,就在同一个局域网内,那么网段由什么来决定,就由子网掩码决定,看下图:

    子网掩码可以是几种情况:255.0.0.0      /     255.255.0.0     /       255.255.255.0  ,每一类子网掩码下面的IP都是从0~255,由此可以看出,网段越短,IP地址数越多;反之。我们的局域网通常情况下,都只会只用255.255.255.0这种子网掩码网段,如果超过了255个主机的,可以多设置几个不同的网段,比如子网掩码为255.255.255.0,我可以设置192.168.1.1和192.168.2.1两个不同的网段。

    当我们的“计算机们”组成了一个局域网络,局域网内的主机能够相互通信,这是一个“闭环”网络,如果这个闭环网络中的计算机想访问internet外网的话,就需要有一个出口通向外面,这里就会设置一个IP地址的主机作为网关(一般是设置主机为1或254,比如192.168.1.1或者192.168.1.254,当然也可以使用其他的IP),这个网关就是通向“外界”的出口,这个出口一般设置在路由器上(路由器也是一台主机,也需要一个IP地址),这就是网关定义的理解。

     在一个网段的IP地址范围中,有两个IP地址是不能分配给主机的,一个是主机位为0,还有一个是主机位为255。主机位为255的IP地址称为广播IP,在这个局域网中可以通过向这个IP发送消息,然后通过这个IP广播到这个局域网中的其他主机,下面有个案例可以实现。

import socket

# 定义广播地址和端口
BROADCAST_IP = '192.168.1.255'  # 广播地址,这里假设是子网的广播地址,实际情况请根据子网结构调整
PORT_NUMBER = 12345  # 自定义的广播端口

# 创建一个UDP套接字
sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
sock.setsockopt(socket.SOL_SOCKET, socket.SO_BROADCAST, 1)  # 允许发送广播

# 准备要发送的消息
message = "你好,这是一个来自于 {} 的广播消息".format(socket.gethostname())

# 向广播地址发送消息
sock.sendto(message.encode('utf-8'), (BROADCAST_IP, PORT_NUMBER))

# 关闭套接字
sock.close()

    主机位为0的IP,例如192.168.1.0(子网掩码:255.255.255.0),这个地址称为网络号,它代表了整个网络或子网本身,而非子网中的某个主机。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值