一个基于字节转发的断线重连中间层,实现了以下功能:
- 根据首个数据包去标识新建连接还是旧连接,并交换DH算法生成的公钥,各自得到一个用于RC4加解密的秘钥secret
- 根据连接的映射关系,用RC4加解密client收到的数据包并转发到目标服务器进程中,转发数据包过程中记录双方发送的总字节
- 数据转发过程中client连接断开,则对应的conn进入等待恢复状态,超时未恢复则移除映射关系。
- 恢复重连后,中间层(loopbuffer)补发clent未收到的字节,client也做相同操作
conf文件中配置监听的端口和转发数据的目标地址
source env/bin/activate
python3 main.py