版本亲测 | 新手教程 | 问题留言 | 站内搜索
本类栏目导航:| 站长亲笔 | 传奇脚本 | 传奇技术 | 网络动态 |
您现在的位置:传奇资源网 > 技术文章区 > 网络动态 >
架设龙族SF的详细方法和一些注意

文章作者:传奇爱好者 文章来源:www.8sf.org 文章点击: 次 更新时间:2009年12月21日

传奇资源网是专业的传奇服务端传奇登录器等相关的资源下载站,本来站上的内容都是以传奇SF为主,其他的为辅,但今天有人问到了如何架设龙族SF,我去网上搜索和整理了一下,希望能够帮助你们!


本身在研究的过程早就记录在大脑中所以,这个记录将对大家研究服务器有所帮助.
今天拿到了龙族所谓的服务器端。讲讲。
首先这个服务器端肯定是少文件的。就目前已经有的文件整理下:

1、dragon server部分
1.1 AgentServer.exe
1.2 DBDemon程序


从AgentServer.exe发送到PROXY的握手数据(ASCII编码)

CODE

3
0
1
89
27
1
0
10
5
0
3
4
0
0
0

 

待续

DBDemon运行后动作:
1、通过ODBC加载數據庫中的世界數據到內存。
2、連接至Billing服務器
3,試圖連接到配置文件中指定的PROXY SERVER,,即HOST:3001。
由于PROXY SERVER至今仍然不存在,因此也无从谈起下一步。。。

AGENT SERVER:
1、连接PROXY SERVER。。。。。。。

Billing SERVER
該服務器由DRDBSERVER.BAT文件啓動,
启动后分別在服務器的5個端口(5678,7856,3412,1234,8765)进行监听。

国外一般认为,proxy server是SQLSERVER自带的一个代理服务。并且认为这样就可以了。
这个观点似乎有问题。
1、如果把SQLSERVER的winsock proxy开在3001,那访问3001相当于访问1433。但如果把SQL SERVER另外在3001端口开一个Proxy,那为什么不直接连接到1433呢?DBDemon在启动的时候已经读取了数据库的数据,为何还要通过3001来连接数据库呢?况且作为应用程序,一般意义上无须判断SQLSERVER运行在何端口上,他们只听ODBC的数据源。。。。
2、AgentServer也需要连接到Proxy Server,但实际上它并不需要这样来访问数据库。。。同样,ODBC要方便很多。
3、一般认为,ProxyServer是用来连接到游戏玩家的。因此,它应该跨了两个网段。在单机上实现时,应该只需要将3001的讯息映射至5000即可。(猜测)估计该Proxy Server似指Microsoft Proxy Server2.0,亦即目前的ISA Server产品。
4、按照国外的方法作的Proxy Server不仅毫无用处,还会使得DBDemonG死。

CODE

C <12:29:45> [SUCCESS TO CONNECT] PROXY SERVER Server 10.32.6.98(3001)
C <12:31:35> Server(PROXY SERVER:3001) Disconnected
C <12:31:35> ** DB SERVER Server(4001) Under Destroy Process(by <ERROR>)
C <12:31:35> PROXY SERVER(1/3001) Has Lost Connection.
C <12:31:35> ** DB SERVER Server(4001) Under Destroy Process(by <NORMAL>)
C <12:31:35> -- Failed To Notify Server Destroy To Proxy
C <12:31:35> -- DBDemon ShutDown :: Now Release INetwork Module, ServerTable

 

很明显,连接到SQLSERVER的proxy 3001端口后,由于DBDemon没有动作,导致Sqlserver为了节约资源而关闭了该连接,事实上DBDemon需要从此端口获取登录信息等。因此两者并不是一回事。老外错了。。。。

 

根据一些Log和日志判断,关于perl的状况如下:
CreateProcess.pl
Drstartup.pl
LogShaper.pl
createprocess.pl在每台服务器上均运行,监听14001端口。等待drstartup.pl的调用,用以启动本机的服务进程。关于启动何目录下的何程序,应该由drstartup.pl在14001端口发布的数据结构中的command定义。另外一个LogShaper.pl是用于处理各个服务进程产生的日志文件的带参数脚本。这应该是包含在一个计划任务中,一定时间自动运行一次的。前两个进程用以一次启动一组服务器。这三个程序对完整的服务器端不起决定作用,可以暂时忽略。
另一点需要注意的是,要运行这3个脚本,需要安装Active Perl,并需要在PPM中安装DATECALC模块。


DBDemon server
连接数据库,加载世界数据,并连接own server和proxy server
Agent server
连接proxy server
Proxy server
在内网的3001端口和外网的5000端口监听,接受客户端的登录和游戏申请,并在处理后转发给内网的DBDemon server。
Bill server
连接DBDemon server,采集玩家上线时间,完成点卡的扣点工作。
Own server
疑为传说中的MAP SERVER。国外叫GAME SERVER。在4001等一系列端口监听。完成大家都知道的事情。该进程是可以分组运行。
SQL server
数据库服务器

 

 

看到这里,文章也就写完了,不知道这篇文章有没有帮你解决你想架设龙族SF的疑难,如果解决了,记得在本站论坛发帖,谢谢你们,也希望你们喜欢传奇资源网的传奇SF服务端和传奇登录器。

评论一下
推荐文章
热门文章
相关文章
在线留言 - 关于我们 - 发布软件 - 网站声明 -