Après une applet de conversion DXF/SVG et un petit mois de vaccances à fragger dans les LAN-parties
, je me remets à JAVA pour un pote qui voudrait réaliser un truc à mi-chemin entre LANsearchPRO et LANaspirator ( un soft qui permettrait dans un premier temps d'effectuer des recherches de fichiers et dossiers sur un réseau local, et donc de pouvoir trouver toutes les machines y étant connectées, puis de télécharger avec coupures et reprises une liste de fichiers partagés choisis...
( Le TOP serait aussi de rajouter une petite gestion de la bande passante )
1°étape, donc : le SCAN des IP présentes sur le réseau. J'ai trouvé dans les sources de code fournis sur ce site le logiciel "nTOOLS 1.3" avec quelques fonctions intéressantes. 
J'arrête de vous faire baver; voilà en deux trois lignes (de base) de quoi répertorier les machines présentes sur le réseau, il ne vous reste plus qu'à améliorer.
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
(Au passage, je suis preneur de toutes nouvelles infos en rapport avec JAVA et le partage de fichiers en LAN , Merci ! )
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
import java.net.*;
class scanIP
{
public static void main (String [] args)
{
for (int i=0; i <255; i++ )
{ // On peut changer le masque réseau standard au besoin, voir tout tester !
TestIP testIP = new TestIP("192.168.0." + i );
( (Thread) testIP ).start();
}
System.out.println("SCAN ... terminé");
}
// Ci-dessous, sous-Class apparentée à un thread :
static class TestIP extends Thread
{
private String ip;
private String namePC;
public TestIP(String adresse)
{ // Constructeur du THREAD avec l'IP passée en paramètre + haut...
ip = adresse;
}
public void run() // Déclanchée lorsque "thread.start()" ci-dessus
{
try
{
namePC = InetAddress.getByName(ip).getHostName().toString();
if ( ! namePC.startsWith( ip.toString() ))
{
System.out.println();
System.out.println("Nom de l'Hôte = " + ip);
System.out.println("Nom de l'Hôte = " + namePC);
System.out.println();
}
}
catch (UnknownHostException ex) { System.out.println("#Bad IP#"); }
}
}
}
Voilà, voilà
: J'espère que cela répondra au moins en partie, à votre question...
Sinon, il est possible de faire des "PING" successifs, avec un "process" faisant appel à "Z:/Windows/System32/ping.exe" ou encore à l'aide de sockets ( j'ai un exemple nommé ping.java de SUN, mais
ce dernier ne fonctionne pas du tout ... !!! )
Bonne chance à vous.