Minecraft(我的世界)中文论坛
标题: (科普向)服务器连接原理一览(已添加教育网)(配图施工中)
作者: wwjjack 时间: 2015-7-13 06:00
标题: (科普向)服务器连接原理一览(已添加教育网)(配图施工中)
本帖最后由 wwjjack 于 2015-7-22 18:55 编辑
写这个主要为了把之前的坑彻底填了,如果你真想解决搜不到服务器的问题,还是逐字逐句看吧。实在不行再来加群18963825,提问的要求是邮件或者回复图文并茂300字写明尝试方法,有问必回,另外我只解决服务器无法被搜索到的问题。
一.mc传输数据的方式
1.局域网
mc在局域网中搜索游戏的协议是udp协议,特点是没节操。过程是这样的:
客户端向自己网段中所有的主机广播一枚udp包,内容是——"我正在找mc服务器,我的ip是XXX,我的游戏端口是XXX,请服务器速速回信。"网段中的服务器如果收到这个包会立马返还一个udp封包,告知客户端他的ip地址,客户端收到之后就能在界面中看到服务器还有延迟了(就是你看到的红黄绿)。之后双方再通过tcp协议开始游戏(下文会解释tcp协议)。
2.互联网
mc在互联网中搜索游戏采用的是tcp协议,tcp俗称是三次握手协议,过程是客户端向已知的服务器发一个包,服务器收到之后向客户端返还一个包,至此2次握手已经完成,客户端通过2次封包的间隔时间得出了延迟。如果客户端需要登陆服务器,就会再发一个包给服务器,至此3次握手完成,开始传输数据,game start。
小知识:广播udp包的方法是向地址255.255.255.255发送一枚udp包(这个地址由交换机或者路由器保管),路由器或者交换机收到这个包会之后广播给所有局域网里的主机。
浩方的原理就是将这个包截获,修改源地址为浩方的ip再发给游戏服务器,这样服务器就会将包返还给浩方,浩方再将包代交给客户端。(浩方上几乎所有的游戏都是基于这个原理)
此章节有两点:所有访问都是由客户端发起,而服务器在收到来自客户端的第一个包之前什么都不会做。
二.现实情况分析
家家都有个路由器
路由器的功能是只利用一个公网ip让其下所有的设备都连接上网,一个ip总计可以开放65535个端口,如果6万多个端口全部被占用之后,路由器就无法给更多的电脑提供网络了。
路由器会分配旗下电脑的新的ip地址(比较常见的192.168.X.X)
互联网协议又称为对等协议,所以互联网的两台设备必须都在公网ip下才能连接(或称顶级ip),如果一台路由器下的电脑想要连接一个公网的服务器,他必须依托拥有公网ip的路由器来完成。路由器负责会转发所有的封包。所以成功连接关键是对等,且路由器完成转发的工作。
下面举个路由器工作原理的例子
假设路由器114.80.23.116下,现在有一台客户端想要连接一个互联网的mc服务器40.110.5.16,他发送了第一枚tcp包,包的源地址写的是192.168.X.X,目标地址是40.110.5.16。经过路由器时将其源地址改写为114.80.23.116然后转发给服务器。服务器收到之后回复一个包给路由,路由转发给客户端,任务完成。路由器的任务就是反复涂写客户端发出封包的源地址。
但是路由器转发有个先决条件:第一个包必须由旗下客户端发出,路由器会记录下包的目标地址和源地址的ip和端口,以便收到回复时能准确投递给客户端的正确端口,这个过程有个名词叫做打洞(NAT),打洞工作由客户端发出的第一个包完成。
你是否记得我前文说过,服务器在收到第一个包之前什么都不会做,
所以一个开在路由器下的服务器是不会主动在路由器上打洞的,自然收不到任何来自客户端的封包的。为了解决这个阻碍,我们需要手动在路由器上面打洞(通过端口映射,常见有upnp,dmz,虚拟服务器,再或就是利用浩方、花生壳这类软件)。手动打洞完成之后,服务器就能接受到客户端的封包了。
我来一一说明实现方法:
upnp:进入路由器打开upnp功能,具有upnp功能的服务器(傻瓜开服器,水桶插件都有这类的功能)会主动在路由器上打洞(NAT),告知路由将所有目标端口为25565的包都转发给它。
dmz:进入路由器设置页面,设置dmz映射的ip为服务器ip,这时路由器会将自己所有的端口映射到服务器电脑上,此时防火墙将有服务器电脑替代,这方法在安全上略显不足。
虚拟服务器:方法也是进入路由器,设置映射服务器的25565到路由的25565。ok,and enjoy。
浩方,和花生壳我就不说了。
三.常见问题
1.有些光纤猫自带拨号,所以他本身就具有路由器的功能,如果再接个路由,就是路由套路由这种情况, 解决方法无非就是一级一级向上端口映射,要么把猫改成桥接模式再由外接的路由器拨号或是电脑直接拨号。无论哪种方法都必须进光线猫,进光纤猫要超级密码,请自行baidu获得方法。(光这一步就足够你折腾个把小时了而且你必须做,不想做的话浩方是个好选择)
2.当腐竹还得清楚网络供应商允不允许开放端口25565,打个电话咨询一下供应商吧。
3.天朝上行的带宽低的可怜,所以直连并不那么美,在浩方面前就是渣渣。
4.教育网分很多种,有些具有独立的公网ip可以直接互联,更多的是只有ipv6互联方式,方法是
(一)首先电脑安装ipv6,win7自带ipv6,xp用户开始运行cmd窗口输入ipv6 install
(二)客户主机运行一个批处理.bat文件(服务器不需要),语句在下面粘帖(记得删除括号中的内容)
@echo off
pause
netsh interface portproxy add v4tov6 listenport=25565 connectaddress=2001:xxxx:xxxx::xxxx(服务器地址)
(三)接着游戏中的服务器地址输入127.0.0.1
(四)没有第四步了。。。。
(非常有用)四.一个较万能的测试你的网络是否可以使用傻瓜开服器(具有upnp功能的开服器)在官网下载一个utorrent或者emule,不需要进行任何设置,打开选项中一个链接的选项卡如图所示,你可以看到ut传输的端口,记下这个端口然后登录canyouseeme.org这个网站查询这个端口是否可见。如果显示为绿色的success,那么恭喜你,赶快去下载一个开服器吧,如果默认的25565端口不能用,不妨试试之前测试成功的ut的端口。反之如果是红色的error,那么很遗憾,你只能尝试别的方法了。(ps 请反复随机端口多试几次,所以请祈祷吧)
-
QQ图片20150722184519.jpg
(69.88 KB, 下载次数: 38)
作者: ktsky 时间: 2015-7-13 13:07
学习了,那另外问下,我是广州这边的,用的是移动光纤宽带,貌似是内网环境,有没有办法开外网或者,开几个端口用用
作者: 北方姬 时间: 2015-7-15 21:57
我家百度查的IP和路由器wan口的IP不同,我的服务器我自己可以连,别人搜索不到,百度有人说这是外网和宽带间多套了一层内网,这怎么解决,
作者: qrbqrb4728116 时间: 2015-7-15 22:21
前排==========================
作者: fei05 时间: 2015-7-16 14:13
我家电脑开服收不到,手机服搜得到,服务器就没这问题
作者: wwjjack 时间: 2015-7-17 00:52
把ip贴出来
作者: wwjjack 时间: 2015-7-17 00:54
把ip贴出来
作者: wwjjack 时间: 2015-7-17 00:56
一般来说需要主动联系运营商,或者bt软件可用的情况下,借用bt的端口
作者: fei05 时间: 2015-7-18 11:25
谢谢楼主,我已经找人解决了
作者: 可乐是傻逼 时间: 2015-7-18 16:22
楼主好,我之前弄过端口映射,可以成功直连,但后来不知道怎么了突然不可以直连了,百度的IP和WAN口的IP不一样,请问怎么解决 百度查到的IP:175.42.91.24 WAN口IP:100.116.19.246 我是福建这边的 联通10M
作者: 食指君 时间: 2015-7-18 17:34
楼主 为什么我的MC 多人游戏一直在连接 就是连接不上 这是为什么呢
作者: wwjjack 时间: 2015-7-19 19:29
试试ut这类的软件可不可以使用,如果可以,下载一个upnp映射插件即可,使用百度ip连
作者: 可乐是傻逼 时间: 2015-7-20 11:33
UT这类软件是指哪些,在这方面我只是个小白,所以不大懂问一下
作者: NAsttear 时间: 2015-7-20 16:42
装了光纤后死在光猫密码上了···
求
软件(免费?) or
教程(详细?) or
技能(新技能get?) or
破解(华为HG8120C?) or
指导(XXXXXXXXXXXXXXXX?) or
作死(加我Q1250488706,咱一起黑了电信服务器,叫他娘的搞这些狗屁玩意?)
被自己的排版所惊呆~
作者: Cod 时间: 2015-7-20 18:50
被科普,感谢。
作者: wwjjack 时间: 2015-7-20 22:37
utorrent emule
作者: 可乐是傻逼 时间: 2015-7-21 11:13
下载完了具体要怎么用- -{:10_526:}
作者: guqu 时间: 2015-7-21 11:26
怎么又出现浩方了?
作者: wwjjack 时间: 2015-7-22 01:05
ut右下角有个小小的黄色感叹号,开启一段时间如果变绿了就是可用
作者: J1uly 时间: 2015-7-22 01:16
长城怎么办
作者: wwjjack 时间: 2015-7-22 18:56
已更新帖子
作者: 可乐是傻逼 时间: 2015-7-24 20:31
不行啊LZ怎么办{:10_524:}
作者: Princehens 时间: 2015-7-29 15:26
internal exception:io.netty.handler.timeout.ReadTimeoutException: java.io.ioexception:bad pack id 72
求救 服务器连接不上 是怎么回事
作者: 力挽狂澜99v 时间: 2015-8-16 15:46
科普已看完,学到了一些
作者: 193952100 时间: 2015-8-16 20:02
傻瓜的开服器,没路由器光纤可以么?
作者: 1920294124 时间: 2015-8-17 09:38
照你这样说,卖服的多线就是这样弄得?
作者: jiangben 时间: 2015-8-23 13:16
怎么破
java.net.connectexception:connection
作者: MC业余爱好 时间: 2015-10-10 03:45
求大神加Q指导Q1246334359{:10_567:}
作者: 彭杰 时间: 2015-10-31 18:12
我想问问,我家的路由器端口映射了呀,为什么别人外网进不去,我敢保证我端口映射方法没错!因为我用这个方法帮朋友的路由器试过,他的可以进得去,但是我的不行,我家一个路由器,一个无线光猫,怎么破,就是外网IP进不去,用比特彗星(bt)显示我黄灯,求解啊!我QQ634167653 帮个忙吧
作者: 彭杰 时间: 2015-10-31 18:13
我也是HG8120C的,我就破解了,我的是telecomadmin17047507
作者: 彭杰 时间: 2015-10-31 18:13
我也是HG8120C的,我就破解了,我的是telecomadmin17047507
作者: 彭杰 时间: 2015-10-31 18:19
我想问问,我家的路由器端口映射了呀,为什么别人外网进不去,我敢保证我端口映射方法没错!因为我用这个方法帮朋友的路由器试过,他的可以进得去,但是我的不行,我家一个路由器,一个无线光猫,怎么破,就是外网IP进不去,用比特彗星(bt)显示我黄灯,求解啊!我QQ634167653 帮个忙吧
作者: 1037603534 时间: 2015-10-31 19:26
被科普的我!感谢
作者: 10123482 时间: 2015-11-1 12:37
看起来蛮厉害的
作者: zyx0739 时间: 2015-11-20 22:53
我也问问,,我家路由也端口映射了的,,别人就是用外网进不去,,保证端口映射方法没错。。我家就一个路由,,华为的光猫,,外网IP就是进不去,,测试都是绿灯,,求解 我的QQ:348705401 急需帮忙
作者: luoting 时间: 2015-11-22 11:44
为什么我的服务器只有我自己可以进 别人却进不了呢?我自己进的ip是192.168.1.107 而别人也是这样却进不去 我给他们这个ip223.73.25.1他们也进不去
作者: zjlong1001 时间: 2016-3-3 22:51
能不能把橙色的子改一下,好难辨识!
作者: 1783604393 时间: 2016-8-2 11:13
楼主 我现在是小白看了你们开服办法后成功用自家电脑开服只是 有时外网能连上有时连不上虚拟dmz up我都开了 ip一天一换 不知道怎么解决{:10_492:}
作者: 2313043769 时间: 2016-8-4 17:19
我想问一下,我的服务器一开始能让所有人都能进,但在一次断网后,百度的IP变得和宽带上的IP不一样,而且宽带上的IP只能供我一个人进,其他人搜索都是红叉,求教
作者: 2658740621 时间: 2016-8-5 13:34
网络情况特殊的怎么办,我连接别人的Modem上网,然后用自己的电脑开服,内网IP锁好了,虚拟服务器也开的,DMZ,UPNP都启用了,然而上百度插的IP就是无法连接.同时那个utorrnet的方法也尝试过了,是Erorr
作者: 14887373 时间: 2016-8-7 18:55
开服成功过,但换了个家别的就不行了,我自己能搜索到,别人搜不到加端口也不行
作者: 570855441 时间: 2017-3-4 11:45
固态内网ip绑定了,虚拟服务器搞了,dmz转了,外网ip固定了,然并卵。。。以前可以的,现在不行了。。。
作者: qq253844395 时间: 2017-3-4 15:01
提示: 作者被禁止或删除 内容自动屏蔽
作者: vcerasd 时间: 2017-3-31 20:45
我想问问能不能走服务器自带的DDNS线路去搞服务器啊
作者: langyo 时间: 2017-3-31 21:34
虽然很基础,但有用就是好帖
作者: Forge_Storm 时间: 2018-2-1 11:58
canyouseeme.org这个网站登录不了呀
作者: Forge_Storm 时间: 2018-2-1 12:05
为什么我开服我用我自己的外网IP连无法连接到!!!为什么
刷新1秒后就叉了
作者: 久美香月 时间: 2018-9-24 21:15
问一下大学学校的电信网怎么开服,upnp端口不行
作者: OVOOR 时间: 2019-5-4 21:25
楼主你好,我ipv6的地址已经有了,但是我不知道该如何才能通过ipv6访问我的服务器,bungee群组
作者: qwer87971225 时间: 2019-6-19 02:35
DMZ可以链接,但是端口映射就不行了要怎么办
作者: 暮之歌 时间: 2020-4-23 00:08
dmz和端口映射都设置了 但只能内网连接 外网连不到我的服
作者: ahh11010ahh 时间: 2020-8-12 08:27
试试花生壳?
作者: ahh11010ahh 时间: 2020-8-12 08:30
有没有调多级映射?
作者: Stant_hed 时间: 2020-8-12 09:49
感谢楼主科普~!
作者: forival_lpld 时间: 2020-8-12 19:56
楼主好,不知道隔了这么久还能不能被回复啊...
我的情况是电脑通过网线连路由,路由通过网线连光猫
现在路由和光猫的映射都搞好了,一次一次检查也没问题,也联系运营商申请公网ip了
就是死活连不上
怎么办啊
作者: wwjjack 时间: 2020-8-13 18:21
forival_lpld 发表于 2020-8-12 19:56
楼主好,不知道隔了这么久还能不能被回复啊...
我的情况是电脑通过网线连路由,路由通过网线连光猫
现在路 ...
用canyouseeme.org测试你开启的端口
作者: forival_lpld 时间: 2020-8-15 00:12
测试结果是没开,Connection timed out...
但是电信的是可以连接的,联通和移动都连不了
作者: wwjjack 时间: 2020-8-21 22:04
1.电信的动态ip也是对全网可见的,不存在跨运营商无法互通的情况。
2.如果你的描述准确,只能是国内ip根服务器自身出错(一般不大可能),那可以绑个免费域名来解决你的问题。
作者: lxhljj 时间: 2020-8-22 11:42
可以学到了
作者: forival_lpld 时间: 2020-8-22 11:47
搞懂了,谢谢~
作者: leope 时间: 2021-2-1 11:37
我也死在光猫密码了
作者: sg224127 时间: 3 天前
提示: 作者被禁止或删除 内容自动屏蔽