-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathservidor.py
More file actions
35 lines (30 loc) · 1.07 KB
/
Copy pathservidor.py
File metadata and controls
35 lines (30 loc) · 1.07 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
import socket
def main():
host = '0.0.0.0'
port = 5000
server = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
server.bind((host, port))
server.listen()
print('Servidor escuchando en el puerto:', port)
while True:
conn, addr = server.accept()
print('Conexión establecida desde:', addr)
dominio = conn.recv(1024).decode()
print('Dominio recibido:', dominio)
try:
ip = socket.gethostbyname(dominio)
ip_servidor = socket.gethostbyname(socket.gethostname())
respuesta = f"""
Dominio: {dominio}
IP del dominio: {ip}
Tu IP: {addr[0]}
IP del servidor: {ip_servidor}
"""
except Exception:
respuesta = 'Error: No se pudo resolver el dominio.'
# ESTO DEBE ESTAR FUERA DEL TRY/EXCEPT:
# Se envía la respuesta (sea la IP o sea el error) y se cierra la conexión con ESTE cliente.
conn.send(respuesta.encode())
conn.close()
if __name__ == '__main__':
main()