Вопрос: Как «установить» каноническое имя хоста, как сообщается в методе java InetAddress.getCanonicalHostname()
?
Контекст: я пытаюсь запустить Neo4j (у которого есть встроенный сервер Jetty) на CentOS 5.6.Служба запускается просто отлично, но она привязана к неправильному адресу (IPv6), о чем свидетельствует netstat.Вместо :::*
мне нужно привязать его к 0.0.0.0
(IPv4).
Есть ли параметр JVM, который я могу использовать, чтобы заставить getCanoncialHostname()
вернуть нужную строку?Если нет, что я могу добавить к моему hosts
файлу или другому файлу конфигурации linux для достижения того же самого?
[edit - добавлен вывод netstat]
$ netstat -plten
...
Proto Local Address Foreign Address State User Inode PID/Program name
tcp 0.0.0.0:930 0.0.0.0:* LISTEN 0 10240 -
tcp 0.0.0.0:139 0.0.0.0:* LISTEN 0 57484 -
tcp 0.0.0.0:111 0.0.0.0:* LISTEN 0 10104 -
tcp 127.0.0.1:25 0.0.0.0:* LISTEN 0 12714 -
tcp 0.0.0.0:445 0.0.0.0:* LISTEN 0 57483 -
tcp :::7474 :::* LISTEN 500 524965 28200/java
tcp :::22 :::* LISTEN 0 62967 -
tcp :::1337 :::* LISTEN 500 524953 28200/java
tcp :::15003 :::* LISTEN 500 481149 3926/java
tcp :::60156 :::* LISTEN 500 524951 28200/java
tcp :::15004 :::* LISTEN 500 524917 28177/java
Порт 22 - это ssh -Я могу просто войти в систему через ssh, так что есть доказательства того, что внешний адрес :::*
(в принципе) очень хорош.
[edit - добавлен удаленный вывод nmap]
Запуск nmap издругой хост, специально перечисляющий все вышеперечисленное, производит это:
$ nmap -T4 -A -v -PE -PS22,25,80 -PA21,23,80,930,139,111,25,445,7474,22,1337,15003,60156,15004,3389 192.168.176.138
...
Initiating SYN Stealth Scan at 13:31
Scanning 192.168.176.138 [1000 ports]
Discovered open port 111/tcp on 192.168.176.138
Discovered open port 139/tcp on 192.168.176.138
Discovered open port 445/tcp on 192.168.176.138
Discovered open port 22/tcp on 192.168.176.138
Discovered open port 15003/tcp on 192.168.176.138
Discovered open port 15004/tcp on 192.168.176.138
Completed SYN Stealth Scan at 13:31, 0.04s elapsed (1000 total ports)