from http.server import BaseHTTPRequestHandler, HTTPServer import random, ssl servers = ['https://10.0.1.1:443', 'https://10.0.1.2:443', 'https://10.0.1.3:443', 'https://10.0.1.4:443', 'https://10.0.1.5:443'] class Handler(BaseHTTPRequestHandler): def do_GET(self): server = random.choice(servers) self.send_response(302) self.send_header('Location', server) self.end_headers() self.wfile.write(b'Redirecting...') # HTTPS server certfile = 'cert.pem' keyfile = 'key.pem' ssl_context = ssl.create_default_context(ssl.Purpose.CLIENT_AUTH) ssl_context.load_cert_chain(certfile=certfile, keyfile=keyfile) server_address = ('', 443) load_balancer = HTTPServer(server_address, Handler) load_balancer.socket = ssl_context.wrap_socket(load_balancer.socket) load_balancer.serve_forever()