免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1478 | 回复: 3
打印 上一主题 下一主题

[网络管理] iptables DNAT 的问题 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2006-11-01 16:43 |只看该作者 |倒序浏览
eth0 - 公网
eth1 - 局域网/10.10.0.0  

(局域网里的另外一台机器: 10.10.1.2  上 80 端口有 HTTP 服务)

我希望从公网(eth0)进来的 HTTP 请求通过 DNAT 转到 10.10.1.2 上。 运行下面的规则后实现不了,总是不能访问。麻烦看一下哪里有问题,多谢!

#!/bin/bash

        echo 1 > /proc/sys/net/ipv4/ip_forward

        iptables -F -t nat
        iptables -F -t filter
        iptables -F INPUT
        iptables -F OUTPUT
        iptables -F FORWARD

        iptables -t nat -P PREROUTING ACCEPT
        iptables -t nat -P POSTROUTING ACCEPT
        iptables -P INPUT ACCEPT
        iptables -P OUTPUT ACCEPT
        iptables -P FORWARD ACCEPT

        iptables -A INPUT -j ACCEPT
        iptables -A OUTPUT -j ACCEPT
        iptables -A FORWARD -j ACCEPT

        iptables -A PREROUTING -t nat -i eth0 -p tcp --dport 80 -j DNAT --to 10.10.1.2

论坛徽章:
0
2 [报告]
发表于 2006-11-01 16:45 |只看该作者
少一个SNAT,再加一个SNAT

论坛徽章:
0
3 [报告]
发表于 2006-11-01 17:13 |只看该作者
原帖由 河里的鱼 于 2006-11-1 16:45 发表
少一个SNAT,再加一个SNAT


多谢! 按你提示加了下面一行可以了!

#10.10.1.1 是 eth1 IP
iptables -A POSTROUTING -t nat -o eth1 -p tcp --dport 80 -j SNAT --to-source 10.10.1.1

论坛徽章:
0
4 [报告]
发表于 2006-11-01 17:26 |只看该作者
原帖由 河里的鱼 于 2006-11-1 16:45 发表
少一个SNAT,再加一个SNAT



我明白了,这种情况下源地址和目的地址都要转换数据包才能知道正确的路径。NAT 方式访问公网只需要做 一个 SNAT 是因为目的地址是确定的。还是基础不扎实,否则自己应该可以想出来的。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP