Я написал сканер портов в Java, который прекрасно работает, однако я не уверен, как проверить, если порт закрыт и отфильтрован. У меня есть эти операторы catch, которые работают правильно, но я не уверен, что мой контекст для них правильный, означает ли TimeoutException, что сокет фильтруется?
Я пришел к такому выводу из предыдущих примеров, но не смог найти ни одного источника, объясняющего это, если нет, какие исключения будут показывать сокет закрытым или отфильтрованным?
catch(SocketTimeoutException ex)
{
System.out.println("Port " + port + " is filtered");
}
catch(SocketException ex)
{
System.out.println("Port " + port + " is closed");
}