Buenas, tengo un par de dudas de el ejercicio 6 tras mirar la solución propuesta en el parcial julio 2020.
Para enviar la alerta a los administradores simplemente se hace:
sockAlerta = socket.udp()
sockAlerta.sendto(data, 10.10.10.255, 8523)
sockAlerta.close()
Que es la dirección ip 10.10.10.255? Actúa esta cómo un broadcast a todos los hosts para los cuales su ip es de tipo 10.10.10.* ?
Antes de "utilizar" un socket, no debe este bindearse? Por que no se hizo un master.bind("10.10.10.2",0)?
Cuando es más apropiado bindear todas las interfaces en vez de una dirección ip/hostname? Por ejemplo, por que en la solucion al bindear el socket tcp del analizador se hace master.bind (*, 2562) en vez de master.bind("10.10.10.2",2562)?
Finalmente, tengo un par de dudas sobre el manejo de errores. Por ejemplo:
clientSock, err = serverSock.accept(); //espero conexiones
if (err == 'timeout')
break;
¿Por
qué se chequea si hay timeout si en ningun momento este se setea (sockets bloqueantes)? También
en otra parte se chequea si un socket.recieve() da err="closed", lo
cual en la cartilla no figura como un posible valor de retorno en la cartilla.
Desde ya,gracias.