iptables没有添加NAT规则

时间:2016-05-04 18:46:59

标签: ubuntu iptables

我试图将一个端口从主机转发到lxc guest: sudo iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j DNAT --to 10.0.3.31:3000

on lxc guest正在运行一个服务于网站的nodejs服务器  我在这里看不到添加的规则:

-P INPUT ACCEPT
-P FORWARD ACCEPT
-P OUTPUT ACCEPT
-N fail2ban-ssh
-A INPUT -p tcp -m multiport --dports 22 -j fail2ban-ssh
-A INPUT -i lxcbr0 -p tcp -m tcp --dport 53 -j ACCEPT
-A INPUT -i lxcbr0 -p udp -m udp --dport 53 -j ACCEPT
-A INPUT -i lxcbr0 -p tcp -m tcp --dport 67 -j ACCEPT
-A INPUT -i lxcbr0 -p udp -m udp --dport 67 -j ACCEPT
-A FORWARD -o lxcbr0 -j ACCEPT
-A FORWARD -i lxcbr0 -j ACCEPT
-A fail2ban-ssh -j RETURN

但是我没有通过调用iptables -t nat收到任何错误... 显然重定向不起作用

我真的不知道该怎么做。 有人能帮我吗? 感谢

1 个答案:

答案 0 :(得分:0)

将主机上的端口转发添加到LXC容器:

sudo iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j DNAT --to XX.XX.XX.XX:80

要查看列表iptables规则,请使用:

sudo iptables -t nat -L

应该给你这样的输出:

enter image description here

如果您仍然没有看到您的Node.js应用,请尝试使用curl查看它是否确实正确响应。

curl http://10.0.3.31:3000 

也不要忘记保留您的端口转发规则,您可以在我的博客文章中进一步阅读:https://drifts.io/how-to-setup-http-https-ssh-port-forwarding-to-lxc-container/