如何判断两个ip是否在同一个子网上? 唯一的输入是ip地址和子网掩码! 使用 C / C ++ 计算两个ip是否具有相同子网的最佳方法是什么?
答案 0 :(得分:2)
bool checkForSubnetEquality(in_addr_t ipA, in_addr_t ipB, uint32_t subnetMask) {
return (ipA & subnetMask) == (ipB & subnetMask);
}
答案 1 :(得分:1)
import serial
import os
ser = serial.Serial(port="COM17", baudrate=9600)
ser.open()
ser.write("\x2b")
print int(ser.readline(4).encode("hex").replace("2b", "", 4), 16)
ser.close()
os.system("pause")
答案 2 :(得分:1)
您可以申请' xor'使用他们的面具对两个IP进行操作并在此之后进行比较。如果它们相同,则两个IP地址在同一子网中。
让我们来看看172.16.2.4/255.255.0.0和172.16.1.69/255.255.0.0 之后' xor'你会得到172.16.0.0'对于这两个地址,所以它们位于同一子网中。
问候。