4
我在Python中找到(lib ipaddress
)。這是python的例子。如何檢測IP是否在網絡中?
ip="1.232.12.3"
net="1.232.12.0/20"
ip in net
結果true
我能找到這個在Java中?
我在Python中找到(lib ipaddress
)。這是python的例子。如何檢測IP是否在網絡中?
ip="1.232.12.3"
net="1.232.12.0/20"
ip in net
結果true
我能找到這個在Java中?
你問的是IP是否在給定cidr範圍。您可以編寫自己的代碼來計算cidr的開始和結束,並查看IP是否落在該範圍內,或者只使用Apache Commons Net庫。
的SubnetUtils類不正是你想要什麼:
String cidrRange = "1.232.12.0/20";
String addr = "1.232.12.3";
SubnetUtils utils = new SubnetUtils(cidrRange);
boolean isInRange = utils.getInfo().isInRange(addr);
儘量考慮看看[InetAddress類#isReachable(http://docs.oracle.com/javase/7/docs/api/java/ net/InetAddress.html#isReachable%28int%29) – MadProgrammer
你應該寫這個答案,所以這個問題被標記爲來自外部的回答:) –
'isReachable()'不會告訴IP地址是否在相同的網絡,它只對某個可能的遠程節點進行某種ping操作。 –