我是Java網絡的新手。我用java編寫了一個程序,它可以顯示Web服務器的活動端口。 這就是:我如何知道使用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();
}
}
但現在我想打印端口的端口號,就好像它是一個TCP/IP,FTP,Telnet或一些其他類型的端口類型一起。我想知道在java網絡中是否有這樣的函數返回端口類型,或者是否有一些程序來執行它。另外如何區分不同類型的端口?我的意思不是編程的觀點,而是它們之間的根本區別,它們爲它們提供了自己的身份,並且可以在其他編程語言中用作邏輯聲明。
操作系統本身應該有一些東西,它會在觸發時返回一個端口。
例如: 假設有65536個人(端口)在工廠(機器或操作系統)中。一次他們中的一些正在工作(活躍),而另一些則不在。因此,如果我們問他們發生了什麼事情(像nmap這樣的端口掃描),那些不工作的人不會說任何事情(返回null或無效信號),並且工作的人會說我正在做這個或那個(tcp/udp, ssh,ftp,telnet)。
所以我想趕上他們的迴應,併爲此制定計劃。 想知道nmap如何實際做到這一點? 我們如何觸發一個端口以及該端口的響應是什麼? 如何區分不同類型的端口響應?
通過使用您的操作系統的某些工具,例如linux上的'netstat',這可能會變得更容易。它真的需要在Java中完成嗎? – Aaron
如果有任何請告訴我們downvoting的原因。 –