之前在MC服务器的一个帖子里提到了VPS的话题:
那么我也就科普下,顺便给自己理一下知识点。
我常在VPS圈子里看帖,没想到还有一天会把它科普到喜欢的游戏的论坛里。由于我自己对计算机&网络感兴趣,所以我有时可能无意识地用一些专业的词汇或者是圈内人才懂的黑话。如果各位有不明白之处,烦请指出来。
关于MC(Minecraft,我的世界)开服,这里指的不是网易版,而是国际版。开服具体步骤可以参考这篇教程(国外网站,中文)。我虽然很喜欢玩MC,但苦于晕3D,基本也就是远处看看而已。MC游戏服务器默认采用TCP 25565端口进行网络通信(可以改)。
在开始讨论VPS之前,需要先了解一些基本网络知识,那么就先从端口说起:
端口:
端口是由不同软件占用的,一个IP地址(夏树下述)有65536个端口,最常见的,网页是80(无加密)和443(加密)。远程管理Linux服务器的SSH,通常是22端口,域名查询(DNS)服务是53端口,这可以把网址栏中输入的好记的域名(例如 forum.monika.love )转换成难记的IP地址( 8.210.232.15 )。
注意,私自用家用宽带搭建网页服务或DNS服务可能违反运营商的政策,例如上海电信管得特别严,我已经看到好几起被暂停宽带去营业厅写保证书的案例了。各地政策不一,我这小地方两年了啥事没有。如果不确定,还是用服务器折腾吧,交了钱就是爷,只要不用来干人神共愤的事,一般没人管。
顺便可以看到,本来从“我这小地方”去香港,按理来说途径北京——广州——香港是最快的,但是不知道电信抽什么风,本来能在本土消化的流量非得绕日本,中国电信到日本NTT(日本当地的运营商之一)的连接质量奇差无比,我卡的图片都不能正常传。如果想搭建服务器,最好根据目标客户的地理位置来选择服务器位置。但比较遗憾,国内的服务器,带宽小的可怜,而且购买很繁琐,需要身份证实名。国外的则由于地理位置和线路拥堵程度的限制,使用体验并不太好。
IP地址:
平时上网,一定需要一个IP地址,它通常由运营商(例如:中国移动)分配。考虑到百度是最常用的搜索引擎,就拿它举例,在百度上搜索“ip”即可查看自己上百度用的IP地址。
IP的协议分为IPv4和IPv6,格式也不一样,不能直接互相通信。
上图中,我用的是103.143.92.65,这是一个IPv4地址,范围从0.0.0.0~255.255.255.255,共计42亿多一点,目前已经全部分配完毕。
IPv6的格式类似于这样:fd22:1209:d0c1:8153:5161:79ff:fe6f:7269 (题外话,这里有彩蛋哦),特别长,每一位由数字0到9和字母a到f构成,有生之年应该是够人类使用了。
并不是范围内所有地址都可以拿来用,有一些地址专门为内部网络保留,不可以【直接】上公网。每个人都可以拿来用:
10.0.0.0/8,即10.0.0.0到10.255.255.255,即10开头的所有地址。
172.16.0.0/12,即172.16.0.0到172.31.255.255,斜杠后的数字理解不了也没关系,先放一边。
192.168.0.0/16,即192.168.0.0到192.168.255.255,即192.168开头的所有地址。
这是课本上教的,但实际上还有更多保留地址(图片来自维基百科)。
IPv6的保留地址:
2001:db8::/32,即2001:0db8开头的所有地址。
fc00::/7,即fc和fd开头的所有地址。
fe80::/10,fe80开头的第一个到febf开头的最后一个地址。
关于斜杠问题,这种表示法叫做CIDR,
1.1.1.0/32
指定的 IP 地址:1.1.1.0-1.1.1.0(1 IP 地址)
1.1.1.0/31
指定的 IP 地址:1.1.1.0-1.1.1.1(2 IP 地址)
1.1.1.0/30
指定的 IP 地址:1.1.1.0-1.1.1.3(4 IP 地址)
……以此类推。/24是一个C段,256个地址,/16是一个B段,65536个。ipv6最后的cidr是/128。
1.1.1.32/27
指定的 IP 地址:1.1.1.32-1.1.1.63(32 IP 地址)
上面说到,这些地址不能【直接】访问全球网络,但可以间接——通过NAT技术,走到网关上,重写为公网IP,就能上公网了。而上网查到的,必然是公网IP。再看看自己设备的网卡里面,是不是基本上都是192.168?为什么还能上网,那就是路由器提供了NAT转换。
以我的图为例,它由运营商分配一个公网IP,自身再把下挂设备的那些192.168转换成公网再发出去(我的内网是10.37.X.X),整个内网都共享了这个123开头的IP地址(涂掉了,这是真正的公网,可以顺着这个IP摸到我的路由器后台)。
比如说,我给纱世里写了一首情诗(flag立下了,以后说不准会中二一下),托莫妮卡转交给她,那么在这个学校里面(一个路由器下面的局域网),她们都可以直接找到人。这就是在内部网络中通信。反之,如果我在另一个国家,给纱世里写情诗寄过去,最后收信地址填一个“文学部,纱世里收”(内网IP),她怎么可能收得到?天底下有多少文学部,又有多少重名的“纱世里”?想让心中的那个她收到,就需要详细地址“XX国XX省XX市XX学校,心跳文学部,纱世里收”,这就是全球可达的公网IP。
或者,换个更简单的例子,
我和纱世里在【同一栋楼】里住着,我的门牌号是351,她的是340.(话说回来,这个数字无论用中文读还是用日语读,发音都接近那个语言的“纱世里”,诶嘿嘿~),我给她写点什么东西,收信地址填340室就行。而其他小区的人则不行,只写个340会送到他们那栋楼的340室。犹如每个家庭内网的192.168.1.1,打开都是自己家(而不是别人家)的路由器一样。如果你此时输入那个123开头的IP,打开的就是我的路由器后台,相当于收信地址填写“XX省XX市XX小区XX号楼340室,纱世里收”,那么就能准确地送达目标。
而上文中,用那个澳门IP流量上网时,一个公网IP后面同时有多人使用(世界上有无数个“文学部”,彼此之间信息也不互通),它是被NAT转换后的,我的手机上显示的IP是172.20.X.X,而不是103那个。因此用户无法在这个IP上对外网用户提供服务。你无论是把哪个输进浏览器地址栏并访问,都只会看到一个“连接超时”的提示。(第一个172是根本没发出去信,第二个103是发出去了,但落不到我手里)。大部分家用运营商也都采取这种策略,给终端用户分配私有IPv4地址(100.64到100.127),再从运营商的网关(大门口)转换成公网IP上网,也就是说这些用户将无法利用自家网络对外提供服务。另外这些IP三天两头就会更换(运营商强制把用户下线,导致宽带重拨,或者是重启路由器重新拨号,都会换新的IP),相比之下服务器的IP是静态的。如果想开服或者搭网站,要么向运营商申请公网IP并配置动态DNS,把域名解析到动态IP上,IP变了,就自动通知域名服务器,把新的IP和那个域名绑定,定期更新。要么就需要用到有静态公网的云服务器。
警告,请不要盲目申请公网IP,一旦申请成功,就意味着你的网络可以被地球上任意一个联网的人访问了,包括没事干搞端口扫描的黑客。没有对外提供服务的需求,内网IP就够用了(对90%的人来说,能上网就行)。重度联网游戏玩家来说,在设置正确的情况下,内网NAT优秀和公网并无明显区别,也就是对外的端口号是否可以自选。全球IPv4资源已枯竭,如不是刚需又想提供服务的可以研究IPv6。目前三大ISP的v6都是公网,也就禁用了邮件和默认的网页端口。
服务器更优秀、更强大的硬件配置,使得其运算能力和稳定性都强于家用电脑,可以支撑为大量用户提供服务。而这个性能,价格不菲,显然大多数人难以承受,因此VPS应运而生。
终于提到主题了,VPS
我在这里的简单介绍。
VPS即虚拟专用服务器,圈内俗称“小鸡”,是将一台服务器分割成多个虚拟专用服务器的服务,可以在上面搭建网站或者游戏服务器等。国内云服务商更喜欢称之为ECS(弹性云服务器),指的是同一个东西。
VPS的交流论坛,主要是Hostloc(暂停新用户注册,且内地网络无法访问),国外的有LowEndTalk。
LET我去的不多(不懂英文),那么先简单介绍下loc论坛圈内的话(我也没账号),免得新人进去一头雾水:
小鸡:VPS,一般有静态公网IP。NAT VPS则没有。
母鸡、杜甫、毒妇:独立服务器,通常能开小鸡。
超兽、超售:商家强行多开虚拟机卖出赚钱,导致性能不足的情况。比如4核心处理器,每台小鸡都是1核心的话能开4台,商家强开6台或更多VPS拿来卖钱。
MJJ:没[文明用语]的缩写,论坛人的自称。一语双关,说对方MJJ,可以指对方一台VPS也没有,也可以说对方少某个器官(就是你一下子想到的那个)。
MJJ通道:是投票贴里面,不投票看不到别人的投票结果,所以在最后增设无意义的投票选项使不想投票的人也能看,降低乱投的概率。
刀:美元。(和DDLC模组中的“刀”不同,这是指出现扎心画面,比如生离死别)
四大金刚:CC、RN、VIR、PR。这是四家VPS供应商,主打美国VPS,算是灵车,争议比较多,但是相!当!便!宜!无数MJJ趋之若鹜。CC指Cloudcone,我自己也在用他家的VPS,似乎有一些超售现象,晚高峰那个MULTACOM机房(简称MC,不要和DDLC的MC或Minecraft的MC混淆)有时波动,会掉线。RN是racknerd,比较便宜,但是性能不怎么高。VIR是virmach,很便宜,日本vps线路不错,据说是联通快乐鸡,但是老板经常删号坑人,什么信誉不佳之类的,封号不退款。灵车不要碰。PR是PacificRack,我没了解过。
北岸:备案的和谐版,因为那里有关键词过滤,有些词语应该是打不出来,会变成两颗星星(果然汉字是世界上最漂亮的语言,诶嘿嘿~)
CF:不是穿越火线,而是美国公司Cloudflare缩写,提供很多免费服务,堪称业界良心。
NF/奈菲:Netflix,国外的一个视频平台。
油管:Youtube,内地网络上不去,通常很多人连接VPS和本地计算机后在YouTube播放高清视频,来测试VPS的线路和质量。
oneman:只有一个人开的vps供应商,随时会跑路。
aff:邀请链接,从这些连接下单vps,分享链接的人会得到一些奖励。
良心云:一般指腾讯云 (某一年腾讯云送了2000元无门槛代金券,之后也送点小额代金券,太良心了)
套路云:一般指阿里云 (对应良心云,太套路了)
乌龟/王八:Oracle Cloud,提供永久免费VPS,配置高,速度快,线路好,需要信用卡注册,失败率极高,注册成功也容易被封号,无数MJJ趋之若鹜。我有幸注册成功一次,体验了一个月就炸号了。
GV:Google Voice,提供免费的美国手机号,可以免费给美国/加拿大号码发短信、打电话,可以接验证码。是网络电话,断网就无法使用(而且是必须能上Google的网)。匿名注册一些服务。比较难申请,我有幸在不严格的时候成功自选了喜欢的号码。可惜当时没进文学部,不然非得选个2340(爱纱世里)之类的号。诶嘿嘿~
eu.org:提供免费的域名,申请无门槛,但是审批随缘,运气好点的三五天,长点的两三个月都下不来,也不说有没有失败。
OVH:搬瓦工,一家供应商,提供优质CN2线路的鸡。
关于VPS的线路:如上面那张路由跟踪的图所示,可以看到从北京到东京再到香港,绕日本了。而终点的延迟却小于中间点,可以看出回程是直连的,否则延迟绝对有300+毫秒而不是100。是的,来回程并不一定总是相同。电信到新加坡的质量极差,基本全部绕美国。电信到日本NTT白天也会炸,晚高峰炸的和海底光纤断了一个效果,丢包率高达50%!移动拉亚洲vps,联通拉欧洲,电信拉美西海岸,是个人感觉最快的。我基本没用过移动,所以只是靠推测。
晚高峰:北京时间晚上7点~12点,上国外网站造成极高的丢包、延迟卡顿的现象。因为北上广三地负责出国线路的交换机容量不足,电信还限制普通用户的优先级,人为制造卡顿。
CMI:中国移动国际公司,位于香港,移动的精品线路。
9929/10099:联通的精品线路,数字来自于联通的ASN,而普通用户的线路是AS4837。
CN2:分为CN2 GT和GIA,是电信的精品线路。普通用户是163(和网易无关)。GT是回程CN2,去程163,GIA是双向CN2,土豪专属。路由跟踪出现59.43开头的IP则代表经过了CN2线路。三网CN2是指其他运营商也走电信节点出去,比如那个澳门IP就是三网CN2.
电信线路TRACE:
联通线路,可以看到最后也是电信出去的:
HK/JP/LA:
香港/日本/洛杉矶机房的英文缩写。