У меня есть программа на Java, которая взаимодействует с другими программами в сети с использованием пакетов UDP. Я заметил, что на моей машине с Windows XP я не мог получать входящие пакеты, и после некоторых исследований я выяснил, что это был брандмауэр, вызывающий проблему.
Есть ли способ добавить исключение брандмауэра для Java-программы? Google ничего не показывает для этого.
Есть ли команда оболочки DOS, которую я могу запустить во время установки, которая добавит исключение? (Также не могу найти что-либо в Google для этого.)
Есть ли способ обойти это так, чтобы Windows знала, что входящие пакеты запрашиваются? Например, я отправляю широковещательный пакет, а затем другие системы отвечают. Что я могу сделать в отношении того, какие порты я использую для широковещательной передачи, которые позволят пакет ответа?
Есть ли совершенно другой способ получения ответа? Мне все еще нужно вещать, потому что это будет выполняться в сетях, которые не обязательно даже имеют DNS, поэтому я не могу полагаться на такие вещи, как Zeroconf (не говоря уже о том, что для Java не существует хорошей поддержки Zeroconf) для обнаружения другие машины в сети.
Спасибо.