QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

楼主: kingofswing

急!ADSL动态域名,从外面能访问内网web,内部lan却不

[复制链接]
发表于 2004-6-23 23:54:22 | 显示全部楼层
在外网正常的情况下加上一条。
iptables -t nat -A POSTROUTING -s 192.168.120.0/24 -d 192.168.120.33 -p tcp -m tcp --dport 80 -j SNAT --to-source 192.168.120.2
回复

使用道具 举报

 楼主| 发表于 2004-6-26 09:03:52 | 显示全部楼层
基本上看懂点意思了。可192.168.120.2是什么地址?我的linux内网卡是 192.168.120.254.
回复

使用道具 举报

发表于 2004-6-26 16:37:26 | 显示全部楼层
网关的地址。那就设置为你那个ip地址。
回复

使用道具 举报

 楼主| 发表于 2004-6-27 19:14:54 | 显示全部楼层
[quote:ee893be280="gugong"]192.168.120.33 是这个 Linux 机器的 IP 地址吗?[/quote]

gugong,你好,你那里我还时不时地去转转,谢谢关注. .33是内网那台NT 4.0的机器(要重装成2000 server),我那朋友linux下apache不会搞,硬要将linux的动态域名指向内网的IIS web server,本来么,只要在linux上装个动态域名+apache + mysql + PHP就够了..


另: 我在crontab里没隔3分钟作了adsl拨号和域名更新,怕adsl断掉,虽然可以按需拨号,但保险一点, 然后域名更新的事也要做在crontab里,以确保域名解析正确,这样做对否? 请指教!
回复

使用道具 举报

 楼主| 发表于 2004-6-27 19:15:22 | 显示全部楼层
[quote:9b8fe082de="pk"]网关的地址。那就设置为你那个ip地址。[/quote]

thanks,这就试.
回复

使用道具 举报

发表于 2004-6-28 02:42:27 | 显示全部楼层
[quote:88f35e39bc="kingofswing"][quote:88f35e39bc="gugong"]192.168.120.33 是这个 Linux 机器的 IP 地址吗?[/quote]

gugong,你好,你那里我还时不时地去转转,谢谢关注. .33是内网那台NT 4.0的机器(要重装成2000 server),我那朋友linux下apache不会搞,硬要将linux的动态域名指向内网的IIS web server,本来么,只要在linux上装个动态域名+apache + mysql + PHP就够了..


另: 我在crontab里没隔3分钟作了adsl拨号和域名更新,怕adsl断掉,虽然可以按需拨号,但保险一点, 然后域名更新的事也要做在crontab里,以确保域名解析正确,这样做对否? 请指教![/quote]


1 举个例子:

[code:1]#         端口转发:
#        ^^^^^^^^^
# 将访问本机的 Web 服务(80 端口)重定向到 192.168.0.9 的 80 端口 :
# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
#[0:0] -A PREROUTING -i ppp0 -p tcp -m tcp --dport 80 -j DNAT --to-destination 192.168.0.9:80
#[0:0] -A PREROUTING -i eth0 -p tcp -m tcp -d 192.168.0.211 --dport 80 -j DNAT --to-destination 192.168.0.9:80
# 下面这句专门针对对于局域网里面的端口转发(在内部没有 DNS 服务器时):
# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
#[0:0] -A POSTROUTING -s 192.168.0.0/24 -d 192.168.0.9 -p tcp -m tcp --dport 80 -j SNAT --to-source 192.168.0.211
# 这里 192.168.0.211 为 Linux 机器的局域网网卡 eth0 的 IP 地址[/code:1]

2 完全可行。
回复

使用道具 举报

 楼主| 发表于 2004-6-29 03:49:37 | 显示全部楼层
[quote:72e3955798="pk"]在外网正常的情况下加上一条。
iptables -t nat -A POSTROUTING -s 192.168.120.0/24 -d 192.168.120.33 -p tcp -m tcp --dport 80 -j SNAT --to-source 192.168.120.2[/quote]

试了一下,不管用.

这里 -d 192.168.120.33 可能我这里不行,因为从 192.168.120.x 访问 abc.3322.org,得到的IP地址是 ppp0的公网地址, 所以从192.168.120.x 访问 ppp0,重定向到 192.168.120.33 (NT IIS web server), 除此之外,上述规则中应该用POSTROUTING还是用PREROUTING?
回复

使用道具 举报

发表于 2004-6-29 10:09:55 | 显示全部楼层
你可以把古公兄的给的那几条规则修改下试试:不要指定入口的界面卡,比如i把-i ppp0,-i eth0去掉。不过,这样好像也有问题。访问外网的www又会转到你台内网的www上来。好像解决的方法,把内网的www的端口改为非标准的端口或像古公的规则那样。这样还是作一台dns好,就不会有此麻烦了。我给的那条规则是POsTROUTING的,对于它和PREROUTIMG的区别,请看man iptables或看相关的资料。
回复

使用道具 举报

发表于 2004-6-29 10:30:59 | 显示全部楼层
[quote:fe13bfe92c="kingofswing"][quote:fe13bfe92c="pk"]在外网正常的情况下加上一条。
iptables -t nat -A POSTROUTING -s 192.168.120.0/24 -d 192.168.120.33 -p tcp -m tcp --dport 80 -j SNAT --to-source 192.168.120.2[/quote]

试了一下,不管用.

