From 3e4d14592006a6dc811e5d2ac922c75cbb57ad6e Mon Sep 17 00:00:00 2001 From: andy <1414772332@qq.com> Date: Wed, 9 Oct 2024 09:28:57 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BD=BF=E7=94=A8=E5=AE=9A=E6=97=B6=E5=99=A8?= =?UTF-8?q?=E5=8F=91=E9=80=81=E5=BF=83=E8=B7=B3=20=E5=AD=98=E5=9C=A8bug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- target_server.py | 24 ++++++++++++++++++++++-- 1 file changed, 22 insertions(+), 2 deletions(-) diff --git a/target_server.py b/target_server.py index 341811c..f78613c 100644 --- a/target_server.py +++ b/target_server.py @@ -70,9 +70,23 @@ def close_all(): + +# 定时任务 +def remote_keeplive(): + cmd={'device':'server','option':'login'} + data=pc.encode(json.dumps(cmd).encode('utf-8'),b'default') + try: + _remote_client.send(data) + except Exception as e: + myprint(str(e)) + + + + + # 本地数据处理,解包,把负载数据发送到本地服务器 # 每一个connect都会创建一个线程 -def local_client_handler(tcp_server:socket,ip,port): +def local_client_handler(tcp_server:socket.socket,ip,port): global _remote_client global _local_client self_info=(tcp_server,ip,port) @@ -108,13 +122,15 @@ def local_client_handler(tcp_server:socket,ip,port): # 远端数据处理,解包,把负载数据发送到本地服务器 -def remote_client_handler(tcp_client_1:socket): +def remote_client_handler(tcp_client_1:socket.socket): global _remote_client global _local_client myprint("已连接代理服务器") + timer=threading.Timer(5,remote_keeplive,()) cmd={'device':'server','option':'login'} data=pc.encode(json.dumps(cmd).encode('utf-8'),b'default') _remote_client.send(data) + timer.start() recv_data=bytearray() while True: try: @@ -123,6 +139,8 @@ def remote_client_handler(tcp_client_1:socket): myprint("remote:",str(e)) break if recv: + timer.cancel() + timer.start() recv_data+=recv while True: start=recv_data.find(b'\xff') @@ -155,6 +173,8 @@ def remote_client_handler(tcp_client_1:socket): recv_data=recv_data[end+1:] else: break + timer.cancel() + timer.join() tcp_client_1.close() myprint("与代理服务器的连接已断开") close_all()