Bonjour à tous,
Je cherche un moyen de savoir si l'on est connecté à un réseau ou non en java.
PS : Pas obligé que ce soit sur internet, un réseau local sans internet peut être possible.
Merci d'avance.
Bonjour à tous,
Je cherche un moyen de savoir si l'on est connecté à un réseau ou non en java.
PS : Pas obligé que ce soit sur internet, un réseau local sans internet peut être possible.
Merci d'avance.
Dans ce cas, je pense qu'il faut que tu ailles regarder les interfaces réseaux de la machine.
Voici un exemple de code qui liste les interfaces réseaux d'une machine :
Tu peux déjà ignorer localhost, et si tu en trouves d'autres (comme wlan ou eth0) alors tu es connecté à un réseau quelconque. Ensuite, il te suffit de regarder le préfixe pour savoir si c'est une ip locale ou pas (si tu as 82.*.*.*. par exemple, c'est internet).
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24 import java.io.*; import java.net.*; import java.util.*; import static java.lang.System.out; public class ListNets { public static void main(String args[]) throws SocketException { Enumeration<NetworkInterface> nets = NetworkInterface.getNetworkInterfaces(); for (NetworkInterface netint : Collections.list(nets)) displayInterfaceInformation(netint); } static void displayInterfaceInformation(NetworkInterface netint) throws SocketException { out.printf("Display name: %s\n", netint.getDisplayName()); out.printf("Name: %s\n", netint.getName()); Enumeration<InetAddress> inetAddresses = netint.getInetAddresses(); for (InetAddress inetAddress : Collections.list(inetAddresses)) { out.printf("InetAddress: %s\n", inetAddress); } out.printf("\n"); } }
Olivier Pitton
Site personnel : http://site.olivier-pitton.eu.cloudbees.net/
Page Developpez : http://olivier-pitton.developpez.com/
C'est exactement ce que je recherchai, merci.
Il me reste plus qu'à trier ipv4 et ipv6.
Partager