为什么访问不了同事的服务器或者ping不通地址了?

为什么访问不了同事的服务器或者ping不通地址了?

遇到问题:有部分电脑能够访问后端发出来的接口地址,部分电脑又无法访问,有可能是网络地址不在一个子网上。

网络地址 = ipv4地址 & 子网掩码 (&:与运算)

解决问题:改变子网掩码地址让两台电脑处于同一个网络地址上

详细案例说明
电脑A

ipv4地址 172.16.1.68

子网掩码 255.255.255

网关是 172.16.0.1

电脑C

ipv4地址 172.16.0.218

子网掩码 255.255.252

网关172.16.0.1

电脑A (原始掩码255.255.255.0):

网络地址计算:172.16.1.68 & 255.255.255.0 = 172.16.1.0/24

因此,电脑A认为它所在的网络是172.16.1.0/24。

电脑C (掩码255.255.252.0):

网络地址计算:172.16.0.218 & 255.255.252.0

172.16.0.218:10101100.00010000.00000000.11011010

按位与:10101100.00010000.00000000.00000000 -> 172.16.0.0/22

所以电脑C认为它所在的网络也是172.16.0.0/22。

导致问题:

因此C电脑给出地址,A电脑可能无法访问。

最直接的反应就是: C电脑给出后端接口或者前端项目地址,A电脑无法访问C电脑的后端接口或者前端项目地址

解决方法

想要两台电脑处于同一网络地址,可以把c电脑的子网掩码改为255.255.255.0

然后C电脑的网络地址 : 172.16.0.218 & 255.255.255.0 = 172.16.0.0

因此,电脑C认为它所在的网络是172.16.0.0/24。

拓展

与运算

IP地址:172.16.0.218

子网掩码:255.255.255.0(/24)

运算过程(可以把ip地址和子网掩码丢给AI去运算)

  • IP地址

    172: 10101100

    16: 00010000

    0: 00000000

    218: 11011010

  • 子网掩码:255.255.255.0

    255: 11111111

    255: 11111111

    255: 11111111

    0: 00000000

  • 与运算

    IP: 10101100.00010000.00000000.11011010

    Mask: 11111111.11111111.11111111.00000000

    AND: -------------------------------------------------

    复制代码
      10101100.00010000.00000000.00000000
  • 转换为十进制:
    10101100 = 172
    00010000 = 16
    00000000 = 0
    00000000 = 0
    网络地址:172.16.0.0
相关推荐
程序员黑豆4 分钟前
鸿蒙应用开发:Stack堆叠组件实战——实现微信消息角标效果
前端·harmonyos
夏幻灵15 分钟前
浏览器原理深度解析:从输入 URL 到页面展现的全流程剖析
前端
闲猫39 分钟前
Agent工程实践:从WorkFlow到多Agent协作的落地笔记
java·服务器·前端
江湖十年1 小时前
Go 语言中 YAML to JSON 踩坑笔记
后端·go·json
带娃的IT创业者1 小时前
重新定义前端构建速度:深度解析 SWC 如何用 Rust 颠覆 JavaScript 工具链
前端·javascript·rust·前端构建·swc
happy_0x3f1 小时前
前端应用的离线暂停更新策略
开发语言·前端·php
你驴我2 小时前
WhatsApp 消息撤回与编辑的幂等性设计实践
java·服务器·前端·后端·python
一缕清烟在人间2 小时前
HarmonyOS开发实战:小分享-TextEditPage文字编辑器——Header+TextArea+工具栏
后端·华为·harmonyos·鸿蒙
人间凡尔赛2 小时前
K8s 十年之变:从 Cloud Native 到 AI Native,2026 年后端架构的范式革命
后端·云原生·架构
程序员cxuan2 小时前
Opus 5 深夜炸场,价格还挺香。。。
人工智能·后端·程序员