Назад | Перейти на главную страницу

Tomcat, похоже, не работает "из коробки" на свежей CentOS 6.5. Я что-то упускаю?

Я устанавливаю CentOS 6.5 с выбором пакета «Веб-сервер» и всем остальным по умолчанию.

Я делаю service tomcat6 start, затем ss -ntlp чтобы подтвердить, что Tomcat прослушивает порт 8080, как указано в файле Tomcat 6 /etc/tomcat6/server.xml по умолчанию. Это результат:

State       Recv-Q Send-Q                                             Local Address:Port                                               Peer Address:Port
LISTEN      0      128                                                           :::111                                                          :::*                                users:(("rpcbind",1012,11))
LISTEN      0      128                                                            *:111                                                           *:*                                users:(("rpcbind",1012,8))
LISTEN      0      100                                                           :::8080                                                         :::*                                users:(("java",1561,37))
LISTEN      0      128                                                           :::22                                                           :::*                                users:(("sshd",1216,4))
LISTEN      0      128                                                            *:22                                                            *:*                                users:(("sshd",1216,3))
LISTEN      0      128                                                    127.0.0.1:631                                                           *:*                                users:(("cupsd",1102,7))
LISTEN      0      128                                                          ::1:631                                                          :::*                                users:(("cupsd",1102,6))
LISTEN      0      100                                                          ::1:25                                                           :::*                                users:(("master",1292,13))
LISTEN      0      100                                                    127.0.0.1:25                                                            *:*                                users:(("master",1292,12))
LISTEN      0      128                                                           :::33081                                                        :::*                                users:(("rpc.statd",1030,11))
LISTEN      0      128                                                            *:33657                                                         *:*                                users:(("rpc.statd",1030,9))
LISTEN      0      1                                               ::ffff:127.0.0.1:8005                                                         :::*                                users:(("java",1561,39))
LISTEN      0      50                                                            :::8009                                                         :::*                                users:(("java",1561,38))

Означает ли это, что Tomcat прослушивает только IPv6, а не IPv6 и IPv4? Почему не работает нормально, так сказать "из коробки"?

Это зависит от значения sysctl net.ipv6.bindv6only.

Если установлено значение 0, прослушиватель IPv6-адреса INADDR6_ANY (::) будет прослушивать соединения IPv6 и IPv4, если только приложение не установит IPV6_V6ONLY на сокет.

Если установлено значение 1, такой слушатель будет прослушивать только соединения IPv6.

# sysctl net.ipv6.bindv6only
net.ipv6.bindv6only = 0

Проверить, прослушивает ли приложение IPv4, должно быть просто ...

telnet 127.0.0.1 8080