将 localhost memcached 服务器的 12111 端口转发到 domain.com memcached 服务器

将 localhost memcached 服务器的 12111 端口转发到 domain.com memcached 服务器

我的客户正在运行许多使用 memcached 的脚本,但它们都使用 localhost 作为地址。我的 localhost 服务器现在内存不足,因为它正在执行许多其他操作,例如 WWW 和 MySQL 服务器。

现在我有一台具有 16 GB RAM 的全新服务器,可以将其用作专用的 memcached 服务器。如何将 localhost:12111 重定向到 domain.com:12111 服务器?

我无法在 /etc/hosts 中将 localhost 切换为其他地址,因为我的所有数据库都使用这样的地址。

答案1

努力一下,谷歌搜索一分钟就会给你答案。

您可以使用以下任意顺序:

  1. 西奈特
  2. 里奈特
  3. IP表
  4. SSH 隧道
  5. 网猫
  6. 第 4-7 层平衡(例如 haproxy)

或者对 localhost 进行简单的 grep,并将其替换为您可以更改的主机名。

iptables

sysctl -w net.ipv4.ip_forward=1
iptables -t nat -A POSTROUTING -j MASQUERADE
iptables -t nat -A PREROUTING -d 127.0.0.1 -p tcp --dport 11211 -j DNAT --to 192.168.1.2:11211
iptables -P FORWARD ACCEPT

rinetd

echo " 127.0.0.1 11211 192.168.1.2 11211" >> /etc/rinetd.conf
/etc/init.d/rinetd restart

网猫

nc -l -p 11211 -c "nc 192.168.1.2 11211"

远程控制

ssh [email protected] -L 11211:192.168.1.2:11211

xinetd

cat > /etc/xinet.d/memfw << eof
  service memfw {
    disable = no 
    type = UNLISTED 
    socket_type = stream 
    protocol = tcp 
    user = nobody 
    wait = no 
    redirect = 192.168.1.2 11211
    port = 11211
  }
eof

相关内容