首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >不隐藏源IP的IPTables转发通信量

不隐藏源IP的IPTables转发通信量
EN

Stack Overflow用户
提问于 2014-03-29 18:49:35
回答 2查看 2.2K关注 0票数 0

我正在尝试设置一个云服务器作为网关,它将所有流量转发给我的第二个云服务器。问题是目标服务器(第二云)只看到第一个云服务器的IP地址。

是否可以保留源IP,以便显示连接到第一个云服务器的IP地址。我尝试过移除伪装,但是云#1 ->云#2之间的连接不再正常工作了。

-A转发-p tcp -m tcp -dport 25565 -j接受 -A转发-m状态-状态相关,建立-j接受 -A PREROUTING -p tcp -m tcp --dport 25565 -j DNAT -to--目的地址:端口 -A POSTROUTING -j伪装

它适用于此设置,但不显示源IP。您知道如何不隐藏连接到第一个云服务器的IP吗?

谢谢

EN

回答 2

Stack Overflow用户

发布于 2014-03-31 19:35:13

使用-A POSTROUTING -j伪装,所有传出转发的数据包都将具有相应的传出接口的源IP。

您应该对伪装/SNAT的数据包更加具体。

票数 0
EN

Stack Overflow用户

发布于 2020-06-07 23:42:04

云1和2必须在同一个网络中,VPN就可以了。

在cloud1上:

代码语言:javascript
复制
-A FORWARD -p tcp -m tcp --dport 25565 -j ACCEPT
-A FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT
-A PREROUTING -p tcp -m tcp --dport 25565 -j DNAT --to-destination DESTINATIONIP:PORT
-A POSTROUTING -j MASQUERADE

在cloud2上,我们用1标记所需的数据包,eth0是默认网关:

代码语言:javascript
复制
iptables -t mangle -A OUTPUT -o eth0 -p tcp --sport 25565 -j MARK --set-mark 1

您需要对cloud2上的路由表进行操作:编辑/etc/ table 2/rt_table,添加行

代码语言:javascript
复制
1 http

在这里,tun0是cloud2上的虚拟专用网接口:

代码语言:javascript
复制
ip route add default via ip_vpn_cloud1 dev tun0 table http
ip rule add from all fwmark 1 table http

确保net.ipv4.conf.all.rp_filter和net.ipv4.conf.default.rp_filter设置为1 in /etc/sysctl.conf

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22735356

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档