这里 -d 192.168.120.33 可能我这里不行,因为从 192.168.120.x 访问 abc.3322.org,得到的IP地址是 ppp0的公网地址, 所以从192.168.120.x 访问 ppp0,重定向到 192.168.120.33 (NT IIS web server)[/quote]



我写的可是三条呀,您老兄只写了一条。

上面的三条,可是我以前实际上使用的哟,不是我猜测了写上去的。
回复

使用道具 举报

 楼主| 发表于 2004-6-29 11:09:07 | 显示全部楼层
[0] 这是啥意思? 另:iptables中文手册有吗? 给我一份,仔细去读读,[email protected]
回复

使用道具 举报

 楼主| 发表于 2004-6-29 11:13:04 | 显示全部楼层
[quote:4c6baeb92f="pk"]你可以把古公兄的给的那几条规则修改下试试:不要指定入口的界面卡,比如i把-i ppp0,-i eth0去掉。不过,这样好像也有问题。访问外网的www又会转到你台内网的www上来。好像解决的方法,把内网的www的端口改为非标准的端口或像古公的规则那样。这样还是作一台dns好,就不会有此麻烦了。我给的那条规则是POsTROUTING的,对于它和PREROUTIMG的区别,请看man iptables或看相关的资料。[/quote]

我昨天也试了一下,去掉 -i ppp0,试着访问http://abc.3322.org,行了,不过高兴得太早,访问 www.sina.com.cn可看到首页, 其他的如 news.sina.com.cn全部跑到 abc.3322.org去了,闹了个笑话。
回复

使用道具 举报

 楼主| 发表于 2004-6-29 11:53:46 | 显示全部楼层
#[0] -A PREROUTING -i ppp0 -p tcp -m tcp --dport 80 -j DNAT --to-destination 192.168.0.9:80

这条语句我的理解是 从ppp0过来的外网机器访问 80 端口将会被目的地址转换到 192.168.0.9:80, 这样从internet访问 abc.3322.org应该没有问题。

#[0] -A PREROUTING -i eth0 -p tcp -m tcp -d 192.168.0.211 --dport 80 -j DNAT --to-destination 192.168.0.9:80
这条语句说的是从eth0(linux内网卡)过来的访问192.168.0.211:80的数据会被重DNAT到 192.168.0.9:80,但我这里内部LAN用户访问abc.3322.org时,外部电信DNS解析出来的是ppp0的公网地址,也即 192.168.0.x (192.168.0.9除外)访问的是ppp0的80端口,而不是 eth0 (linux内网卡)的IP地址。


[0] -A POSTROUTING -s 192.168.0.0/24 -d 192.168.0.9 -p tcp -m tcp --dport 80 -j SNAT --to-source 192.168.0.211

这条语句在实际IP数据包走向中怎么理解, oh My,是有点晕了。
回复

使用道具 举报

发表于 2004-6-29 13:36:02 | 显示全部楼层
[quote:c2470a7f8b="gugong"][quote:c2470a7f8b="kingofswing"][quote:c2470a7f8b="pk"]在外网正常的情况下加上一条。
iptables -t nat -A POSTROUTING -s 192.168.120.0/24 -d 192.168.120.33 -p tcp -m tcp --dport 80 -j SNAT --to-source 192.168.120.2[/quote]

试了一下,不管用.

这里 -d 192.168.120.33 可能我这里不行,因为从 192.168.120.x 访问 abc.3322.org,得到的IP地址是 ppp0的公网地址, 所以从192.168.120.x 访问 ppp0,重定向到 192.168.120.33 (NT IIS web server)[/quote]



我写的可是三条呀,您老兄只写了一条。

上面的三条,可是我以前实际上使用的哟,不是我猜测了写上去的。[/quote]

哈哈,古公兄请你别见笑,我是说他应该在外网正常的情况下加上这么的一条。你写的三条iptables规则是经典的端口映射应用哦。
回复

使用道具 举报

发表于 2004-6-29 13:38:27 | 显示全部楼层
[quote:fa71e22eea="kingofswing"][quote:fa71e22eea="pk"]你可以把古公兄的给的那几条规则修改下试试:不要指定入口的界面卡,比如i把-i ppp0,-i eth0去掉。不过,这样好像也有问题。访问外网的www又会转到你台内网的www上来。好像解决的方法,把内网的www的端口改为非标准的端口或像古公的规则那样。这样还是作一台dns好,就不会有此麻烦了。我给的那条规则是POsTROUTING的,对于它和PREROUTIMG的区别,请看man iptables或看相关的资料。[/quote]

我昨天也试了一下,去掉 -i ppp0,试着访问http://abc.3322.org,行了,不过高兴得太早,访问 www.sina.com.cn可看到首页, 其他的如 news.sina.com.cn全部跑到 abc.3322.org去了,闹了个笑话。[/quote]

我不是跟你说了些情况吗?改用非标准的端口或者做一台dns。
回复

使用道具 举报

发表于 2004-6-29 13:40:22 | 显示全部楼层
[quote:6d45a340db="kingofswing"][0] 这是啥意思? 另:iptables中文手册有吗? 给我一份,仔细去读读,[email protected][/quote]

这应该是RH的写法吧。你对比下应该就会清楚了。我发现顶置的帖子古公兄都是这么写的。
回复

使用道具 举报

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

本版积分规则

GMT+8, 2024-11-8 06:46 , Processed in 0.059020 second(s), 12 queries .

© 2021 Powered by Discuz! X3.5.

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