Как подключиться к memcached с другой машины

22

Я пытаюсь использовать memcached с другого компьютера (который имеет доступ к моему серверу), но я не могу понять, как.

на машине memcached я могу проверить соединение, запустив

telnet 127.0.0.1 port

И это работает, но на другой машине он просто пытается подключиться

telnet machine_address port
Trying machine_address...

Я не уверен, стоит ли мне устанавливать что-то еще, чтобы это работало. Я знаю, что порт работает и доступен, потому что, если я пытаюсь запустить другие службы на нем, они работают.

Os Ubuntu

Оскар Дель Бен
источник
У меня такая же проблема с моими виртуальными машинами, telnet возвращает «Отказ в соединении». Локальный телнет в машине memcache работает. В iptables добавлено явное правило, разрешающее порт 11211, без кубиков, в маршрутизаторе добавлено правило, разрешающее порт без кубиков ...
Purefan

Ответы:

25

В /etc/memcached.conf:

# Specify which IP address to listen on. The default is to listen on all IP addresses
# This parameter is one of the only security measures that memcached has, so make sure
# it's listening on a firewalled interface.
-l 127.0.0.1

Изменить это на

-l 0.0.0.0

и перезапустите memcached.

Majenko
источник
К сожалению, это не сработало.
Оскар Дель Бен
1
Проверьте выходные данные netstat -ln4tзатем, чтобы увидеть, слушает ли он 127.0.0.1:11211 или 0.0.0.0:11211.
Majenko
выход 0.0.0.0:*
Оскар Дель Бен
Стыдно, как долго мне понадобилось, чтобы понять это. Спасибо @Majenko
Ascherer
@ Majenko Ты о чем Local Address?
chanchal118
3

Отредактируйте -lстроку в /etc/memcached.conf. Здесь хранятся ваши параметры запуска.

Следующая строка позволит memcached прослушивать все интерфейсы:

sudo sed 's/-l/#-l/' /etc/memcached.conf && sudo service memcached restart
Ретт Радуенц
источник
0

Есть две основные возможности:

  • Вы установили свой экземпляр memcached для прослушивания только через локальный петлевой интерфейс - вы можете проверить это в netstat -lвыходных данных.
  • Ваш iptablesбрандмауэр настроен на отклонение всех входящих подключений, кроме тех, которые явно разрешены.
че
источник
Я вижу, что порт разрешен как для nestat, так и для iptables. В таблицах ip он читает tcp dpt: 11211
Оскар Дель Бен