使用 iptables 将 IP 重定向
简介
有时我们想让一个域名指向另一个 IP 时,我们会直接修改 /etc/hosts,来实现我们的目地。那如果是访问一个 IP,需要这个 IP 指向另一个 IP 呢?是的,iptables 可以实现这层转发。
应用场景
- 场景一 : 家中有一台服务器内网 IP
192.168.0.111, 公网 IP123.123.123.123,你可以通过 IP123.123.123.123在任何地方你都可以访问到你的服务器,在家的时候你可以通过内网来访问你的服务器,当然如果你在你家的电脑把123.123.123.123指向192.168.0.111那么你依然可以用外网来访问,但是其实走的是内网流量,速度会快很多。 - 场景二 : 此场景源于最近装的 k8s 集群,由于 3 台机子不在一个内网中,所以需要用外网来建立集群。其中有参数可以配置用公网来启动集群,但是无论是阿里还是腾讯,都没有把公网绑在机子的网卡上,所以我一直启动失败。当绑定在内网上却可以启动成功,那我只能想到这个折中的方法了,因为他们内网是不通的,所以通过内网 IP 是不能访问的,可是用内网启动一定要用内网连接,那我把内网 IP 重定向到外网 IP 上不就可以了?事实证明真的成功组成了集群。当然如果有更好的解决方案也欢迎告知我。
- 更多使用场景请自行发掘
把外网 IP 123.123.123.123 转向内网 IP 192.168.0.111
iptables -t nat -A OUTPUT -d 123.123.123.123 -j DNAT --to-destination 192.168.0.111
把内网 IP 192.168.0.111 转向外网 IP 123.123.123.123
iptables -t nat -A OUTPUT -d 192.168.0.111 -j DNAT --to-destination 123.123.123.123
本文介绍了如何利用iptables实现IP重定向,以达到在外网访问内网服务器或在不同内网环境中组建集群的目的。通过设置iptables的DNAT规则,可以将特定IP的请求转向另一个IP,从而优化网络流量和提升访问速度。
5433

被折叠的 条评论
为什么被折叠?



