2012-03-18 37 views
0

服务器A与memcached,服务器B需要使用memcached。如果我离开的memcached开放给所有的IPS(默认值),服务器B可以:如何使用telnet获得外部连接的IP,或者可能配置错误的memcached允许IP的

telnet server.a.etc 11211 

并得到了如果我的ping服务器B,我得到一个IP,153.353.234.23(例如),我把在我的memcached选项

OPTIONS="-l 153.353.234.23" 

重新启动,现在服务器b无法再通过telnet连接。我假设这是因为它可能是使用不同的IP地址进行连接?其他一些错误?无论哪种方式,我希望能够看到连接时的服务器B的IP。

我启用了memcached的记录

-vvv >var/log/memcached.log 2>&1 

,我看到越来越生成的日志,但不连接机器的IP地址。

回答

0

with memcached -l您指示memcached服务器绑定到服务器的特定IP地址。如果您希望memcached接受服务器节点上特定IP或网络接口上的数据,这非常有用。 您可以保留默认设置,使服务器的任何IP地址(IPv4上的0.0.0.0)上的memcached绑定。

我不认为memcached有一个命令开关来登录源IP。 您可以使用Linux系统上的命令

netstat -natp | grep 11211 | grep ESTABLISHED 

去Memcached和客户端的IP地址建立的连接。

+0

ok,所以是的,运行那个命令我看到从153.353.234.23地址来的连接,所以这不是问题,但是你说--l选项甚至没有这样做,它绑定本地地址。有两台服务器在同一个服务器场内运行,我如何确保memcached只接受来自服务器B的连接?如果你也想开一个新的问题 - – chrismarx 2012-03-18 19:06:59

+0

@chrismarx如果你正在Linux系统上运行memcached,你可以使用iptables。 iptables -A INPUT -p tcp -m tcp --dport 11211 -s! [ip_client] -j DROP – dAm2K 2012-03-18 19:11:16