임의 포트 스니퍼 도구
1299 단어 포트 테스트
그래서 나는 임의로 지정된 포트를 감청하고 밖에 있는 텔넷 포트에 텍스트를 입력할 수 있는 작은 프로그램을 썼다. 감청 세그먼트는 컨트롤러에 텍스트를 출력해서 네트워크 상황을 감지했다.
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.net.ServerSocket;
import java.net.Socket;
import java.util.regex.Pattern;
public class PortListener {
public static void main(String[] argd)throws Exception{
System.out.println("A started");
int port = getListenPort();
System.out.println("Listening at port "+port+" ...");
ServerSocket server = new ServerSocket(port);
Socket client = server.accept();
BufferedReader reader = new BufferedReader(new InputStreamReader(client.getInputStream()));
while(true){
String w = reader.readLine();
if(w.equals("end")){
break;
}
System.out.println(w);
}
System.out.println("A ended");
}
public static int getListenPort()throws Exception{
String port=null;
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
while(port==null||!Pattern.matches("^\\d{2,}$", port)){
System.out.print("Enter listen port:");
port = reader.readLine();
}
reader.close();
return Integer.parseInt(port);
}
}