Este artículo es un artículo espejo de traducción automática, por favor haga clic aquí para saltar al artículo original.

Vista: 43222|Respuesta: 1

[Fuente] .NET Core en la captura de tráfico en Linux

[Copiar enlace]
Publicado el 19-1-2021 11:50:07 | | | |
SharpPcap es un software de captura de tráfico multiplataforma que puede operar con .NET, una biblioteca .NET totalmente gestionada y multiplataforma (Windows, Mac, Linux) para capturar paquetes de dispositivos en vivo y basados en archivos.
.net está escrito por SharpPcap, una herramienta de captura de paquetes
https://www.itsvse.com/thread-2914-1-1.html

Dirección de GitHub:El inicio de sesión del hipervínculo es visible.

Un nuevo proyecto de consola .NET Core 3.1 con el siguiente código demo en C# es el siguiente:


Publica tu proyecto en un servidor Linux (¡La publicación no debe configurarse para generar un solo archivo! ¡La publicación no debe configurarse para generar un solo archivo! ¡La publicación no debe configurarse para generar un solo archivo!), el error es el siguiente:

SharpPcap 5.4.0.0, CreatingCaptureFile
Excepción no gestionada. System.DllNotFoundException: No se puede cargar la biblioteca compartida 'libpcap' ni ninguna de sus dependencias. Para ayudar a diagnosticar problemas de carga, considera establecer la variable de entorno LD_DEBUG: liblibpcap: cannot open shared object file: No hay tal archivo ni directorio
   en SharpPcap.LibPcap.Unix.pcap_findalldevs(IntPtr& alldevs, StringBuilder errbuf)
   en SharpPcap.LibPcap.LibPcapSafeNativeMethods.pcap_findalldevs(IntPtr& alldevs, StringBuilder errbuf)
   en SharpPcap.LibPcap.PcapInterface.GetAllPcapInterfaces()
   at SharpPcap.LibPcap.LibPcapLiveDeviceList.GetDevices()
   en SharpPcap.LibPcap.LibPcapLiveDeviceList.Refresh()
   en SharpPcap.LibPcap.LibPcapLiveDeviceList.. ctor()
   en SharpPcap.LibPcap.LibPcapLiveDeviceList.get_Instance()
   en Linux_Packets.Program.Main(String[] args)
Abortado (desecho del núcleo)


El error se debe a que el servidor no instala libpcap, sistema servidor: CentOS Linux versión 8.2.2004 (Core)

Página web oficial de libpcap:El inicio de sesión del hipervínculo es visible.


Instalación de GCC:

Instalación de Flex:



Sin flex, instalar libpcap directamente te pedirá: configure: error: ni flex ni lex



Para instalar bisontes:



Si no lo instalas, el error será el siguiente:


configure: error: yacc is insufficient to compile libpcap.
libpcap requiere Bison, una versión más reciente de Berkeley YACC con soporte
para parsers reentrantes, u otro YACC compatible con ellos.
Por último, descarga e instala libpcap

Instalamos la última versión de libpcap-1.10.0, que por defecto se instala en el directorio /usr/local/lib.

Mi directorio de programas es /root/dotnet/ Así que, necesitoCrea conexiones suaves, el comando es el siguiente:


Recuerda que el programa necesita obtener permisos de ejecución antes de poder ejecutarse, como sigue:

El programa puede ejecutarse normalmente en Linux, como se muestra en la figura siguiente:



(Fin)




Anterior:.NET/C# para obtener el uso de CPU y memoria del proceso especificado
Próximo:OpenTelemetría OpenTracing, recogida de información y datos de OpenCensus
 Propietario| Publicado el 26-9-2025 a las 10:53:52 |
.NET/C# utiliza WinDivert para capturar paquetes y modificarlos en Windows
https://www.itsvse.com/thread-11078-1-1.html
Renuncia:
Todo el software, materiales de programación o artículos publicados por Code Farmer Network son únicamente para fines de aprendizaje e investigación; El contenido anterior no se utilizará con fines comerciales o ilegales; de lo contrario, los usuarios asumirán todas las consecuencias. La información de este sitio proviene de Internet, y las disputas de derechos de autor no tienen nada que ver con este sitio. Debes eliminar completamente el contenido anterior de tu ordenador en un plazo de 24 horas desde la descarga. Si te gusta el programa, por favor apoya el software genuino, compra el registro y obtén mejores servicios genuinos. Si hay alguna infracción, por favor contáctanos por correo electrónico.

Mail To:help@itsvse.com