本帖转自mcbbs
作者:cyqsimon
重要:
首先,你可能要问我为什么要写这个帖子呢?不是已经有很多类似的教程了吗?是的,的确,但是我一直觉得,绝大多数的帖子都是给有较好电脑基础的人看的,而大多想要开服的朋友可能并没有这类基础知识。所以有必要写一篇简单开服本身就很麻烦,简单不到哪里去、易懂但这总是做得到的的具体开服教程,以方便所有其他想自己开服的朋友,尤其是那些只是想开一个微型服,但又无从下手的玩家。
其次,你又可能要问,为什么不用蛤蟆吃/花生壳呢?这样不是比较方便吗?恩,这些工具确实可能比较方便,但是弊端也很多。花生壳我试过,免费版太卡,,,是大多数朋友又不愿用付费的;蛤蟆吃我也用过滴,我这里多批评几句:
设置也没方便到哪里去
客户端需要安装
IP每次都会变
每次关服后再开都麻烦
有人数上限
具体原理不知道,有使用风险
毕竟还需要多安装一个软件
当然,论坛交易代理区里这么多服务器租赁贴自然也不是平白无故的。使用家用电脑、家用网络开服自然会遇到各种各样的问题:比如处理器性能不足、上行宽带不足、modem/路由器性能不足、网络延迟大、可变外网ip等等,而且维护服务器也会花费许多精力。故,如果想要长期维持一个相当规模的服务器,或是服务器规模较大(峰值人数 ~ 100),还请移步
准备、检查自己电脑和网络性能
为什么要用准备呢?因为这也算是个“不是步骤的步骤了吧”......检查自己电脑和网络的性能不是常识吗?如果其他步骤都完成了发现性能根本不够岂不是浪费时间精力人民币?
1. 确认你的CPU和系统都是64位。
查看方法很简单,右键计算机,单击属性就能看到了:
尽管不是说32位的系统就不能开服,但是在可用内存和系统性能方面就会被极大地限制。换句话说,一般32位系统玩MC都卡,想开服还是洗洗睡吧。
2. 确保你的电脑至少有4G的RAM,建议6G或以上。
这里可以看到我自己的电脑安装了32G内存(我只是开小服拍视频,所以...),完全足够了。
3. 确保你的CPU运算能力足够
可以按照以下公式估算性能:
如果 真核数 <= 8 则 基数 = CPU 真核数 x 最高睿频
如果 真核数 > 8 则 基数 = CPU 真核数 x 默认主频
如果手动超频则 基数 = CPU 真核数 x 全核心最高同步主频(不过超频的玩家基本都不会需要看这一节吧)
如果为 Intel CPU 则 基数 x 1.7
如果支持并开启超线程则 基数 x 1.5
如果默认主频 < 2GHz 则 基数 x 0.9
自己CPU的各种参数,百度一下便有,不用问我。如果最终结果 > 18 的话,开一个二十人以下小型服务器问题不大; > 30 的开六十人以下的中型服务器无压力。大型服务器?你确定你有在认真读?
别骂我是A黑,我只是把Intel全面压制AMD的现状按照事实说了而已。
注:以上方法仅供简略参考,CPU性能是否足够,其实受制于架构、支持的指令集、单周期指令数、主板供电能力、TDP、核心数、线程数以及散热性能等等复杂指标,即使是简单的跑分通常也不能说明任何问题。
通常来说,开单个大服务器重主频,开多个小服务器重核心数。相同架构的CPU中,主频越高,越适合开少量大型服,核心越多,越适合开大量小型服,上面的公式也是根据这个原则编写的。
4. 检查宽带是否足够
首先请打开浏览器进入 speedtest.net或者360 进行测速。网页打开速度可能很慢,耐心等一下就好。至于界面的使用简直是不能再傻瓜了,你要是需要我教你怎么使用的话,我还是建议你不要开服为好。
我用的是360
保守估计,一个玩家平均需要12KBps的上传宽带,这也就意味着我的网络理论最多能支持20人同时在线。然而12KBps只是平均值,只有当任何峰值都无法挤满宽带时玩家才能感觉没有卡顿,所以保守估计,如果要求没有卡顿,我的网络应该只能支持5-10人。
当然,实验出真知,各位只有自己试了以后才能对自己的网络性能有确切的了解。
我卡!!!累死我惹!!!
接下来部分等下更新
一、了解内外网的区别。
如果这不是你看的第一篇开服教程,你一定听说过什么内网外网......但是鉴于有些人可能听不懂,所以这里讲解一下。
外网是指电脑直接连接网络提供商服务器。
内网是指电脑连接路由器,而路由器连接网络提供商的服务器。
为了方便理解,我找了一张图。
这下应该明白了吧。
好了,我相信你一定听说过什么开服一定要外网的说法。是的,开服的确需要外网,原因我用笼统的语言解释一下:
路由器就相当于一层防火墙,会禁止外部的主动数据传入,而服务器有需要接受外部数据,所以必须使用外网。
现在你一定要问了,那既然这样为什么我们内网还能访问网页呢?原因就是:
访问网页等我们的日常行为都是外部被动传入数据,也就是说传入的都是你要求传入的数据,所以访问网页没有问题;而服务器需要接受外部主动要求传入的数据,所以需要外网。
再笼统一些,我做个比喻:
外网就好比一个普通人,别人问你问题你会回答,别人也会回答你问的问题。
内网就好比一个小气的人,别人问你问题你不回答,而别人却会回答你问的问题。
那你可能又要问了,既然外网“功能更多”为何还有“内网”存在呢?
不尽然,内网的好处其实也很多,应用范围也比外网要广得多。
比如,在同一个办公室内,不同的电脑经常需要互相传输数据,而在局域网(和内网是一个意思)的环境下,数据可以直接通过路由到达目标电脑,这种速度和电信宣传的20M宽带啊,50M宽带什么的相比,简直就是火箭vs乌龟的水平。而且,大多数的路由器都拥有一层防火墙,相当于给了内网电脑一层额外的保护,免受很多蓄意攻击。
相比之下,除了服务器应用以外,外网的网络环境几乎没有什么其他的好处。并且考虑到广域网IPv4地址由于不能满足世界上所有设备的需求而资源捉襟见肘,鼓励/强迫家庭用户使用内网也成为了服务商没办法的办法。
好了,偏题了,立刻进入下一步。
首先:强烈建议使用有线网络开服!!!否则可能导致服务器不稳定!!
想必大多数朋友都用的是Windows电脑,我也是,所以这里只讲Windows,用其他系统的可以跳过这一步,网上自己找相应的教程。
既然开服需要外网,那么该怎么判断自己是不是外网呢?Windows自带有这个功能可以帮助你判断。
1.按Windows+R打开运行
2.输入cmd,按回车,得到这个窗口
3.输入ipconfig,按回车,得到这些结果
4.可以看到我这里真正使用的网络是最后一项,因为其他的都已经断开。确实也有同时连接了多个网络的情况,因为有些软件会添加自定义链接,这种情况下通常只要看看这一项的标题里有没有出现“隧道适配器” “Pseudo” “Virtual” “Tunneling” “VM” “Hamachi”等关键词即可,如有这些关键词即可判断为不是真正的互联网连接,而真正的互联网连接通常有“本地连接” “以太网” “WLAN”等字样,同时ip地址通常由192.168打头。找到真的连接项,看那一项里的“IPv4 地址”,我这里是192.168.1.113。
5.如果你的地址和我一样,是192.168.开头,或者是10.开头,那么就肯定是内网,但是没有关系,照样可以开服;如果你的地址不是192.168或者10.开头,那很可能是外网。总之,请继续往下看。这个窗口也不要现在就关闭,之后还要用到。
三、下载、运行服务端
顾名思义,把服务端下载下来运行就可以了
有多种服务端可以选择,接下来简要介绍+提供下载:(个人推荐使用迅雷下载以下的文件,p2p加速真的很有用)
重要:
新手开服,请务必从原版服务端开始尝试,如果其他玩家可以成功进服游戏,再可以尝试使用mod/多插件服务端,否则一旦出现服务器问题将很难诊断问题来源!
Official 官方服务端
1.5.2;1.6.2;1.6.4;1.7.2;1.7.4;1.7.10;1.8;1.8.3;1.8.7
最方便,不支持插件,不支持mod,稳定性最高
运行方式:双击exe即可运行
由于亚马逊服务器国内连接极慢,以上链接均建议使用迅雷下载
Craftbukkit 插件服务端<——点击这里下载
由于 DMCA Takedown Request ,Craftbukkit已经暂停了下载,各位可以自行寻找镜像
稍微复杂,支持插件,不支持mod,稳定性其次
运行方式:自己制作一下bat文件。
1.将下载到的jar文件放到你想要让服务器安装的目录下;
2.新建一个txt文本文档,打开并输入:
@ECHO OFF
java -Xincgc -Xms1g -Xmx1g -jar <此处换成你下载到的文件的文件名>.jar
pause
3.保存该文档,并将文档重命名为bat后缀(文件名任意);
4.双击该bat文件即可运行服务器;
5.输入stop正常关闭服务器。
这里补充一下,代码的第二行中 “-Xms1g”是指最低内存1G,“-Xmx1g”是指最高内存1G,自己可以根据情况更改,建议设置相同的值。小型服务器一般可以用以下公式来计算需要多少内存。
ps:内存(MB) = 512MB + 峰值玩家数 x 64MB
比如如果最高需要10个玩家在线可以这样:512MB+10*64MB=1152MB。可以把代码改为“java -Xincgc -Xms1152m -Xmx1152m -jar <......>.jar”。
这个计算方法仅供参考,纯属经验,没有实际依据,请勿刻板套用!!
同时,分配内存时请务必注意以下两点:
如果是32位java最多只能使用1.5G的内存,这就是文章开头推荐使用64位的原因之一。
给单个服务端分配的内存请勿过多:对于内存8G以下的系统,不建议分配超过50%的内存;对于内存8G及以上的系统,建议至少保留3G内存给系统和其他软件。
Spigot 插件服务端,Craftbukkit优化版<——点击这里下载
稍微复杂,支持插件,不支持mod,相对于Craftbukkit拥有许多性能优化(以及原生支持防X-ray哦),稳定性比CraftBukkit略好
运行方法:和Craftbukkit运行方法相同。
Cauldron 插件mod服务端(旧名 MCPC+)<——点击这里下载
最复杂,支持插件,支持mod,也是由于mod的原因,稳定性最低
运行方法:和Craftbukkit运行方法相同。
下载后,请切记将服务端运行一次,会生成一堆文件,等到服务端完全加载完成时候再关闭服务端!这一步是必须步骤,如果不做,其他的很多步骤(特别是针对内网)将无法操作!
使用官方 1.8+ 版本服务端开服的请注意:首次运行服务端后,需要关闭服务端,把eula.txt文件里的“eula=false”改成“eula=true”,然后再次运行服务端,等待全部加载完成后再关闭。
操作到这一步,内网和外网开始有所不同了!
如果内网请从第四步开始继续阅读,如果是外网请直接跳到第八步!
好桑心
居然没有人回复
有没有淫那
顶起
快更
四、检查网络硬件
这步很简单,我们主要需要确认的是你和网络提供商服务器中间是不是只有一层Modem有些地方可能会出现“电脑---路由器*n---Modem---网络供应商服务器”的情况。
请你查看一下你的电脑的网线是否直接接上了标有“Modem”/“猫”/“光猫”等的设备。
如果连接到的是别的设备,请找到你的Modem,将你的电脑和Modem用网线直接连接,注意要连接Modem的Lan接口,千万不要接错到Wan接口上了。
科普一下,WAN=WideAreaNetwork=广域网,LAN=LocalAreaNetwork=局域网,记住了这点,在检查modem连接的时候就方便多了。
P.S. 由于很多家庭的网络都是 modem 接 路由器 接 电脑 的情况,而且这种情况实在太普遍了,所以这里做一下详解:
这种情况下有三种方法,以下按推荐程度排序:
更改硬件连接方式
再次重申:这是最优方案,永远首选
也就是电脑直接连接modem
把路由器设置为AP/交换机模式
退而求其次:效率稍低,稳定性稍低,但是作为<100人的小型服务器尚可
教程请看 这里
多级映射
下策,上面的办法全部行不通最后考虑的方案,不推荐
使用此方案前请先操作第五部
教程请看 这里
好累
七、为主机开启静态地址,手动跳过DHCP为什么要这么做呢?
首先要了解一下DHCP是什么。DHCP服务是什么呢?所有连接到Modem的电脑都需要一个内网IP地址,而DHCP服务的目的就是自动分配这个地址。
那为什么要跳过呢?
原因很简单,因为如果使用DHCP自动分配IP地址,可能会导致自己的内网IP变动,使端口映射设置失效。所以我们要手动给电脑分配静态内网IP地址。
首先我们要获取开服电脑网卡的唯一识别码,也就是MAC地址,等一会儿会用到。
1.首先回到cmd
2.输入“ipconfig /all”查看全部设置
3. 找到你正在使用的网络中,“物理地址”这一栏,这就是你的MAC地址,我这里是“B8-88-E3-nn-nn-nn”
好了,记下这一串字符,然后打开刚才的Modem超级用户界面,找到“静态地址管理”一栏,同样的,因为modem不同,具体位置自己问度娘。比如,我的在这里:
可以看到我已经给自己设置好了静态地址,你可以按照下图输入:
其中IP地址是你上一部中获取的内网IP,MAC地址是你刚刚获取的“物理地址”。
接下来点击添加,静态网络就算设置完毕啦!DHCP在自动分配地址前都会先到静态网络设置列表里查找匹配项,所以DHCP对你的电脑不会启用(网络依然可以正常使用)。以后你无论什么时候将电脑连接上Modem内网IP都应该是一样的,端口映射就没有问题啦!