
[英]How can i configure iptables policies with docker to block externals ip
[英]Can I obtain real user ip with “iptables”: false enabled?
我在docker daemon配置中使用了"iptables": false
选项:
/etc/docker/daemon.json:
{
"iptables": false
}
我使用--publish mode=host
, --mode=global
--publish mode=host
--mode=global
选项运行服务,类似于这种方法 。
但是,当我在应用程序中获取X-Real-IP
标头时,其值为172.18.0.1
而不是实际用户ip。
当我启动不带"iptables": false
Docker守护程序时"iptables": false
/etc/docker/daemon.json
"iptables": false
一切正常,我得到了真实的用户ip。
但是我需要设置"iptables": false
以保留Docker中的iptables更改。
是否可以使用"iptables": false
获取真实的用户ip "iptables": false
在Docker守护程序配置中为"iptables": false
?
请查看Docker创建的不带"iptables": true
的规则,并使用"iptables": false
(默认)复制它们。
伪装IP尤其需要以下规则:
iptables -t nat -A POSTROUTING -m addrtype --src-type LOCAL -o docker0 -j MASQUERADE
iptables -t nat -s 172.18.0.0/16 ! -o docker0 -j MASQUERADE
问题未解决?试试以下方法:
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.