程序员鼓励师|怎么样判断两个IP地址是否在同一个网段


程序员鼓励师|怎么样判断两个IP地址是否在同一个网段
方法
1.   通过自身的IP与自身掩码算出网络地址X
2.   通过目的IP与自身掩码算出目的地的网络地址Y
3.   如果这两个网络一样(X=Y) , 则表示目的地与自身在一个网络内
4.   如果两个网络不一样(X不等于Y) , 则表示目的地与自身不在一个网络内
举个例子1
A192.168.1.1/24
A这边的网络地址是192.168.1.0   目标的网络地址也是192.168.1.0
B192.168.1.2/24
B这边的网络地址是192.168.1.0   目标的网络地址也是192.168.1.0
结论:A和B在同一个网段 B和A在同一个网段
举个例子2
C192.168.1.1/24
C这边的网络地址192.168.1.0   目标的网络地址也是192.168.2.0
D192.168.2.1/24
E这边的网络地址192.168.2.0   目标的网络地址也是192.168.1.0
结论:C和D不在同一个网段 D和C不在同一个网段 那么C和D之间的地址通信的话 , 需要我们网关进行帮忙
Ø  小结
主机:怎么判断目的IP是否与自身在一个网络中呢?
a 。 通过自身的IP与自身所配置的掩码算出网络地址(直连网络)
b 。 通过目的IP与自身所配置的掩码算出关于目的地的网络 。
【程序员鼓励师|怎么样判断两个IP地址是否在同一个网段】c 。 如果这两个网络一样 , 则表示目的地与自身在一个网络内;如果两个网络不一样 , 则表示目的地与自身不在一个网络内
d 。 如果判断目的地与自身在一个网段内后 , 则可直接发ARP或其他报文给目的主机
e 。 如果判断目的地与自身不在一个网段内 , 则需要查看自身是否有到达目的网段的路由 , 如果有 , 则查找路由进行发送;如果没有 , 则丢掉此类报文不发送
思考题:请问:服务器A和服务器B在同一个网段吗?
服务器A的IP地址:192.168.26.129   255.255.255.0   GW:192.168.26.2
服务器B的IP地址:192.168.26.3   255.255.255.224   GW:192.168.26.2



    推荐阅读