Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

MAC, IP, MASQUE ET NOM DES CARTES RÉSEAUX D'UN PC (JNI)


Information sur la source

Catégorie :Systeme Classé sous : mac, adresse, ip, masque, jni Niveau : Initié Date de création : 24/06/2007 Date de mise à jour : 25/06/2007 11:17:33 Vu / téléchargé: 6 657 / 653

Note :
8 / 10 - par 1 personne
8,00 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10

Commentaire sur cette source (6)
Ajouter un commentaire et/ou une note

Description

Ce petit bout de code permet la récupération de l'adresse mac des cartes réseau d'un PC et également l'adresse IP, le masque sous réseau et le nom du device.
Pour ce qui est de l'adresse IP, du masque et du nom je sais qu'il est possible de les récupérer en java pure, mais il est plus facile de le gérer dans le code CPP afin de lier plus simplement l'adresse MAC et le reste des informations.


Le zip est composé de 2 projets :
1 - Le projet java (NetworkDevices) fait sous eclipse 3.3
2 - Le projet CPP (NetDevices) pour Linux(gcc 4.1.2) & windows (Visual Studio 6)

Note :
Pour windows il faut avoir le SDK de windows à cause de la dépendance à iphlpapi.h et iphlpapi.lib

afin de compiler correctement les codes C++ merci de bien renseigner le chemin des includes situés dans le répertoire d'installation du jdk (pour windows : également de renseigner les includes et lib du sdk de windows).

Cette source nécessite le jdk 1.5 ou supérieur (pour le main).

Le code JNI montre également comment invoquer, initialiser un objet Java depuis un code C/C++, il montre également comment retourner un tableau d'objet Java depuis un code C/C++.


 

Source

  • package org.cs;
  • import org.cs.net.NetworkDevice;
  • import org.cs.net.x86.NetworkDevices;
  • public class NetTest {
  • public static void main(String[] args) {
  • NetworkDevice [] devices = NetworkDevices.getNetworkDevices();
  • for(NetworkDevice nd : devices) {
  • System.out.println("Name : " + nd.getName());
  • System.out.println("MAC : " + nd.getMac());
  • System.out.println("IP : " + nd.getIp());
  • System.out.println("NetMask : " + nd.getSubNetMask());
  • System.out.println();
  • System.out.println();
  • }
  • }
  • }
package org.cs;

import org.cs.net.NetworkDevice;
import org.cs.net.x86.NetworkDevices;

public class NetTest {

	public static void main(String[] args) {
		NetworkDevice [] devices = NetworkDevices.getNetworkDevices();
		for(NetworkDevice nd : devices) {
			System.out.println("Name    : " + nd.getName());
			System.out.println("MAC     : " + nd.getMac());
			System.out.println("IP      : " + nd.getIp());
			System.out.println("NetMask : " + nd.getSubNetMask());
			System.out.println();
			System.out.println();
		}

	}

}

Conclusion

J'ai effectué les testes windows sous VMWare alors merci de me dire si vous avez des problèmes à l'exécution .

Le zip contient des fichiers de lancement incluant la lib au LD_PATH.
Linux : run.sh
Windows : run.bat
 

Fichier Zip

Pour les "Membres Club", vous pouvez télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip

Historique

24 juin 2007 22:46:30 :
j'ai oublié un fichier dans le zip ^^
25 juin 2007 11:17:33 :
Maj du zip...

Commentaires et avis

signaler à un administrateur
Commentaire de the_wwt le 25/06/2007 14:54:38

Bonjour,
le code est intérressant et instructif 8/10.
Merci pour la source,
Cordialemnt,
Pierrick

signaler à un administrateur
Commentaire de Twinuts le 25/06/2007 14:56:29 administrateur CS

Salut,

Merci et content que sa intéresse quelqu'un ^^

signaler à un administrateur
Commentaire de DARKSIDIOUS le 27/06/2007 07:25:58 administrateur CS

on sens là le passionné de réseau :p

signaler à un administrateur
Commentaire de Twinuts le 27/06/2007 09:26:07 administrateur CS

J'avoue que le réseau j'adore ce peut importe le protocole utilisé ^^

signaler à un administrateur
Commentaire de cheg le 13/02/2008 12:07:37

je te felicite pour ton travaille mais je veux savoir ton prog te fourni ton ip ou l'ip d'une machine distante ?

signaler à un administrateur
Commentaire de Twinuts le 13/02/2008 12:41:21 administrateur CS

Salut,

Merci.

Le code C++ récupère la liste des cartes réseau dispo sur le poste local donc tu auras du mal à le reprendre pour effectuer cette récupération sur un machine distante.

Ajouter un commentaire

Discussions en rapport avec ce code source dans le forum

Extraire l'ip sur un mac???? [ par toomkak ] Slt...Je ne connais pas du tout le monde mac et je voulais savoir:- Comment retrouver manuellement l'ip...Comme on peut faire avec un os Windaube (cmd Réseau: vérif une Ip par rapport à un masque de sous réseau [ par coyote_fx ] Bonjour à tous,voilà toujours dans le cadre de mon porjet je dois maintenant pouvoir vérifier des adresses ip par rapport à un masque se sous réseau. recuperer une adresse ip [ par wadiaa2 ] comment recuperer une adresse ip à travers un code en java ou en jsp ? merci! Masque de sous-réseau: comment le recuperer [ par gubule ] Salut!Voila ce que je cherche a faire:je veux recuperer la listes des adresses ip appartenant au meme reseau que ma machine.Pour ce faire, j'ai besoin l'adresse ip avec php [ par marniga ] salut tous le monde Comment affiché l?adresse ip d?un ordinateur avec le le langage php et merci bcp JAVA et Adresse IP [ par webshop2 ] Bonjour,je veux obtenir l'adresse IP ou le nom Netbios d'une machine en local depuis un site Internet.Jusque là, je n'ai obtenu que l'adresse IP Inter Deux pour le prix d'une... [ par AbriBus ] Salut a tous...Vous sauriez pas si je peux recuperer l'adresse IP d'un client qui se connecte a un serveur par une applet... j'ai bien penser le faire Adresse IP [ par simvc ] Simvc,Au moyen d'une page HTML je peux activer des relais, je constate à l'écran après activation que son état passe de 0 à 1, 1.je voudrais pouvoir l Aiguillage selon adresse IP [ par MZE60 ] Bonjour à tous,Nouveau dans ce domaine, je souhaite une aide approfondie sur la manière d'écrire et de mettre un place un PGM d'aiguill Adresse IP de sa connexion Internet [ par Foub12 ] Bonjour, j'ai trouvé le code JAVA suivant : «      InetAddress Ip = InetAddress.getLocalHost();  &nb


Nos sponsors

Sondage...

CalendriCode

Octobre 2008
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,28 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.