问题

子网掩码与ip地址有实际关系吗?

回答
子网掩码和IP地址的关系,用一句话概括就是:子网掩码是IP地址的“户口本”,它告诉我们这个IP地址的“家”(网络)在哪里,以及在这个“家”里,这个IP地址的“门牌号”(主机)是哪个。

我们都知道,IP地址就像每个连接到互联网的设备的地址。但是,光有IP地址,计算机之间是无法直接知道对方是属于同一个局域网(一个“小区”),还是在另一个完全不同的网络(另一个“城市”)的。想象一下,如果你只知道某个人的地址是“XX街10号”,你很难判断他是在你所在的城市,还是在另一个遥远的城市,除非你同时知道“XX街”这个街道是在哪个城市。

这时候,子网掩码就派上用场了。子网掩码就像一个“区域划分表”。它是一个32位的二进制数字,用来区分IP地址中的“网络部分”和“主机部分”。

我们拿一个IP地址来举例,比如:`192.168.1.100`。

而子网掩码可能是:`255.255.255.0`。

当你把这两个数字用二进制方式进行“与”运算时(你可以理解为一种逻辑上的匹配),就能得到这个IP地址的网络地址。

IP地址 `192.168.1.100` 的二进制是:`11000000.10101000.00000001.01100100`
子网掩码 `255.255.255.0` 的二进制是:`11111111.11111111.11111111.00000000`

进行“与”运算后(也就是两个二进制位都是1,结果才是1,否则是0):

`11000000.10101000.00000001.00000000`

转换回十进制就是 `192.168.1.0`。

这个 `192.168.1.0` 就是这个IP地址 `192.168.1.100` 所属的“网络地址”。我们可以把这个网络地址想象成一个小区或一个局域网的“小区名”。而子网掩码中的 `255.255.255.0`,告诉我们,IP地址的前24位(对应那些连续的255)是用来标识这个“小区”的,而最后8位(对应那个0)则是用来标识这个“小区”里具体的“门牌号”的。

所以,当两台计算机需要通信时,它们会先用自己的IP地址和子网掩码计算出各自的网络地址。如果计算出的网络地址相同,就说明它们在同一个网络(同一个小区)里,可以直接通信。如果网络地址不同,那么它们就属于不同的网络(不同的城市),通信就需要通过路由器(就像邮局的转运站)来转发。

更细地说,子网掩码的“1”的部分代表着网络地址,而“0”的部分则代表着主机地址。子网掩码越长(比如255.255.255.240),意味着网络部分的位数越多,主机部分的位数就越少。这就像在一个城市里,你可以划分出很多更小的区域(子网),这样可以更有效地管理和分配IP地址,也可以提高网络的效率和安全性。

总而言之,子网掩码不是独立存在的,它与IP地址紧密绑定,共同定义了一个设备的网络身份和在网络中的位置。没有子网掩码,IP地址的含义就模糊不清,计算机也就无法判断通信的路由。

网友意见

user avatar

楼上写了一大堆的答主 DADAman 请回去重读 RFC。

题主写 IP 地址的记法叫做 IP-CIDR,全称 Classless Inter-Domain Routing,在这种记法下面是没有 ABCDE 类(Class)地址的概念的。还有人说什么 IP 和掩码一起传,喵喵喵?哪个协议要传掩码?

IP 都是一样的 IP,子网掩码并不是 IP 的一部分;但是路由功能(你的电脑是有路由功能的,不是只有路由器才需要它)必须有 IP、子网掩码和路由表才能正常工作。

子网掩码这个翻译并不好。英文 netmask(全称 subnet mask),mask 就是个罩子,简单地说来,你把 IP 和 netmask 都写成二进制表示,用 netmask 为 0 的部分罩住 IP(就是逻辑与 AND),罩住的部分是主机号,没罩住的部分是网络号。

这东西的标准也改了很多次,最早子网掩码不一定要 1 都堆在左边 0 都堆在右边的(标准里面没说),后来强制要求了,再后来 IP-CIDR 以后就隐含要求了。至今 Cisco 的路由器里面有些反掩码也是可以交替写 1 和 0 的,可以做一些诸如给所有十进制偶数结尾的 IP 应用某个防火墙规则一类的鬼畜配置。

而它有什么用呢?只有答主 ubitsp 讲到了核心概念。IP 都是一样的 IP,而子网掩码的作用之一是用来处理广播域和 IP 地址之间的对应关系(用于一些路由表条目)。它的另一个作用是简单地表示符合一定要求的连续 IP 地址块(用于另一些路由表条目或者别的任何地方)。

广播域,就是二层广播可达的范围。任何数据包要发到别的主机上必须通过二层,而目标 IP 是否被认为在该主机的广播域内可达会改变该主机在二层发送该网络包时的行为[1]。

补充阅读:

表示连续 IP 地址块也是子网掩码或者 IP-CIDR 记法的重要用途。192.168.1.0-192.168.1.255 可以简单地写成 192.168.1.0/24。 IPv6 下面就更为重要了,毕竟 2000::/3 写成完整形式可是 2000:0000:0000:0000:0000:0000:0000:0000-3fff:ffff:ffff:ffff:ffff:ffff:ffff:ffff 来着……谁想这么写……

