|
2005.10.2更新范例:
首先了解下
UDP Timeout UDP失效时限,一般为300秒。在300秒内(5分钟),没有数据发送,这个UDP连接将终止。
NAPT Port Start NAPT转换起始端口号,一般为50000
NAPT Port End NAPT转换终止端口号,一般为52047
以Viking的ADSL为例子:
Viking的ADSL经过NAPT后,所有的端口都变化了。它将随机在50000~52047之间选择一个端口作为外网端口。
这里192.168.1.202是CS服务器的内网IP,220.110.122.142是ADSL的外网IP。
运行HLDS或则SRCDS,在console窗口出现:
Adding master server 207.173.177.11:27010
Adding master server 69.28.151.178:27010
这时通过ADSL的NAPT转换,变成了220.110.122.142:50109和220.110.122.142:50110。
[attid]8473[/attid][attid]8474[/attid]
Master服务器接收到2个数据包。并在数据库中登记了220.110.122.142的两个50109和50110端口。
随后,一些Steam客户端将通过220.110.122.142:50109和50110来访问你的CS服务器。
如果你在NAT设置的是这样的规则。
[attid]8475[/attid]
很抱歉,你的服务器根本刷不出来。因为大家访问的是50109和50110端口。
如果是这样的设置。
[attid]8476[/attid]
你的服务器可以刷出来,但是却刷出2个同样的服务器。因为大家同时访问到50109和50110端口。
如前面说的一个UDP连接的有效时间是300秒。如果你在5分钟内,重新启动了CS服务器,ADSL的NAPT又处理为50321和50322。
那么,将在Steam列表中看到4个CS服务器。因为UDP规则保留了50109和50110转换给27015。
当多次启动服务器后,大家就会看到某个服务器在列表中出现了多个相同的内容。
非Viking的ADSL猫,他们的NAPT转换遵循一定的原则,他们如实地把27015转为外网的27015。
因此这类ADSL很容易实现Steam刷新。并且不会出现类似Viking的多个服务器重复。
--------------------------------------------------------------------------------------
大家自己的服务器在Steam上刷不出时,总不知道问题出在那里。其实检查的方法很简单。
1、低版本2834是刷不到高版本的3213。
2、在console窗口中,务必使用setmaster查看Master服务器的IP。
3、通过"路由和远程访问"的“端口映射”就可以查看到27010的访问。
例如:
附图就可以看到本地的27017与远程的Master服务器27010建立了联系。
那么你的CS服务器必然在Steam列表。
当没有这些端口连接时,你的服务器就刷不出了。就必须查找并看看路由是否正常。
大家要注意的是,我给的图示是双网卡的服务器。设置正确的网关很重要。
例如,
本地连接 10.10.0.48 网关 10.10.0.1
本地连接2 192.168.0.48 网关 192.168.0.1
从图中,大家应该发现 10.10.0.48 从 192.168.0.48访问Matser服务器。这样的访问存在一个问题。一定时间后Master服务器就会拒绝10.10.0.48的访问。CS服务器就从Steam列表上消失了。
因为Master服务器如果发现访问的数据不是从指定的2701x访问的,它会认为有人企图通过某个代理来攻击服务器,而拒绝并断开访问。
当服务器刷不出来时,用"路由和远程访问"查看下端口映射,就会发现,原来建立的27010的连接已经中止了。
只有保证专用地址和公用地址都为10.10.0.48访问27010才能让Master服务器接受正常的信息。
服务器运行时都在试图和Master服务器建立连接,因此如果采用了防火墙,多次访问后可能会被防火墙禁止。值得注意是,这些都是主动出站访问。
如果还解决不了,那一定是你使用的ADSL猫或则路由器的问题。
[attid]7797[/attid] |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?注个册吧
×
|