Javaでポートスキャナーを書いています。for ループを使用して 0 から 100 までのポートをカウントし、それぞれにソケットを構築し、例外がスローされるかどうかを確認しています。ただし、「www.google.com」などのローカル以外のポートをスキャンしようとすると、最初のポートがスキャンされてから停止します (文字通り、プログラムは待機するだけです)。Scan メソッドのコードは次のとおりです。変数 ia は InetAddress オブジェクトであることに注意してください
private void scan(int low, int high){
for(int port =low; port<high; port++){
try {
connection = new Socket(ia, port);
r.addPort(port);
System.out.println("port "+port+" open");
connection.close();
} catch (IOException e) {
System.out.println("port "+port+" not open");
}
}
}