Linux端口转发(iptables)

Linux端口转发(iptables),第1张

当服务器迁移,因为DNS未同步或某些人使用ip访问,一些流量还是会流向老的服务器。 使用iptables及其伪装特性,将所有流量转发到老的服务器。 点击看iptables的介绍 。 本文假设没有运行的iptables,至少没有针对prerouting链和postrouting链的NAT表的转发规则。1) 首先开启端口转发 # echo "1" >/proc/sys/net/ipv4/ip_forward 或sysctl net.ipv4.ip_forward=12) 增加端口转发 将端口1111上的流量转发到主机2.2.2.2 上的端口1111。# iptables -t nat -A PREROUTING -p tcp        --dport 1111 -j DNAT --to-destination  2.2.2.2:1111然后告诉IPtables伪装起来(masquerade)# iptables -t nat -A POSTROUTING -j  MASQUERADE仅仅重定向一个固定网络甚至是一台主机的流量 # iptables -t nat -A PREROUTING -s  192.168.1.1 -p tcp --dport 1111 -j DNAT        --to-destination 2.2.2.2:1111仅仅重定向一个网段的流量# iptables -t nat -A PREROUTING -s  192.168.1.0/24 -p tcp --dport 1111 -j DNAT  --to-destination 2.2.2.2:1111 这就可以进行Linux端口转发流量了。 查看转发规则 sudo iptables -t nat -nL 1) docker bridge模式2) 安全方面,同主机上端口指定网卡ip上的流量转发 3) 端口转发到另外的服务器,见上边案例 4) snat场景 5) dnat场景,内网访问外网https://www.debuntu.org/how-to-redirecting-network-traffic-to-a-new-ip-using-iptables/

在Linux下进行本地端口转发处理,可以进行如下 *** 作:

1.确认NetFilter相关驱动编译到内核,并且CONFIG_IP_NF_TARGET_REDIRECT=y;

2.开启转发功能:echo '1' >/proc/sys/net/ipv4/ip_forward;

3.设置转发规则:iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-ports 8000。

此述命令执行完成后,其他机器访问该机器的80端口服务均会转向为8000端口的服务。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/8671498.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-19
下一篇 2023-04-19

发表评论

登录后才能评论

评论列表(0条)

保存