您的位置:首页 > 运维架构 > 反向代理

iptables 实现简单的四层反向代理服务器

2016-11-10 00:00 344 查看
摘要: 目的地址转换 DNAT:
替换来自远端主机的数据包报文的目的地址。
典型应用场景是服务器的反向代理,做互联网到局域网的地址映射。

四层代理,即工作在 OSI 模型的第四层,通过分析 IP 和端口来分发到上游服务器。

首先查看 iptables 实现简单的网关服务器,遵循同样的方法打开 IP 转发功能。

假设本机外网地址 100.100.100.100,外网段 0.0.0.0/32,内网地址 192.168.1.1,内网段 192.168.1.0/24。

使外网访问 100.100.100.100:80 时,代理到内网主机 192.168.1.100:8080:

$ iptables -t nat -A PREROUTING -4 -p tcp -d 100.100.100.100 --dport 80 -j DNAT --to-destination 192.168.1.100:8080
.181
$ iptables -t nat -A POSTROUTING -4 -p tcp -d 192.168.1.100 --dport 8080 -j MASQUERADE
$ iptables -t filter -A FORWARD -s 192.168.1.100 -j ACCEPT
$ iptables -t filter -A FORWARD -d 192.168.1.100 -j ACCEPT

对数据包改变路由目标(使其转发)并伪装成本机发送,所以如果想获取源 IP 则需要额外处理。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  iptables NAT