A voir également:
- Récupérer adresse ip public avec java
- Ethernet n'a pas de configuration ip valide - Guide
- Comment connaître son adresse ip - Guide
- Waptrick java football - Télécharger - Jeux vidéo
- Jeux java itel - Télécharger - Jeux vidéo
- Darkino nouvelle adresse - Guide
4 réponses
J'ai repris l'astuce de le y@m's (dans le lien donné par fiddy), de manière à avoir un code plus simple à comprendre (tout est relatif) et surtout directement utilisable.
import java.net.URL; import java.util.Scanner; public class IP { /** * @param site l'adresse internet d'un site donnant l'adresse IP * @param prefixe le code HTML précédant la valeur de l'adresse IP * @param suffixe le code HTML succédant la valeur de l'adresse IP * @return l'adresse IP trouvée ou null sinon */ public static String findIP(String site, String prefixe, String suffixe) throws Exception { Scanner sc = new Scanner(new URL(site).openStream()); while (sc.hasNextLine()) { String line = sc.nextLine(); int a = line.indexOf(prefixe); if (a!=-1) { int b = line.indexOf(suffixe,a); if (b!=-1) { sc.close(); return line.substring(a+prefixe.length(),b); } } } sc.close(); return null; } public static void main(String...args) throws Exception { System.out.println(findIP("https://www.google.com/search?&gl=us&q=what+is+my+ip+address", "<b>IP Address:</b> <span class=\"ha4\">", "</span><br />")); } }La confiance n'exclut pas le contrôle
fiddy
Messages postés
11069
Date d'inscription
Statut
Contributeur
Dernière intervention
1 846
Bonne initiative KX, exactement ce que j'avais la flemme de faire :-)
KX
Messages postés
16761
Date d'inscription
Statut
Modérateur
Dernière intervention
3 020
Remarque : ça ira plus vite en privilégiant un site français (plutôt que danois...)
try { String host = InetAddress.getLocalHost().toString().split("/")[1]; System.out.println(host); } catch (UnknownHostException e) { e.printStackTrace(); }
Cela dépend de ta configuration. Passes-tu par un NAT ? Si c'est le cas, la machine ne connait pas cette adresse. Il faut donc ruser en passant par internet. Tu te connectes sur un site internet te listant l'IP de connection, tu parses l'IP et tu as ta réponse.
sinon j'ai trouvé ça:
https://java.developpez.com/faq/javaio?page=Reseaux#RESEAU_ip
ça donne plus d'informations
https://java.developpez.com/faq/javaio?page=Reseaux#RESEAU_ip
ça donne plus d'informations
Je l'a dit, en cas de NAT, la machine n'a pas connaissance de l'IP publique.
Un moyen consiste à récupérer le contenu d'un site internet donnant l'IP publique et de parser le résultat.
Le lien suivant montre comment faire : https://www.developpez.net/forums/d256692/java/general-java/recuperer-adresse-ip-public-java/
Un moyen consiste à récupérer le contenu d'un site internet donnant l'IP publique et de parser le résultat.
Le lien suivant montre comment faire : https://www.developpez.net/forums/d256692/java/general-java/recuperer-adresse-ip-public-java/
merci,
c'est normal que cette adresse publique n'arrête pas de changer, elle n'est pas fixe
sur le site https://www.google.com/search?&gl=us&q=what+is+my+ip+address a chaque fois que tu rafraichis, ça te donne une autre adresse
c'est normal que cette adresse publique n'arrête pas de changer, elle n'est pas fixe
sur le site https://www.google.com/search?&gl=us&q=what+is+my+ip+address a chaque fois que tu rafraichis, ça te donne une autre adresse