美文网首页
iptables端口转发

iptables端口转发

作者: Sartner | 来源:发表于2019-02-25 18:27 被阅读0次

转发出向请求

把本机(A)访问服务器(B)的流量转到服务器(C)上

修改前:A ==== 请求 ====> B
修改后:A ==== 请求到B,iptables重定向 ====> C

default_target=10.18.13.127
new_target=10.1.100.145

# 将本地发送到${default_target}的请求重定向到到${new_target}上
iptables -t nat -A OUTPUT -d ${default_target} -j DNAT --to ${new_target}

# 只转发指定协议(tcp)
iptables -t nat -A OUTPUT -p tcp -d ${default_target} -j DNAT --to ${new_target}

# 只转发指定端口
iptables -t nat -A OUTPUT -p tcp -d ${default_target} --dport 6666 -j DNAT --to-destination ${new_target}:6666

转发入向请求

把其他服务器(B)访问本机(A)的请求转发到其它服务器(C)上

修改前:B ==== 请求 ====> A
修改后:B ==== 请求 ====> A ==== 转发 ====> C

# 把访问本机6333端口的请求转发到10.1.100.45:80上
local_port=6333
target_ip=10.1.100.45
target_port=80
iptables -t nat -A PREROUTING -p tcp --dport ${local_port} -j DNAT --to-destination ${target_ip}:${target_port}
iptables -t nat -A POSTROUTING -d ${target_ip} -p tcp --dport ${target_port} -j MASQUERADE

备注

使用 -i / -s / -d 精准指定网卡、来源IP、目标IP

# 来源网口 bond0
# 来源网段 192.168.0.1/24
# 来源指向的IP(本机IP,适配本机有多个IP的情况下只转发某个IP的,比如只转发外网IP)
iptables -t nat -A PREROUTING -i bond0 -s 192.168.0.1/24 -d 10.10.0.10 -p tcp --dport 80  -j DNAT --to 192.168.0.1:80

注意事项

iptables -t nat 相关操作会导致系统开启 nf_conntrack 模块,默认情况下该模块配置的映射表大小比较小,如果服务器请求压力很大会导致跟踪表写满,从而访问不了端口的情况

# 增大跟踪表大小
sysctl -w net.netfilter.nf_conntrack_max=2621440
echo 655360 > /sys/module/nf_conntrack/parameters/hashsize

相关文章

  • iptables的端口映射

    iptables的端口范围映射 iptables设置端口转发规则原理 Linux - iptables做UDP数据...

  • iptables

    允许端口转发 保存 iptables

  • [iptables] 端口转发

    iptables 端口转发配置规则 请求在防火墙中的路由过程 配置外网访问端口转发iptables -t nat ...

  • 内网端口的转发

    端口的转发 一:linux系统下: 1、本地端口转发本地端口 iptables -t nat -A PREROUT...

  • iptables端口转发

    转发出向请求 把本机(A)访问服务器(B)的流量转到服务器(C)上 修改前:A ==== 请求 ====> B修改...

  • linux下iptables端口转发设置

    linux下利用iptables规则配置端口转发 1、需求 将所有80端口的访问流量转发到本机8080端口。 2、...

  • linux 端口转发:iptables

    端口转发 iptables 是一个配置 Linux 内核 防火墙 的命令行工具,是 netfilter 项目的一部...

  • Linux端口转发(iptables)

    当服务器迁移,因为DNS未同步或某些人使用ip访问,一些流量还是会流向老的服务器。 使用iptables及其伪装特...

  • iptables实现端口转发

    Linux下iptables不仅可以用来做防火墙还可以用来做端口转发 示例: 将本机的8080端口转发至其他主机,...

  • socat 端口转发工具,脚本一键安装配置

    一、概述目前常用的端口转发工具有rinetd、Haproxy、iptables、Socat前面2种只能转发TCP,...

网友评论

      本文标题:iptables端口转发

      本文链接:https://www.haomeiwen.com/subject/fhzgyqtx.html