Saltar al contenido

Sockets: uso de INADDR_ANY en el lado del cliente

Te sugerimos que pruebes esta solución en un ambiente controlado antes de pasarlo a producción, un saludo.

Solución:

Esta es la respuesta proporcionada por nos en un comentario. Si nos regresa y lo publica como respuesta, marcaré la publicación de nos como la respuesta y eliminaré esta.

INADDR_ANY normalmente se define como 0. Esa es la dirección IP 0.0.0.0. RFC 1122 dice que significa “Este host en esta red”. La pila IP de Linux parece simplemente enrutar esto a la interfaz de bucle invertido. (por ejemplo, intente hacer ping 0.0.0.0 o incluso simplemente hacer ping 0). Diría que el autor cometió un error tipográfico y debería haber usado INADDR_LOOPBACK.

Parece que su pregunta no se trata realmente del “lado del cliente”, sino de bind contra connect.

INADDR_ANY se puede usar con sensatez bind tanto en el cliente como en el servidor. usándolo con connect() no tiene sentido y debería causar una falla en la conexión.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *