Sí, pero con un socket sin procesar no estás escuchando un puerto , estás escuchando un protocolo IP. TCP, por ejemplo, es en realidad el protocolo IP 6. Dentro del protocolo 6 hay una definición de un mecanismo para multiplexar / demultiplexar conexiones en forma de puertos. Hay muchos otros protocolos (si usa un sistema similar a UNIX, consulte / etc / protocolos o vea la lista oficial de Números de protocolo de la IANA). Otros ejemplos comunes de protocolos IP pueden incluir UDP (… también tiene puertos), ICMP (tipos de mensajes) y GRE (discriminadores de túnel).
Si está implementando un socket sin procesar (consulte raw (7) – página de manual de Linux para comenzar) deberá seleccionar un nuevo número de protocolo. En ese momento, cualquier paquete que llegue a la caja con ese tipo de protocolo IP será dirigido a usted. Si decide implementar una noción de puertos y cómo permite que esos puertos se vinculen / escuchen, depende completamente de usted, al igual que cualquier tipo de mecanismo para verificación de datos, retransmisión, secuenciación, control de flujo, dimensionamiento de mensajes, negociación de sesión, etc., etc. Si algo de esto parece excesivo, es posible que desee apegarse a bind () y / o listen ().
- ¿Cuándo se usa POP sobre IMAP?
- ¿Cuál es el significado de la conectividad de red en Android?
- ¿Cómo ayuda el hipervisor en un host ESXi con una conexión Ethernet o una conexión de red a una máquina virtual?
- ¿Cuáles son algunas lagunas de seguridad si los navegadores pueden abrir puertos TCP directamente con javascript?
- ¿Cuántos tipos de topología de red hay y en qué se diferencian?