Je suis nouveau sur le réseau Java. J'ai fait un programme en java qui peut montrer les ports actifs d'un serveur web. Ici, il est:Comment puis-je connaître le type d'activité de port utilisant la mise en réseau JAVA?
import java.net.Socket;
import java.util.Scanner;
import java.lang.Exception;
import java.lang.Thread;
class helper{
public static void main(String []args){
Scanner s= new Scanner(System.in);
int port;
System.out.print("Enter web url :");
String url = s.next();
for(port=0;port<65536;port++){
helper2 h = new helper2(url,port);
h.start();
}
s.close();
}
}
class helper2 extends Thread{
int port;
String url;
helper2(String url,int port){
this.url=url;
this.port=port;
}
private void getStatus(){
try{
Socket skt = new Socket(url,port);
System.out.println(port);
skt.close();
}catch(Exception e){
//Handle Exception here
}
}
public void run(){
getStatus();
}
}
Mais maintenant, je veux imprimer un type de port ainsi que le numéro de port comme si elle est un TCP/IP, FTP, telnet ou un autre type de port. Je voulais savoir s'il y a une telle fonction dans le réseau Java qui renvoie le type de port ou existe-t-il un programme pour le faire. Aussi comment différencier le type de différence de ports? Je ne parle pas du point de vue de la programmation, mais de la différence fondamentale entre eux qui leur fournit leur identité et peut être utilisée dans un autre langage de programmation comme une déclaration logique.
Il devrait y avoir quelque chose dans l'OS lui-même qui retourne ce que fait un port lors du déclenchement. Par exemple: Supposons qu'il existe 65536 personnes (ports) dans une usine (machine ou système d'exploitation). À la fois, certains d'entre eux travaillent (actifs) et d'autres non. Donc, si nous leur demandons ce qui se passe (scan de port comme nmap), les gens qui ne travaillent pas ne diront rien (retour nul ou signal inactif) et les gens qui travaillent diront que je fais ceci ou cela (tcp/udp, ssh, ftp, telnet). Donc, je veux rattraper leur réponse et faire un programme pour cela. Aimeriez-vous savoir comment nmap fait cela? Comment déclencher un port et quelle est la réponse de ce port? Comment différencier les différents types de réponses de port? FTP et Telnet sont dans la couche d'application
Cela serait probablement rendu beaucoup plus facile en utilisant certains outils de votre OS, par exemple 'netstat' sur Linux. Est-ce que cela doit vraiment être fait en Java? – Aaron
s'il vous plaît dire la raison pour downvoting s'il y en a. –