LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1219|回复: 5

大大 内网开了http 服务 外网怎么才能访问啊?

[复制链接]
发表于 2006-9-4 00:19:48 | 显示全部楼层 |阅读模式
--------------------------------------------------------------------------------

我试过做了端口映射, 从外网还是无法访问到内网的http服务

指定啦http 服务的 port 9090 IP:192.168.1.247

内网IP 192.168.1.247
http port 9090

iptables -t nat -A PREROUTING -p tcp -i eth0 --dport 9090 -j DNAT --to 192.168.1.247:9090  (端口映射)
http://192.168.1.247:9090
可以访问http 服务 (http 服务已开启)
 用公网IP http://219.133.XX.XX:9090
却访问不到.

系统 fedora 1
发表于 2006-9-4 00:56:13 | 显示全部楼层
如果你在内网,用公网IP进行实验的话,肯定是访问不到的。
具体原因,你仔细想一想数据报的发送接收过程就明白了。

配置没有问题。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-9-4 10:45:34 | 显示全部楼层
恩, 我却实在内网用公网IP实验,
  这是我的知识盲点.请明指.谢谢~~.
   是不是指三次握手问题?
回复 支持 反对

使用道具 举报

发表于 2006-9-4 11:46:14 | 显示全部楼层
在路由器上做端口映射
回复 支持 反对

使用道具 举报

发表于 2006-9-4 20:36:44 | 显示全部楼层
Post by xwq_007
恩, 我却实在内网用公网IP实验,
  这是我的知识盲点.请明指.谢谢~~.
   是不是指三次握手问题?

因为你在内网,同时,做NAT的服务器又没有进行SNAT操作。
所以,由192.168.1.247返回给你的数据包会直接发送给你,而没有进行Un-DNAT操作。
所以,你访问的是219.133.XXX.XXX,但是返回的数据包是从192.168.1.247发送的。
明白了么?
返回的数据包被丢弃了。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-9-5 10:01:35 | 显示全部楼层
谢谢, 受教了~~
   我忽悠了iptables  iptables 也忽悠了我.`` 看来还得加把劲~
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表