首页
社区
课程
招聘
[讨论]浅谈外国项目之--境内工作室跨国组网
发表于: 2025-8-24 13:24 875

[讨论]浅谈外国项目之--境内工作室跨国组网

2025-8-24 13:24
875

境内机器挂机境外项目首要面对的问题就是跨国网络波动,延迟抖动,丢包,掉线,断开连接.
更不用说gfw.

那么如何对抗这些网络波动?

本文只讲理论,代码已经实现了,没法开源.

首先要讲Windows 底层网络接口
TCP接口,connect send recv,更底层的是操作系统内核层对应的接口,自己追到内核层就行了,不赘述.

UDP无状态接口,sendto recvfrom

那么在多层NAT网络中,sendto和recvfrom是如何运作的呢?

比如说sendto只能发送给当前NAT网络的某个ip和端口,此时交换机记录下了当前NAT网络中的ip地址和端口和上层的映射关系.

此时recvfrom收到的包就会顺着这层映射关系一层层的被交换机转发下来.(这次不严谨,大概了解就行)


那么我们如何解决网络问题?

底层原理有两种,1.劫持这些网络接口,汇聚到境内某个机器上.


在境内机器和境外机器之间,在墙的两端架设一道桥梁,由这道桥梁来保证网络的可靠性.


首先,根据socks5协议,connect是s5发起的,连接到境外项目上.

那么此时我们需要做的是保证境内A机器和境外B机器之间的稳定连接.境外B机器和境外s5之间稳定连接.


此时有两种选择1.境内机器选择BGP机房,境外机器选择对应的BGP机房,尽量保证可靠性.做透明转发.

客户端,所有接口全部转发给境内A,境内A做透明转发,境外B同样做透明转发.

如果认为还是不可靠.

可以选择把所有connect send recv这些全部转为udp的kcp协议.

kcp协议可以保证只要不是丢包极端严重,网络环境极端恶化.能保证又快又好.

当然,这里不考虑gfw因素.这个需要自己去解决,比如公司申请备案.

还有种解法,直接联系电信移动联通运营商,买直通国际互联网的高速公路,当然,缺点只有一个,贵.




[培训]Windows内核深度攻防:从Hook技术到Rootkit实战!

收藏
免费 0
支持
分享
最新回复 (0)
游客
登录 | 注册 方可回帖
返回