Interfaz de terminal para capturar e inspeccionar tráfico de red en Linux, basada en eBPF.
microsoft/ebpf-for-windows
Runtime de eBPF para Windows que permite ejecutar toolchains, API y programas de eBPF de Linux sobre el kernel de Windows.
- Estrellas
- 3,588
- Forks
- 310
- Issues abiertos
- 322
- Último commit
- hace 21 horas
¿Qué es?
eBPF for Windows lleva el modelo de programación de eBPF a Windows. Reutiliza proyectos de eBPF existentes, como el compilador JIT uBPF y el verificador PREVAIL, y añade una capa de alojamiento para Windows que permite cargar en el kernel programas creados con toolchains estándar de eBPF, como clang. También ofrece API compatibles con Libbpf y la herramienta de línea de comandos bpftool para cargar y administrar programas.
Los programas se pueden implementar en tres modos: nativo, en el que el bytecode se convierte a C y se compila en un driver de Windows (el modo recomendado y compatible con HVCI habilitado); compilación JIT mediante un servicio en modo de usuario; y un intérprete que solo está disponible en las compilaciones de depuración. Los programas se conectan a hooks del kernel y llaman a funciones helper que envuelven API públicas del kernel de Windows. El proyecto es compatible con Windows 11 y Windows Server 2022 o posterior.
Funciones clave
- 01Ejecuta en Windows programas eBPF creados con toolchains estándar, como clang.
- 02Ofrece API compatibles con Libbpf y compatibilidad con bpftool para cargar programas.
- 03Incluye un modo nativo que compila bytecode eBPF en drivers de Windows y es compatible con HVCI.
- 04Incluye una ruta de compilación JIT que usa el compilador uBPF.
- 05Expone hooks y funciones helper que envuelven API públicas del kernel de Windows.
Casos de uso
- Ejecutar lógica de observabilidad o protección contra DoS en el kernel de Windows mediante herramientas eBPF.
- Portar a Windows programas de redes o trazado basados en eBPF con cambios mínimos en el código fuente.
- Implementar programas eBPF a nivel de kernel en sistemas con HVCI habilitado.
Inicio rápido
- 1
Lee la guía Getting Started Guide en docs/GettingStarted.md para instalar y probar el proyecto
Antes de usarlo
- Requiere Windows 11 o posterior, o Windows Server 2022 o posterior.
- El proyecto se describe a sí mismo como un trabajo en curso.
- Con HVCI habilitado, solo funcionan los programas eBPF en modo nativo, ya que los programas compilados con JIT no pueden ejecutarse y el intérprete no está incluido en las compilaciones de lanzamiento.
En colecciones
Temas
Preguntas frecuentes
- ¿Qué es ebpf-for-windows?
- Runtime de eBPF para Windows que permite ejecutar toolchains, API y programas de eBPF de Linux sobre el kernel de Windows. eBPF for Windows lleva el modelo de programación de eBPF a Windows. Reutiliza proyectos de eBPF existentes, como el compilador JIT uBPF y el verificador PREVAIL, y añade una capa de alojamiento para Windows que permite cargar en el kernel programas creados con toolchains estándar de eBPF, como clang. También ofrece API compatibles con Libbpf y la herramienta de línea de comandos bpftool para cargar y administrar programas.
- ¿ebpf-for-windows es gratuito? ¿Qué licencia tiene?
- ebpf-for-windows es open source bajo la licencia MIT. Revisa los términos de la licencia antes de usarlo en productos comerciales.
- ¿ebpf-for-windows sigue mantenido?
- Mantenimiento activo. El último commit de ebpf-for-windows fue el 7 nov 2026.
- ¿Para qué puedo usar ebpf-for-windows?
- Ejecutar lógica de observabilidad o protección contra DoS en el kernel de Windows mediante herramientas eBPF. Portar a Windows programas de redes o trazado basados en eBPF con cambios mínimos en el código fuente. Implementar programas eBPF a nivel de kernel en sistemas con HVCI habilitado.
- ¿Cómo se instala ebpf-for-windows?
- Lee la guía Getting Started Guide en docs/GettingStarted.md para instalar y probar el proyecto
- ¿Dónde consigo ebpf-for-windows?
- El código fuente y las instrucciones de instalación están en GitHub: https://github.com/microsoft/ebpf-for-windows
Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.
Proyectos relacionados
Biblioteca C y plataforma que envuelven libbpf para compilar y cargar programas eBPF, con compilación remota y compatibilidad retroactiva con distintas versiones del kernel.
CNI basado en eBPF y capa de redes, seguridad y observabilidad para clústeres de Kubernetes, con políticas L3-L7 basadas en identidades y sustitución de kube-proxy.
Tutorial paso a paso de eBPF con ejemplos breves y ejecutables en C, Go y Rust, basado principalmente en libbpf y CO-RE.
Motor experimental de proxy transparente para Linux escrito en Rust, basado en el diseño eBPF y la sintaxis de configuración de dae, con grupos de salida al estilo de sing-box.
Sistema APM para monitorear, trazar y diagnosticar arquitecturas distribuidas y cloud-native de microservicios.