免费注册 查看新帖 |

Chinaunix

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

DNAT怎样才能做到外网能同时访问内部的不同的网页? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2006-03-07 14:53 |只看该作者 |倒序浏览
各位大侠 我最近做了一个LINUX DNS+NAT来给公司做上网、防火墙、DNS使用,现在把大致的配置说一下。
主机是一台linux服务器,AS3,内核 2.6.9-22.EL。iptables iptables-1.2.11-3.1.RHEL4
公司的网域是*.abc.com 在abc网域下面我们自己架设dns来解析www、ftp、mail、oa等这些等等。下面是abc.com的正向解析文件:

$TTL    86400
@               IN SOA  fw.abc.com.    root.fw.abc.com. (
                                        42              ; serial (d. adams)
                                        3H              ; refresh
                                        15M             ; retry
                                        1W              ; expiry
                                        1D )            ; minimum
@       IN      NS      fw.abc.com.
localhost  IN A 127.0.0.1
ns1          IN A 60.123.211.166
www       IN A 60.123.211.166
www       IN A 192.168.0.10
oa           IN A 60.123.211.166
oa           IN A 192.168.0.11
ftp           IN A 60.123.211.166
ftp           IN A 192.168.0.12

因为公司只有一个公网IP所以是捉襟见肘啊,这个dns在对外做DNS时把www、oa、ftp都解析成了同一个公网ip,但是内部提供www、oa、ftp服务的却是不同的主机来提供的。
为了安全原因以上地址是杜撰的,大家见谅。但是在真是的环境中我都可以正常的解析,比如我在外网c:\>nslookup
>www.abc.com
Server:  UnKnown
Address:  202.96.134.133

Name:    www.abc.com
Addresses:  60.123.211.166,192.168.0.10,

>oa.abc.com
Server:  UnKnown
Address:  202.96.134.133

Name:    oa.abc.com
Addresses:  60.123.211.166,192.168.0.11

>ftp.abc.com
Server:  UnKnown
Address:  202.96.134.133

Name:    ftp.abc.com
Addresses:  60.123.211.166,192.168.0.12

以上是说的是我的dns的大致配置,想说明的是我的dns配置是正常的,在内网上www、oa、ftp都是正常的。
dns服务器同时还是NAT服务器,两块网卡,eth0对那,eth1对外
eth0:192.168.0.10
eth1:  60.123.211.166
内部做了一个snat,大家都能上网 iptables -t nat -A POSTROUTING -o eth1 -s 192.168.0.0/24 -j SNAT --to 202.96.134.133。内部机器的网关和DNS都设置成 202.96.134.133 大家都能正常工作。
外网做了一个DNAT,让在外出差的同事能收发邮件,上公司网站,比如上www iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 80 -j DNAT --to 192.168.0.10这样大家都可以上公司网站了,但是我现在还要提供大家上oa.abc.com,如果还像上面那样写那都会给我解析到www上去,oa和www对外提供服务的端口都是80,如果不是80 就好办了。大家有什么好的建议来实现这个功能。
请大家仔细看帖子,诸如“你用不同的公网IP来解析oa或者www”,“你将www和oa对外提供服务的port设置成不一样”诸如此类的回答就不要写了,如果能这样办就不用这么费劲了,谢谢各位大侠!

论坛徽章:
0
2 [报告]
发表于 2006-03-12 16:41 |只看该作者

唉 对没有大侠理这个问题吗?

不好意思啊  上面的有个地方写错了 内部网的网关和dns都设置成了192.168.0.10 不是202.96.134.133
笔误。
最近出差了没有时间研究这个问题 不过不知道2。6内核最iptables的字符串过滤支持的怎么样 有研究的大侠给讲一讲 我觉得可以通过这个方法来在防火墙那一级做到对内不同服务器的连接转发

论坛徽章:
0
3 [报告]
发表于 2006-03-12 23:39 |只看该作者

没有人知道吗?

没有人知道怎么解决吗?各位大侠!自己的帖子自己顶
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP