Недавно я переместил sphinx на тот же сервер, что и наша база данных, поэтому наша архитектура:
Когда я пытаюсь подключиться к sphinx в ip.to.db.server
Я получаю следующую ошибку:
Sphinx response connection to ip.to.db.server:9312 failed (errno=113, msg=No route to host)
Что мне нужно сделать, чтобы сделать порт 9312 доступным для моего веб-приложения?
Текущий TCP
порты LISTEN
ing:
tcp 0 0 0.0.0.0:9306 0.0.0.0:* LISTEN 23496/searchd
tcp 0 0 0.0.0.0:9312 0.0.0.0:* LISTEN 23496/searchd
Выход iptables -L
:
Chain INPUT (policy ACCEPT)
target prot opt source destination
fail2ban-ssh tcp -- anywhere anywhere multiport dports ssh
RH-Firewall-1-INPUT all -- anywhere anywhere
Chain FORWARD (policy ACCEPT)
target prot opt source destination
RH-Firewall-1-INPUT all -- anywhere anywhere
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
Chain RH-Firewall-1-INPUT (2 references)
target prot opt source destination
ACCEPT tcp -- anywhere anywhere tcp dpt:ssh /* SSH */
ACCEPT tcp -- anywhere anywhere tcp dpt:lmsocialserver /* monit */
ACCEPT tcp -- anywhere anywhere tcp dpt:https /* HTTPS */
ACCEPT tcp -- anywhere anywhere tcp dpt:webcache /* HTTPProxy */
ACCEPT tcp -- anywhere anywhere tcp dpt:http /* HTTP */
ACCEPT tcp -- anywhere anywhere tcp dpt:mysql /* MySQL */
ACCEPT all -- ipremoved_by_poster anywhere /* Rackspace monitoring */
ACCEPT all -- ipremoved_by_poster anywhere /* Rackspace monitoring */
ACCEPT all -- ipremoved_by_poster anywhere /* Rackspace monitoring */
ACCEPT all -- ipremoved_by_poster anywhere /* Rackspace monitoring */
ACCEPT all -- ipremoved_by_poster anywhere /* Rackspace monitoring */
ACCEPT all -- ipremoved_by_poster anywhere /* Rackspace monitoring */
ACCEPT all -- ipremoved_by_poster anywhere /* Rackspace monitoring */
ACCEPT all -- anywhere anywhere /* localhost */
ACCEPT icmp -- anywhere anywhere icmp any /* ping */
ACCEPT all -- anywhere anywhere state RELATED,ESTABLISHED
REJECT all -- anywhere anywhere reject-with icmp-host-prohibited
Chain fail2ban-ssh (1 references)
target prot opt source destination
RETURN all -- anywhere anywhere
Я долго искал безуспешно. Любая помощь очень ценится.
E
Проблема была в IPTABLES
блокировал мое удаленное соединение, поэтому я добавил две строчки на всякий случай:
vi /etc/sysconfig/iptables
добавьте следующие строки:
-A RH-Firewall-1-INPUT -i eth1 -p tcp -m tcp --dport 9312 -m comment --comment "Sphinx" -j ACCEPT
-A RH-Firewall-1-INPUT -s your.remote.ip.address/32 -i eth0 -p tcp -m tcp --dport 9312 -j ACCEPT
Отрегулируйте порт 9312
к любому порту / портам, которые слушает сфинкс.
Затем я побежал service iptables restart
и сфинкс был готов!
Спасибо @mdpc и @sciurus за то, что указали мне правильное направление.
NOTE:
Rackspace использует RH-Firewall-1-INPUT
, но вам может потребоваться просто INPUT
, или что-то другое