Me estaba confundiendo un poco el uso de sockets raw y libcap. Puede, cualquiera en simple señalar ventajas de usar ambos. Leí algunos enlaces, pero me está confundiendo.¿Libpcap usa conectores crudos debajo de ellos?
Respuesta
"libpcap" y "raw sockets" son temas diferentes.
Libpcap es una biblioteca de captura de paquetes para Linux que se utiliza para capturar el tráfico/paquetes que pasan a través de una interfaz de red como eth0.
En Windows, la biblioteca Winpcap hace lo mismo.
Los sockets sin procesar son una característica del socket api proporcionado por el sistema operativo que se puede usar para enviar paquetes con encabezados definidos por la aplicación y no el sistema operativo. Entonces, usando sockets sin procesar podemos especificar el IP, los encabezados TCP y enviar los paquetes.
Los conectores Raw están disponibles en Linux desde siempre. En Windows, los conectores RAW estaban disponibles solo en Windows XP y Windows XP (SP1).
En Windows, la biblioteca winpcap tiene una función para enviar paquetes con contenido arbitrario, lo que significa que la funcionalidad de socket sin formato se puede lograr con winpcap en Windows.
libpcap utiliza diferentes mecanismos en diferentes sistemas operativos. En Linux, usa sockets crudos o cocinados PF_PACKET, dependiendo de si conoce el tipo de capa de enlace de Linux (valor ARPHRD_) para la interfaz y si las interfaces de ese tipo de capa de enlace producen un encabezado de capa de enlace útil (PPP las interfaces no lo hacen, por lo que no puede ver el identificador de protocolo de la capa de red). En Irix, usa sockets PF_RAW con el protocolo RAWPROTO_SNOOP. En otros sistemas, no usa conectores crudos en absoluto.
Los sockets sin procesar se pueden utilizar para varios propósitos, como enviar y recibir paquetes IPv4 sin tener que preocuparse por la capa de enlace (es decir, se conectan a la capa IP en lugar del controlador del dispositivo de red). Si necesita acceder a la capa de enlace sin formato, los sockets sin formato en la mayoría de los sistemas operativos no admiten eso (Linux e Irix son excepciones obvias, como en el párrafo anterior), pero libpcap sí lo hace.
- 1. ¿Debo usar WCF o conectores crudos?
- 2. Integrando SSL en un programa que usa conectores BSD
- 3. libpcap Reensamblaje de paquetes IP
- 4. ¿Realmente Node.js usa varios subprocesos debajo?
- 5. Uso de gprof con conectores
- 6. libpcap para capturar 10 Gbps NIC
- 7. Correos electrónicos crudos necesarios para las pruebas
- 8. ¿Libpcap siempre hace una copia del paquete?
- 9. ¿Qué usa Flash VM debajo del capó para dibujar?
- 10. Ventajas de rendimiento de los conectores nativos de Apache Tomcat
- 11. ¿Por qué los tipos crudos en un lugar causan callites genéricos en otro lugar para ser tratados como crudos?
- 12. C y Python: comunicación con conectores
- 13. Conectores Mylyn para GitHub y BitBucket
- 14. Conectores Ajax vs. Web vs. Trabajadores web
- 15. Escuchando en dos dispositivos a la vez con libpcap
- 16. Árbol/dendrograma con conectores de codo en d3
- 17. Pago y envío Proyecto de Maven desde SCM - sin conectores
- 18. ¿Utiliza Python xmlrpclib con conectores de dominio Unix?
- 19. etiquetas H3 y H4 debajo de ella
- 20. Varios APK interactuando entre ellos
- 21. NSURLConnection estrellarse debajo de 10.5.7
- 22. botones debajo expanding scrollview
- 23. Cómo puedo instalar conectores SVN manualmente en Eclipse
- 24. Multi-cliente, conectores asíncronos en C#, mejores prácticas?
- 25. ¿Es posible encontrar conectores tmux actualmente en uso?
- 26. ¿Cómo puedo saber qué conectores Eclipse M2E tengo instalados?
- 27. Crear una solicitud HTTP sin formato con conectores
- 28. MsgBox aparece debajo de la pantalla de Splash en VB.NET
- 29. Operaciones atómicas: debajo del capó
- 30. Arrastrar UIView debajo del dedo
En Windows, utiliza un controlador de red de nivel inferior para capturar datos. Los conectores RAW están restringidos a usuarios administradores en versiones modernas de Windows. –