SA:MP Black Russia UDP Socket bypass

Hotring

Известный
Автор темы
17
8
Недавно вышел обход для БР, мне стало интересно как он работает, примерную суть я уловил, но теперь хотелось бы воссоздать данный обход полностью.
Код на питоне:
import socket
import random
import subprocess
import time


server = 'vladikavkaz'


destination_ip = f'{server}.blackrussia.online'
destination_port = 5125


def curl_get_request(server):
    command = [r'curl', '-X', 'GET', f'http://{server}.blackrussia.online:80']
    result = subprocess.run(command, capture_output=True, text=True)
    return result.stdout


response = curl_get_request(server)
print(response)

sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM, socket.IPPROTO_UDP)

random_port = random.randint(1024, 65535)
sock.bind(('0.0.0.0', random_port))

print(f'Listening on 0.0.0.0:{random_port} and forwarding to {destination_ip}:{destination_port}')

while True:
    try:
        
        data, addr = sock.recvfrom(1024) 
        print(f'Received packet from {addr}: {data.hex()}')
        
        sock.sendto(data, (destination_ip, destination_port))
        print(f'Forwarded packet to {destination_ip}:{destination_port}')
        
        response, _ = sock.recvfrom(1024) 
        print(f'Received response from {destination_ip}: {response.hex()}')
        
        sock.sendto(response, addr)
        print(f'Sent response back to {addr}')
        
    except Exception as e:
        print(f'An error occurred: {e}')
Что у меня по итогу вышло, сервер пингуется в клиенте SA:MP, но очень криво пинг скачет до 20000 потом пропадает отображение игроков и впринципе название сервера.
На сам сервер соответственно тоже не пускает (обход с onConnectionRequestAccepted стоит).
Подскажите где я что-то не так сделал).