J'installe Memcached sur un serveur Debian qui a deux interfaces - eth0 (public) et eth1 (privé).
Je veux que Memcached écoute à la fois sur eth1 et lo (bouclage) afin qu'il soit accessible même si le réseau privé tombe en panne mais PAS eth0 (public).
D'après la page de manuel de memcached, je comprends que l' -l
option ne peut prendre qu'une seule adresse IP. J'ai pensé à utiliser des sockets UNIX pour les connexions locales mais la page de manuel dit
-s
Chemin de socket Unix sur lequel écouter ( désactive la prise en charge réseau ).
La seule autre méthode que je connaisse est de bloquer les connexions via eth0 en utilisant IPTables. Existe-t-il une autre solution qui n'utilise pas le pare-feu?
Comme indiqué dans la réponse acceptée, les nouvelles versions le prennent en charge:
ou
Les versions plus anciennes (livrées avec CentOS 6.5 ou version antérieure) ne prennent pas encore en charge cela, elles peuvent écouter sur toutes les interfaces, une seule adresse IP ou un socket.
Pas une combinaison de ceux-ci.
Votre seul moyen de résoudre ce problème est de le lier à toutes les interfaces et de pare-feu l'interface publique ou de le lier à 127.0.0.1 uniquement et de transmettre les demandes à eth1: 11211 à lo0: 11211 via iptables.
la source