本课程基本Qt for windows平台下开发的监控回看界面程序通过选择界面上的时间和日期可以准确定位观看过去的某一年某一日某个时刻的监控画面,支持对接第三方海康设备的功能同时也能对于学习QT有很大的帮助。 学会对接第三方设备学会QT开发,学会界面布局学会界面设计。
最近在折腾的一件事:朋友天南海北如何进行红警2局域网联机老掉线游戏?
若干年前一伙同学约战网吧,CS、红警之类的联机游戏玩的不亦乐乎如今再想找回当年的感觉已经非常不容易。其中一个比较直接的原因是不在一个红警2局域网联机老掉线内。
捣鼓了一些很古老的虚拟红警2局域网联机老掉线軟件Hamachi和LAN Bridger问题很多,延迟奇高放弃……
接着就是各种尝试不同的方案,最终找到了一个比较完美的解决方案:N2N
相对于其他虚拟红警2局域網联机老掉线方案N2N在网络环境良好的情况下,能够实现P2P直连有效的降低虚拟红警2局域网联机老掉线的延迟,即便无法直连通过服务器中转,也能获得不错的延迟
只要支持红警2局域网联机老掉线的联机游戏N2N都支持。目前我个人已测试成功的有:
CS、红警2、红警3、星际争霸1、魔兽争霸3、DOTA、方舟生存进化、文明6、群星Stellaris
流星蝴蝶剑、人类一败涂地、百战天虫、求生之路1&2、我的世界、火炬之光2、帝国时代2
非直连狀态Ping(服务器中转):
请以管理员权限运行n2n.exe启动器(小黄鸭图标右键 —— 以管理员身份运行)
初次运行时启动器會自动安装所需要的虚拟网卡驱动
注:安装驱动时如果出现Windows安全提示,请信任即可
注:设置虚拟红警2局域网联机老掉线IP时请勿和当前电腦的物理红警2局域网联机老掉线IP段冲突
点击后可能会弹出Windows防火墙的提示,请将N2N启动器放行即可
具体验证是否组网成功请接着看下文
客户端B,包括后续新加入的客户端除IP设置不同而外,其他设置均需保持一致
一句话:同IP段但不同IP,同服务器和端口同小组和密码,同版夲是成功组网的前提
N2N启动器内置简易连通性测试工具
同理,也可以在两个客户端间建立TCP、UDP连接进行测试
比如:在A端开启一个TCP端口
然后,再B端进行TCP连通测试
目前常见的N2N传输有两种方式
当你和朋友的网络环境比较纯净,NAT状态良好(比如同城市同电信宽带)的情况下N2N会在參与方之间建立P2P连接
所有的通信都不会经过服务器,延迟能够极大程度降到最低
相反当参与方网络环境相对复杂(比如校园网,有多层茭换)就无法建立P2P连接,所有的通信都会经过服务器来中转
中转模式下A到B的延迟 ≈ A到服务器的延迟 + B到服务器的延迟
A和B为同一个物理红警2局域网联机老掉线的设备,并建立N2N虚拟红警2局域网联机老掉线
理论上讲物理红警2局域网联机老掉线下,A和B的延迟在1ms左右而N2N网络下,A囷B的延迟也应该在5ms~10ms左右
但实际的ping情况是一开始A到B的延迟在50ms左右(非直连),在不断ping了200次左右时N2N自动切换为直连模式,ping值只有5ms左右如圖:
所以,想要N2N直连本地的网络环境也很重要。而关于NAT的东西很玄乎我到现在也是很迷糊……
我认为N2N的边缘节点之间的通讯方式有3种:
一是中转,就是边缘节点(edge)上所有的流量都要通过中心节点速度最慢;
二是借道,就是边缘节点之间的通讯借用其他的通道来完成例如当你在两个边缘节点之间运行了多个edge,那么新版的v2.1会借用速度较快的其他edge通道;
三是直连就是边缘节点之间直接连接通讯,不借助第三方
关于打洞的问题,这取决于网络环境了简单说下:
1、双方中只要有一方是完全锥形NAT(NAT1),可以直连;
2、双方都是非对称型的NAT(受限型NAT:NAT2和端口受限型NAT:NAT3)这种情况可以打洞,通过supernode握手以后双方的数据不再经过服务端;
3、一方为受限型NAT(NAT2),另一方为对称型NAT(NAT4)鈳以打洞通过supernode握手以后,双方的数据不再经过服务端;
4、一方为端口受限型NAT(NAT3)另一方为对称型NAT(NAT4),这种情况无法打洞数据要走supernode中轉;
5、双方都为对称型NAT,这种情况也是无法打洞的数据要走supernode中转。
如果出现一方可以ping通另一方无法ping通,则很有可能为对方开启了防火墙关闭防火墙即可
2.无法搜索到对方建立的游戏(房间)
或者尝试关闭Windows自带防火墙或第三方安全软件
检查客户端填写的服务器端口是否正确
檢查服务器端口是否在iptables等防火墙中放行
检查客户端是否以管理员权限运行
4.客户端不断重复ERROR等信息
若能正常联机,则可以忽略错误提示
版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。