Discuz!官方免费开源建站系统

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

痛苦!HELP ME !端口映射后,外网访问不了

[复制链接]
kerci 发表于 2005-12-22 22:52:55 | 显示全部楼层 |阅读模式
如下IPTABLES 文件:

iptables -t nat -A PREROUTING -d 202.198.0.25 -p tcp --dport 80 -j DNAT --to 192.168.0.2:80
iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -d 192.168.0.2 -p tcp -m tcp --dport 80 -j SNAT --to-source 192.168.0.1


iptables -A FORWARD -o eth0 -d 192.168.1.10 -p tcp --dport 80 -j ACCEPT
iptables -A FORWARD -i eth0 -s 192.168.1.10 -p tcp -m --state ESTABLISHED -j ACCEPT
内网可以访问,外网怎么都不行,和代理上网的东东SPUID 有关呀,
怎么样才可以是外网访问呀,我想映射1433端口也一样吗,救救我呀
cqfanli 发表于 2005-12-23 10:12:32 | 显示全部楼层
內網訪問用NAT﹐但是外網訪問進來用的是MAP了
NAT 地址轉譯
MAP 端口映射

不過我沒有在LINUX里面做NAT﹐我測試一下先
回复

使用道具 举报

Nanu 发表于 2005-12-23 12:52:00 | 显示全部楼层
给你一个简单的DNAT范例,效果:访问HTTP服务自动映射到内网10.0.0.2服务器上。
(我假设你连接外网的网卡是eth1,连接内网的网卡是eth0)

/sbin/iptables -F -t filter
/sbin/iptables -F -t nat
/sbin/iptables -P INPUT DROP
/sbin/iptables -P OUTPUT ACCEPT
/sbin/iptables -P FORWARD ACCEPT
/sbin/iptables -t nat -P PREROUTING ACCEPT
/sbin/iptables -t nat -P POSTROUTING ACCEPT
/sbin/iptables -t nat -P OUTPUT ACCEPT

/sbin/iptables -A INPUT -i lo -j ACCEPT
/sbin/iptables -A INPUT -i eth0 ACCEPT

/sbin/iptables -t nat -A PREROUTING -p tcp --dport 80 -j DNAT --to 10.0.0.2

另外注意一下/etc/sysctl.conf里的ipv4_forward是不是为1

[ 本帖最后由 Nanu 于 2005-12-23 12:55 编辑 ]
回复

使用道具 举报

adminroot 发表于 2006-2-10 11:08:14 | 显示全部楼层
使用 echo 1 > /proc/sys/net/ipv4/ip_forwad命令 这表示通知linux内核启动IP转发,只有启动IP转发才能使用NAT
回复

使用道具 举报

lihome 发表于 2006-2-10 15:56:15 | 显示全部楼层

求助 这个规则如何映射对外的端口

#/bin/sh
/sbin/modprobe ip_tables
/sbin/modprobe ip_nat_ftp
/sbin/modprobe ip_conntrack_ftp
/sbin/iptables -F
/sbin/iptables -F -t nat
/sbin/iptables -X
/sbin/iptables -Z
/sbin/iptables -P INPUT ACCEPT
/sbin/iptables -P FORWARD ACCEPT
/sbin/iptables -P OUTPUT ACCEPT

/sbin/iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE

/sbin/iptables -A FORWARD -s 0/0 -j ACCEPT
/sbin/iptables -A FORWARD -d 0/0 -j ACCEPT
echo "1" > /proc/sys/net/ipv4/ip_forward

其中eth1是连接外网的网卡
然后在修改/etc/sysctl.conf文件把里面的net.ipv4.ipforward = 0改成
net.ipv4.ipforward = 1保存退出
其次在修改/etc/rc.local文件,在里面加上一句/etc/rc.d/ip.fw保存退出就OK了
回复

使用道具 举报

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

本版积分规则

手机版|小黑屋|Discuz! 官方站 ( 皖ICP备16010102号 )star

GMT+8, 2024-12-25 21:46 , Processed in 0.026086 second(s), 6 queries , Gzip On, Redis On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

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