===================================

[1]:不是所有入网设备都需要有路由功能的。

车小胖dading1234 都只说了设备有路由功能的情况。

下面只说 IPv4 的术语,IPv4 的 IP 查 MAC 协议叫做 ARP,IPv6 下面功能相同的协议叫 NDP(Neighbor Discovery Protocol),自行替换就行。

大家都知道,IP 包要发出去,首先要知道它发给哪台设备,这个靠的是 MAC 地址。比如 192.168.1.2 想要发包给 192.168.1.3,那么它先要发送 ARP 广播来查询 192.168.1.3 的 MAC 地址,然后在二层头部 dst mac 那段写上查询结果,再发包。

对于一个没有路由功能的设备,它是只有 IP 没有子网掩码设定的。那么它一定得做一个假设,就是所有 IP 地址都是在二层可达的,也就是它们接在同一个广播域上。那么如果一个 IP 事实上不在内网怎么办呢?我们让路由器假装是目标设备不就好了吗,路由器只要检测到查询非内网 IP 的 ARP 广播,就返回自己的 MAC 地址,这样这台机子就会把所有事实上不在内网的 IP 包发给路由器,路由器就成了这台机子的事实默认网关。这就是 proxy-arp 做的事情。

对于有路由功能的设备,它通过子网掩码来确定哪些 IP 在广播域内。比如它的 IP 是 192.168.1.1/24,那么它给 192.168.1.2 发包的时候,先 ARP 请求 192.168.1.2,然后发包;如果它给 192.168.2.1 发包,那么它会先在路由表里面找到 192.168.2.1 的路由条目,对该条目指定的网关(比如 192.168.1.1)请求 ARP,然后把包发给 192.168.1.1 的 MAC 地址。

这是个同一广播域不能有两台设备用同一个 IP 地址的问题……如果是 10.10.10.1/24 和 10.10.10.2/25 两台机子在同一个广播域的话,尽管我们会认为这么配置的人是 SB,但是不得不说,这两台机子之间通信绝对没啥问题。

user avatar

1、子网掩码不是IP地址的一部分。

2、10.10.10.1/24和10.10.10.1/25都不是IP地址,所以问题根本不成立。

3、上面的答案大部分都是错的。



子网掩码和IP地址一起,可以用于标识子网范围,所以,子网掩码是不能单独使用的,其与IP地址一并使用时,可以用于标识子网范围。所以,如同上面某些答主所说,10.10.10.1/24这个东西其实是个CIDR,可以用于标识一个子网范围。

类似的话题

  • 回答
    子网掩码和IP地址的关系,用一句话概括就是:子网掩码是IP地址的“户口本”,它告诉我们这个IP地址的“家”(网络)在哪里,以及在这个“家”里,这个IP地址的“门牌号”(主机)是哪个。我们都知道,IP地址就像每个连接到互联网的设备的地址。但是,光有IP地址,计算机之间是无法直接知道对方是属于同一个局域.............
  • 回答
    想象一下我们住在一个非常非常大的村庄里,这个村庄叫做“互联网”。在这个村庄里,每个房子都需要一个独一无二的地址,这样邮递员才能把信送到正确的房子里。这就是我们的 IP地址。IP 地址:房子的门牌号你可以把 IP 地址想象成你家房子的门牌号。就像你家的门牌号是“XX 街 XX 号”,才能让别人找到你一.............
  • 回答
    子网掩码,这玩意儿听起来挺技术范儿的,但说白了,它就是帮你电脑在网络里“认亲戚”的地图,而且是精度非常高的那种。别被那些数字搞晕了,咱们一步一步来捋。你想啊,一个网络里肯定不止你一台电脑吧?大家都想互相聊天,互相传文件。这就好比在一个小区里,你需要知道谁是你邻居,谁是住在另一个小区的人。网络也一样,.............
  • 回答
    路由表里的子网掩码,简单来说,它是一个数字,用来告诉路由器,一个IP地址的哪一部分是网络地址,哪一部分是主机地址。你也可以把它想象成一把“尺子”,用来衡量一个IP地址的范围。 为什么需要子网掩码?我们知道,IP地址是用来唯一标识网络中设备的。但一个IP地址的长度是固定的,比如 IPv4 地址是 32.............
  • 回答
    浙江大学公众号《浙大学子网课学习桌》一文:一场关于学习、生活与“新常态”的观察与思考浙江大学公众号近期发表的《浙大学子网课学习桌》一文,如同一面小小的镜子,折射出疫情常态化下,高校学子学习生活方式的深刻变化,以及由此引发的社会关注和讨论。这篇文章,与其说是一篇简单的展示,不如说是一份关于“新常态”下.............
  • 回答
    关于“永恒之蓝”病毒是如何绕过NAT访问子网终端445端口的,这背后涉及到一个精妙且极具破坏性的网络攻击手法,它利用了Windows操作系统一个久为人知的漏洞,并巧妙地避开了网络地址转换(NAT)的固有屏障。首先,我们需要理解NAT的工作原理。NAT(Network Address Translat.............

本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度google,bing,sogou

© 2025 tinynews.org All Rights Reserved. 百科问答小站 版权所有