Skip to content

Commit b028e32

Browse files
authored
Enhance sniffer.md with Libpcap details
Added information about Libpcap, its functionality, and supported languages.
1 parent fbfdfec commit b028e32

File tree

1 file changed

+31
-0
lines changed

1 file changed

+31
-0
lines changed

content/glosario/sniffer.md

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -54,3 +54,34 @@ graph TD
5454
D(Paquete 3: IP a PC3) --> B;
5555
B -- modo promiscuo --> F(Captura todo el tráfico);
5656
B -- modo normal --> E(Captura solo el tráfico a PC1);
57+
```
58+
59+
### **Libpcap y un ejemplo de Sniffer**
60+
61+
**Libpcap** es una librería de bajo nivel, no un programa de usuario final, que proporciona una interfaz para capturar paquetes de red directamente desde una tarjeta de red (NIC). Es la base sobre la que se construyen herramientas populares como Wireshark y tcpdump. Permite a los programadores capturar y filtrar el tráfico de la red, lo que la hace fundamental para el desarrollo de herramientas de monitoreo y análisis de red.
62+
63+
---
64+
65+
#### **Diagrama de funcionamiento de un sniffer basado en Libpcap**
66+
67+
Este diagrama ilustra el rol de `libpcap` como intermediario entre la placa de red y una aplicación de análisis.
68+
69+
```mermaid
70+
graph TD
71+
A[Tráfico de Red] --> B(Tarjeta de Red<br/>(NIC));
72+
B --> C(Libpcap<br/>(Librería de captura));
73+
C --> D[Aplicación de Sniffer<br/>(Ej: tcpdump, Wireshark)];
74+
D --> E[Análisis y Visualización];
75+
```
76+
77+
##### **Lenguajes con soporte para libpcap**
78+
79+
`Libpcap` es una biblioteca de bajo nivel escrita en C, por lo que su soporte se extiende a otros lenguajes a través de "bindings" o "wrappers" que traducen la API de C a la sintaxis del lenguaje correspondiente. Así que si conoces alguno de los siguientes lenguajes de la lista, puedes jugar fácilmente con `Libpcap`.
80+
81+
* **C / C++**: Tienen soporte nativo, ya que `libpcap` es una biblioteca de C.
82+
* **Python**: Se utiliza con librerías como `pypcap` o `scapy`.
83+
* **Go**: El paquete `gopacket` es una opción popular.
84+
* **Rust**: Cuenta con el crate `pcap`, que proporciona una interfaz segura.
85+
* **Java**: Se puede usar con librerías como `Jpcap` y `Pcap4j`.
86+
* **Node.js**: A través de módulos como `node-pcap`.
87+
* **Perl**: Con módulos como `Net::Pcap`.

0 commit comments

Comments
 (0)