
У меня есть машина Linux с IP-адресом (например 172.16.x.x
). С некоторыми размещенными виртуальными машинами доступ к каждой машине осуществляется через отдельный ssh
порт (например 2230, 2234...).
Например, вВМ1У меня есть сервер Apache, который загружает представление, и я хочу подключиться к redis
серверу, размещенному наВМ2.
Сервер redis
отлично работает на порту 6739, при запуске netstat
получаю следующий вывод::
$ netstat -ntlp | grep 6379
tcp 0 0 127.0.0.1:6379 0.0.0.0:* LISTEN
Однако когда я выполняю ту же команду на виртуальной машине Apache, я ничего не получаю, и программа не может загрузиться из redis
базы данных.
Как создать мост между этими виртуальными машинами Ubuntu?
решение1
Проблема в том, что ваш сервер redis слушает только на интерфейсе localhost. Поэтому к нему можно получить доступ только с его собственного хоста. Позвольте ему слушать все сетевые интерфейсы, используя 0.0.0.0
. Подробности см. во втором ответе здесь:
https://stackoverflow.com/questions/8537254/redis-connect-to-remote-server