iptables 重定向请求ip
iptables 是 Linux 操作系统中一个功能强大的防火墙工具,它用于配置网络传输相关规则,以控制进入和离开系统的数据包。iptables 可以执行多种任务,包括过滤基于源/目的 IP 地址、端口号、协议类型(如 TCP、UDP)等条件的数据包,以及实现网络地址转换(NAT)、包内容修改等高级功能。
将请求192.168.0.31的请求重定向至127.0.0.1
一、测试最终IP访问
curl http:/127.0.0.1:8080
二、配置
查看原iptables规则
sudo iptables -L -n
启用 IP 转发功能
echo "1" > /proc/sys/net/ipv4/ip_forward
允许本地路由
sysctl -w net.ipv4.conf.all.route_localnet=1
tcp流量重定向
iptables -t nat -A OUTPUT -p tcp -d 192.168.0.31 --dport 8080 -j DNAT --to-destination 127.0.0.1
可选参数 –dport 8080
返回流量重定向
iptables -t nat -A INPUT -p tcp --sport 8080 -j SNAT --to-source 192.168.0.31
可选参数 –sport 8080
三、测试重定向ip访问
curl http://192.168.0.31:8080
四、持久化
- 保存规则
sudo iptables-save > /root/.iptables.rules
- 恢复规则
sudo iptables-restore < /root/.iptables.rules
- 机器启动时自动恢复
echo "iptables-restore < /root/.iptables.rules" >> /etc/rc.local
当前方法可能会对docker内部网络通信产生影响,进而导致容器产生异常,手动重启容器,故需要观察使用是否会产生影响
发布时间: 2024-06-26 15:04:33
更新时间: 2024-09-12 16:47:40
本文链接: https://wyatt.ink/posts/Code/446774027.html
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!