Test mit Java, wenn sich zwei IPs im selben Netzwerk befinden

8

Wie kann ich testen, ob sich zwei IP-Adressen gemäß der Subnetzmaske im selben Netzwerk befinden?

Zum Beispiel habe ich die IPs 1.2.3.4 und 1.2.4.3: Beide sind im selben Netzwerk, wenn die Maske 255.0.0.0 oder 255.255.0.0 oder sogar 255.255.248.0 ist, aber nicht, wenn die Maske 255.255.255.0 ist.

    
xZise 19.12.2011, 00:00
quelle

3 Antworten

14

Versuchen Sie diese Methode:

%Vor%

Und benutze es so:

%Vor%

BEARBEITEN:

Wenn Sie die IPs bereits als InetAddress -Objekte haben:

%Vor%     
Óscar López 19.12.2011 00:15
quelle
5

Einfach genug: mask & ip1 == mask & ip2 - Sie müssen die IPs alle als eine einzige Zahl dafür interpretieren, aber das sollte offensichtlich sein.

    
Voo 19.12.2011 00:04
quelle
0

Diese Lösung wird auch mit IPv4 / IPv6 funktionieren.

%Vor%     
SkateScout 07.04.2015 23:12
quelle

Tags und Links