Если Вы не хотите на самом деле проверять, существуют ли хосты, должны просто циклично выполниться через IP-адреса и сделать обратный поиск. Следующий рецепт работает над Linux и FreeBSD; я не знаю как host
программа на Mac OS X ведет себя:
for x in $(seq 1 254); do
host 10.0.0.$x || echo "no hostname for $x"
done
Можно также использовать nmap
для обнаружения, на что возросли хосты сделайте обратный поиск DNS на хостах, которые он находит, и затем отфильтруйте на этом. nmap
имеет набор опций точно настроить вывод, но возможно запуститься с
nmap -sP -R '10.0.0.*' -oN outfile
Или используйте -oX
для вывода XML, который можно обработать более детерминировано. Или объедините его с вызовом к host
.
Долгое время начиная с этого вопроса спросили, но так как @mark показал некоторый интерес, вот то, как я в конечном счете решил его. Проблема состояла в том, что JVM связывала с локальным IP-адресом вместо IP-адреса VPN. Все это работавшее путем добавления:
-Djava.rmi.server.hostname=10.170.0.14
К серверу, который я хотел контролировать.
3 вещи, которые стоит попробовать, если Вы уже не имеете: 1) избавьтесь от правил брандмауэра обо всех машинах полностью для тестирования (если можно сделать это), 2), если 1) не опция, настройте 3 виртуальных машины, которые подражают установке без брандмауэров - выполнение этого, я нашел подобную проблему со своей собственной сетью. 3) удостоверьтесь, что у Вас есть проверка активности в Вашем openvpn клиентском конфигурационном файле - строка что-то как: проверка активности 10 120
Подобная проблема, которую я имел, состояла в том, что моя сеть компании была настроена для отбрасывания любых входящих пакетов после x секунды неактивности, поэтому даже при том, что VPN была технически все еще открыта, весь трафик, одно направление отбрасывалось, пока некоторый трафик не прибыл из другой стороны, затем это работало.
-Dcom.sun.management.jmxremote.port=1616
-Dcom.sun.management.jmxremote.rmi.port=1618
-Dcom.sun.management.jmxremote.ssl=false
-Dcom.sun.management.jmxremote.authenticate=false
ssh solr@remote-host -L 1616:remote-host:1616 -L 1618:remote-host:1618
jconsole localhost:1616