import socket

server = socket.socket(socket.AF_INET, socket.SOCK_STREAM)  # создаем TCP-сокет
server.bind(("0.0.0.0", 10000))  # слушаем все интерфейсы на порту 10000
server.listen(1)  # разрешаем 1 подключение в очереди
print("TCP сервер запущен")

while True:
    conn, addr = server.accept()  # принимаем подключение
    print(f"Подключение от {addr}")

    data = conn.recv(1024)  # получаем данные (макс 1024 байта)
    if not data:
        break
    conn.sendall(data.upper())  # отправляем данные обратно в верхнем регистре

    conn.close()  # закрываем соединение

    if data.upper() == b'EXIT':  # если получили "EXIT" - выходим
        break

server.close()