我用了(iptables/ipchains)客户机帝国时代(罗马)玩不了了

我用了(iptables/ipchains)客户机帝国时代(罗马)玩不了了

我用了(iptables/ipchains)客户机帝国时代(罗马)玩不了了
我都晕了,我是做网吧的(帝国时代可以用互联网玩的)
当然是tcp/ip了,
用win98自带的网关可以,sysgat也可以
win2000s自带的网关可以,静态路由也可以
就是linux 搜索不到游戏,其他一切正常 (QQ,上网,下载,网络游戏)

modprobe ip_tables
modprobe iptable_nat
modprobe ip_conntrack
modprobe ip_nat_ftp
modprobe ip_conntrack_ftp

iptables -F INPUT
iptables -F OUTPUT
iptables -F FORWARD
iptables -F POSTROUTING -t nat
iptables -F PREROUTING -t nat
iptables -P FORWARD DROP

iptables -A FORWARD -s 192.168.0.0/24 -j ACCEPT
iptables -A FORWARD -i eth0 -s 192.168.0.0/24 -j MASQ
iptables -A FORWARD -i eth0 -m state --state ESTABLISHED,RELATED -j ACCEPT

附帝国时代(罗马复兴)互联网玩法

1。先安装 帝国时代(罗马复兴)
2。可以用(tcp/ip)建立游戏并可以玩
3。去聊天室( http://game.yinsha.com/ <<帝国时代>>玩家 )公布自己的ip (如果你已经建立了游戏)
或 copy 别人的ip (如果你想加入别人的游戏)
3。如果有人加入,或者可以加入别人的游戏就可以了
4。一般代理(网关,地址转换)后的客户机只能加入别人的游戏(copy 别人的 ip )
5。win98,win200 (网关,地址转换)后可以找到别人建立的游戏,linux 就不可以
      
iptables -A FORWARD -i eth0 -s 192.168.0.0/24 -j MASQ
这句有点问题,是做地址伪装?
正确的应该是:
iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o eth0 -j MASQUERADE      
iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o eth0 -j MASQUERADE

怎么解析      
不好意思,“帝国”我不会玩,
而且也没有这样的环境让我实验。
iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o eth0 -j MASQUERADE
这句指出外网口的所有内网IP伪装,
即伪装成外网口地址。

你可以先把端口改大一点,
如:让进入的所有包允许,
iptables -A FORWARD -i eth0 -j ACCEPT
然后试试游戏或其他功能,
OK了,
再把端口慢慢改小,以达到你的安全需要。      
朋友,我用了,还是不行啊

#!/bin/sh
#edit by waterbird, 2002.4.4
echo "starting the firewall..."

export PATH=$PATH:/sbin:/usr/sbin

##Enable the ip_forward
echo "1" > /proc/sys/net/ipv4/ip_forward

modprobe ip_tables
modprobe iptable_nat
modprobe ip_conntrack
modprobe ip_nat_ftp
modprobe ip_conntrack_ftp

iptables -F INPUT
iptables -F OUTPUT
iptables -F FORWARD
iptables -F POSTROUTING -t nat
iptables -F PREROUTING -t nat
iptables -P FORWARD DROP

iptables -t nat -F
iptables -A FORWARD -i eth1 -j ACCEPT
iptables -A FORWARD -s 192.168.0.0/16 -j ACCEPT
#iptables -A FORWARD -i eth0 -s 192.168.0.0/24 -j MASQ
iptables -t nat -A POSTROUTING -s 192.168.0.0/16 -o eth1 -j MASQUERADE
iptables -A FORWARD -i eth1 -m state --state ESTABLISHED,RELATED -j ACCEPT

echo "firewall started! :-D"      
你教过的,在其他斑快发表的
#!/bin/sh
#edit by waterbird, 2002.4.4
echo "starting the firewall..."
##Ismod the firewall modules
modprobe ip_tables
##Enable the ip_forward
echo "1" > /proc/sys/net/ipv4/ip_forward
##clear the chains
iptables -F
iptables -X
iptables -F -t nat
##Define the policy
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT ACCEPT
##Define the IP and Interface
LAN_IP="192.168.0.1"
LAN_IFACE="eth0"
ADSL_IFACE="eth1"
IPTABLES="/sbin/iptables"
#########################POSTROUTING chain
#MASQUERADE
$IPTABLES -t nat -A POSTROUTING -s 192.168.0.0/16 -o eth1 -j MASQUERADE
##########################FORWARD rules
#accept LAN IP go out
$IPTABLES -A FORWARD -i $LAN_IFACE -s 192.168.0.0/16 -j ACCEPT
#accept come back packets from INTERNET
$IPTABLES -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
###########################INPUT chain
#for come back from this adsl-server packets
$IPTABLES -A INPUT -i $ADSL_IFACE -m state --state ESTABLISHED,RELATED -j ACCEPT
echo "firewall started! :-D"      
不好意思,兄弟,
我犯了个低级错误。
ADSL外网口应该是ppp0,
所以正确的是:(修改的地方用*表示)

#!/bin/sh
#edit by waterbird, 2002.4.4
echo "starting the firewall..."

##Ismod the firewall modules
modprobe ip_tables
modprobe ip_conntrack
modprobe ip_nat_ftp
modprobe ip_conntrack_ftp


##Enable the ip_forward
echo "1" > /proc/sys/net/ipv4/ip_forward

##clear the chains
iptables -F
iptables -X
iptables -F -t nat

##Define the policy
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT ACCEPT

##Define the IP and Interface
LAN_IP="192.168.0.1"
LAN_IFACE="eth1"    ***如果你也用eth1做内网口的话
ADSL_IFACE="ppp0"   ***ADSL肯定是ppp0做外网口
IPTABLES="/sbin/iptables"

#########################POSTROUTING chain
#MASQUERADE
$IPTABLES -t nat -A POSTROUTING -s 192.168.0.0/16 -o $ADSL_IFACE -j MASQUERADE    **********************************

##########################FORWARD rules
#accept LAN IP go out
$IPTABLES -A FORWARD -i $LAN_IFACE -s 192.168.0.0/16 -j ACCEPT
#accept come back packets from INTERNET
$IPTABLES -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT

###########################INPUT chain
#for come back from this adsl-server packets
$IPTABLES -A INPUT -i $ADSL_IFACE -m state --state ESTABLISHED,RELATED -j ACCEPT

echo "firewall started! :-D"

这个规则可以保证大部分的服务,但是游戏我不敢说。
还是按照我前面说的作测试吧。
再次表示我的歉意!      
抱歉,这都是我的错,
LAN_IFACE="eth1" ***如果你也用eth1做内网口的话
ADSL_IFACE="ppp0" ***ADSL肯定是ppp0做外网口
是我改成
LAN_IFACE="eth0"
ADSL_IFACE="eth1"

跟我的配置有关(我的是固定ip的,不需要ppp0)
这个规则可以保证大部分的服务,但是游戏还是玩不了