免费注册 查看新帖 |

Chinaunix

广告
  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 3325 | 回复: 17
打印 上一主题 下一主题

linux nat 和web server同在一个ROUTER下,访问WEB SERVER的问题,求高人 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2006-09-13 17:25 |只看该作者 |正序浏览
如图的一个网络结构,WEB SERVER和我的LINUX SERVER都挂在同一个路由器下,且路由器上只有一个公网IP,web server为192.168.150.8  linux server 为172.168.0.1 linux server主要是充当网关功能,下面的机器全部通过我的Linux server再通过路由器访问外网。WEB SERVER则通过路由器分配的地址直接到外面,路由器上做了映射,可以转到192.168.150.8的80上。
  现在主要问题是,我LINUX NAT下的PC 无法在浏览器上访问这个路由器下的web server(直接用www.xxx.com),WEB SERVER做好了域名解析了,解析到路由器的公网IP。但我在PC上ping www.xxx.com能通,nslookup 也行。

不知道怎么回事,我怀疑是不是WEB SERVER和我的LINUX NAT 是同一个公网出口,PC的数据包能出去,但回不来了,不知道回哪去了???

求高人帮忙!!

结构图.jpg (37.08 KB, 下载次数: 78)

结构图

结构图

论坛徽章:
0
18 [报告]
发表于 2006-09-28 10:11 |只看该作者
抓些包看看吧,,,,,首先要知道问题出在什么地方,,,,

论坛徽章:
0
17 [报告]
发表于 2006-09-15 18:04 |只看该作者
不好意思,前两天出差了!环境在用户那边,找个时间我会继续测试!并告知结果。
dnat ,snat我都加了的。
再次谢谢大家!

论坛徽章:
0
16 [报告]
发表于 2006-09-15 09:49 |只看该作者
怎么已经解决了么?????


解决要记得总结,以便后人查阅!!

论坛徽章:
0
15 [报告]
发表于 2006-09-14 10:57 |只看该作者
你可以把你的iptables的配置脚本贴上来,

我看看,然后帮你添加你想要的,你对比一下看看好么???

论坛徽章:
0
14 [报告]
发表于 2006-09-14 09:39 |只看该作者
原帖由 skylove 于 2006-9-14 00:20 发表


从道理上来说,是dnat和snat 需要同时做,我之前说做2条,是为了帮助这位朋友整理思路。 由于snat可以将内部访问/外部访问的时候一起做,所以自然可以只增加一条。 但是要明确的原理依然是 snat和dnat都要做, ...



道理上是需要两条,数据来回必须指定

论坛徽章:
0
13 [报告]
发表于 2006-09-14 09:08 |只看该作者
我认为可以这样解决
就是以前linux数据包回流过程
第一,不知道你的linux nat  能不能直接访问192.168.150.8  如不能加条静态路由  使其能互访问
第二,查web的外问地址(就是dns解析的地址,假设为a.b.c.d),在 linux nat 上做条DNAT 把访问a.b.c.d 都转到192.168.150.8上

论坛徽章:
0
12 [报告]
发表于 2006-09-14 00:20 |只看该作者
原帖由 河里的鱼 于 2006-9-13 21:53 发表



好像在ROUTE上加一条就可以了吧

从LINUX NAT过来的包,访问WWW的80的,直接将目地的地址切到WWW上不就可以了吗?

同进考虑一下回来的,源地址是LINUX NAT的地址,WWW上走到ROUTE,然后ROUTE有对应的tables就 ...


从道理上来说,是dnat和snat 需要同时做,我之前说做2条,是为了帮助这位朋友整理思路。 由于snat可以将内部访问/外部访问的时候一起做,所以自然可以只增加一条。 但是要明确的原理依然是 snat和dnat都要做,lz之所以不通,就是由于snat的缘故

论坛徽章:
0
11 [报告]
发表于 2006-09-13 21:53 |只看该作者
原帖由 skylove 于 2006-9-13 18:58 发表
加2条

当源地址为内网,对网关机外网ip ,dport 为80访问的请求时,DNAT 方式自动转到 内网ip那台机器的80口;(这条可能不一定必须要做,因为和前面的 外部访问内部这web重复)
当源地址为内网,对网关机外网 ...



好像在ROUTE上加一条就可以了吧

从LINUX NAT过来的包,访问WWW的80的,直接将目地的地址切到WWW上不就可以了吗?

同进考虑一下回来的,源地址是LINUX NAT的地址,WWW上走到ROUTE,然后ROUTE有对应的tables就可以了

论坛徽章:
0
10 [报告]
发表于 2006-09-13 20:58 |只看该作者
对web服务器所有的80端口的数据都作snat
应该就可以了吧?
  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP