Я использую Apache Spark, приложение Java, для создания кластера машин. Запущенные процессы пытаются взаимодействовать друг с другом через рандомизированные порты. Есть ли способ создать сценарий открытия случайного порта в кластере?
Это аналогичный ответ, но я хочу открыть один случайный порт, а не диапазон. Я не знаю, каков диапазон, но думаю, я мог бы попытаться выяснить это. https://serverfault.com/a/540517/398062
Вы можете сканировать порты прослушивания на сервере и периодически запускать сценарий bash через crontab, чтобы открывать порты при обнаружении порта. Очевидно, это потребует дополнительной проверки, но это рабочая база. Если вам нужна помощь в кодировании порта проверки (порт уже открыт?), Просто скажите мне, я подключу вас.
#!/bin/sh
ports=`netstat -pat | grep LISTEN | awk '{ print $4 }' | cut -f2- -d:`
for port in $ports; do
iptables -A INPUT -p tcp --dport $port -j ACCEPT
done