发布网友 发布时间:2023-08-04 05:40
共1个回答
热心网友 时间:2024-12-13 17:27
没有路由和网关的前提下,不同网段之间访问有很多种情况,举三个例子:
1、A:10.0.0.1/8 和 B:11.0.0.1/8
这两个ip是不同网段无疑,A的网络地址是10.0.0.0,B的网络地址是11.0.0.0;
现在尝试一下用 A 访问 B。(此时主机A自己只知道三个信息,A的本机ip:10.0.0.1,A的掩码地址255.0.0.0,B的ip:11.0.0.1)
首先,在主机A会用自己的掩码地址255.0.0.0 与主机B的主机地址(11.0.0.1)相与,结果为11.0.0.0。然后主机A用将与完的结果(11.0.0.0),与本机的网络地址(10.0.0.0)相比较,不同则判断为不同网段。
所以,A 访问 B 的数据包不会从A发出来,同理 B 访问 A 也会失败。
2、A:10.0.0.1/8 和 B:10.1.0.1/24
A 的网络地址是10.0.0.0,B 的网络地址是10.1.0.0;同样先 A 访问一下 B。
1)主机A 用自己的掩码地址255.0.0.0 与 主机B 的主机地址(10.1.0.1)相与,结果为10.0.0.0,居然与自己的网络地址相同!然后 主机A 就欣喜的将数据包发了出去;(没错,数据包发出来了)
2)随后 主机B 收到了 主机A 发到的数据包,此时 主机B 知道的也只有三个信息(即:主机B的本机ip:10.1.0.1,B 的掩码:255.255.255.0,A的ip:10.0.0.1)。然后主机B 做了和主机A 同样的事情:拿主机A 的ip与自己的掩码相与....(10.0.0.1 & 255.255.255.0 = 10.0.0.0),主机B 再看看自己的网络地址(10.1.0.0),“嗯,不一样”,随即将 A 发过来的数据包丢掉.....
所以,这种情况 A 和 B 也是无法通讯的。
3、A:10.0.0.1/8 和 B:10.0.0.2/24
A 的网络地址是10.0.0.0,B 的网络地址是10.0.0.0;同样先 A 访问一下 B。
1)首先 主机A 用 B 的IP与自己的掩码地址相与,结果为10.0.0.0。“嗯,在一个网段”,随即 主机A 将数据包发了出去;
2)主机B 收到 主机A 发来的数据包后,拿出数据包的源IP(即主机A的IP)与自己的掩码相与,结果为10.0.0.0。“嗯...是一个网段”,随即回复了主机A的数据包!
即!这种特殊包含关系的不同网段ip,在没有路由没有网关的情况下,也是可以互相通讯建立连接的。(第二种情况也是包含关系,但不会建立连接)