ip、网关、子网掩码之间的关系

本文深入探讨IP地址、子网掩码及默认网关的基本概念及其相互关系,通过实例说明如何正确配置网络参数,确保不同网络间的数据包正确转发。

今天来整理一下ip、网关、子网掩码都是个啥,之间有啥关系。

前言

我目前的服务是部署在内网ip为192.168.253.120,一台机子连上了内网的网线,需要手动配置ip、网关、子网掩码才能连上我的服务。172.16.51.155 255.255.255.0 172.16.51.254。之前没问题,现在突然连不上了,就把我搞懵了,这块不太懂,现在来整理一下。

IP地址-子网掩码-默认网关之间的关系

参考:
https://www.cnblogs.com/upxiao/p/9662694.html
https://jingyan.baidu.com/article/358570f696a0ebce4724fcde.html

总结:

ip区分网络号和主机号,首先先去查到网络号,缩小层次。

子网掩码是用来帮助划分ip的网络号和主机号的。
也可以通过在ip后面/网络号个数来表示子网掩码。
比如:
192.168.1.1/24,说明子网掩码是255.255.255.0

比如子网掩码是255.255.255.0,即代表网络号是24位,主机号是8位。
这样就就说明在网络号后可以划分254个主机号(因为主机号不能全是0或全是1)

比如192.168.253.xxx,
xxx的值可以在1-255(即二进制的00000001-01111111)。
如果不知道子网掩码的话,就没法区分ip的网络号和主机号,所以子网掩码是必须的。

而网关进行的是网络之间通信的转发。

如果网络A中的主机发现数据包的目的主机不在本地网络中,就把数据包转发给它自己的网关,再由网关转发给网络B的网关,网络B的网关再转发给网络B的某个主机

我们接着看上面的前言。
子网掩码是255.255.255.0,主机ip是172.16.51.155,其网络号是172.16.51,需要通过ip为172.16.51.253这个ip(网关ip和主机ip一定要在一个网络号下),去作数据包的转发。而现在连不上了,估计是这个网关ip内的配置出现问题了。

IP地址、子网掩码网关网络通信中的三个关键组成部分,它们共同作用以确保数据能够在网络中正确传输。 ### IP地址 IP地址是一个标识网络上设备的逻辑地址,用于唯一地识别连接到网络的每个设备。IPv4地址由32位组成,通常表示为四个十进制数,每个数代表8位,范围从0到255,例如192.168.1.10[^1]。在IPv6中,地址长度增加到了128位,提供了更多的地址空间。 ### 子网掩码 子网掩码不能单独存在,它必须结合IP地址一起使用。子网掩码只有一个作用,就是将某个IP地址划分成网络地址和主机地址两部分。子网掩码的设定必须遵循一定的规则。IP地址相同,子网掩码的长度也是32位,左边是网络位,用二进制数字“1”表示;右边是主机位,用二进制数字“0”表示。通过子网掩码,可以确定IP地址中的哪一部分是网络地址,哪一部分是主机地址。 例如,对于IP地址192.168.1.10和子网掩码255.255.255.224,可以通过按位运算得到网络地址192.168.1.0。这意味着该IP地址所在的网络范围是从192.168.1.0到192.168.1.31[^2]。 ### 网关 网关是在不同网络之间转发数据包的节点。当一个设备想要其他网络中的设备通信时,它会把数据发送给网关,然后由网关负责将数据转发到目标网络[^3]。网关通常是路由器的一个接口,这个接口拥有自己的IP地址,比如192.168.1.1,这通常是本地网络内的默认路由点。 ### 三者之间关系 IP地址定义了设备在网络上的位置;子网掩码帮助确定IP地址中哪些位属于网络地址,哪些位属于主机地址;而网关则充当了通往其他网络的门户[^3]。当设备需要向同一网络内的另一台设备发送数据时,它直接进行通信而不经过网关。但如果目标设备位于不同的网络,则必须通过配置好的网关来传递数据。 下面是一个简单的Python代码示例,演示如何计算给定IP地址和子网掩码后的网络地址: ```python import ipaddress ip = ipaddress.IPv4Address('192.168.1.10') subnet_mask = ipaddress.IPv4Address('255.255.255.224') # 计算网络地址 network_address = ip & subnet_mask print(f"Network Address: {network_address}") ``` 这段代码首先导入了`ipaddress`模块,创建了两个IPv4地址对象:一个是IP地址,另一个是子网掩码。接着利用按位操作符计算出网络地址,并打印出来。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值