Ten artykuł jest lustrzanym artykułem tłumaczenia maszynowego, kliknij tutaj, aby przejść do oryginalnego artykułu.

Widok: 43222|Odpowiedź: 1

[Źródło] .NET Core w przechwytywaniu ruchu Linux

[Skopiuj link]
Opublikowano 19.01.2021, 11:50:07 | | | |
SharpPcap to wieloplatformowe oprogramowanie do przechwytywania ruchu, które może działać z .NET, w pełni zarządzaną wieloplatformową (Windows, Mac, Linux) biblioteką .NET do przechwytywania pakietów z urządzeń działających i opartych na plikach.
.net jest napisany przez SharpPcap, narzędzie do przechwytywania pakietów
https://www.itsvse.com/thread-2914-1-1.html

Adres GitHub:Logowanie do linku jest widoczne.

Nowy projekt konsoli .NET Core 3.1 z następującym kodem demonstracyjnym w C# wygląda następująco:


Publikuj swój projekt na serwerze Linux (Publikowanie nie może być ustawione na generowanie pojedynczego pliku!! Publikowanie nie może być ustawione na generowanie pojedynczego pliku!! Publikowanie nie może być ustawione na generowanie pojedynczego pliku!!), błąd jest następujący:

SharpPcap 5.4.0.0, Tworzenie pliku Capture.
Wyjątek nieobsługiwany. System.DllNotFoundException: Nie można załadować współudostępnionej biblioteki 'libpcap' ani jednej z jej zależności. Aby pomóc w diagnozowaniu problemów z ładowaniem, rozważ ustawienie zmiennej środowiskowej LD_DEBUG: liblibpcap: nie można otworzyć pliku obiektu współdzielonego: Brak takiego pliku ani katalogu
   at SharpPcap.LibPcap.Unix.pcap_findalldevs(IntPtr& alldevs, StringBuilder errbuf)
   at SharpPcap.LibPcap.LibPcapSafeNativeMethods.pcap_findalldevs(IntPtr& alldevs, StringBuilder errbuf)
   at SharpPcap.LibPcap.PcapInterface.GetAllPcapInterfaces()
   na stronie SharpPcap.LibPcap.LibPcapLiveDeviceList.GetDevices()
   na stronie SharpPcap.LibPcap.LibPcapLiveDeviceList.Refresh()
   na stronie SharpPcap.LibPcap.LibPcapLiveDeviceList.. ctor()
   at SharpPcap.LibPcap.LibPcapLiveDeviceList.get_Instance()
   at Linux_Packets.Program.Main(String[] args)
Przerwanie (zrzucenie rdzenia)


Błąd jest spowodowany tym, że serwer nie instaluje libpcap, system serwera: CentOS Linux release 8.2.2004 (Core)

Oficjalna strona LibpCAP:Logowanie do linku jest widoczne.


Instalacja GCC:

Instalacja Flex:



Bez Flexa, bezpośrednia instalacja libpcap wywoła: konfiguracja: błąd: Nie znaleziono ani flex, ani lex



Aby zainstalować bizon:



Jeśli go nie zainstalujesz, błąd będzie wyglądał następująco:


configure: error: yacc is insufficient to compile libpcap.
libpcap wymaga Bison, nowszej wersji Berkeley YACC z wsparciem
dla parserów reentrantowych lub innego YACC kompatybilnego z nimi.
Na koniec, pobierz i zainstaluj libpcap

Instalujemy najnowszą wersję libpcap-1.10.0, która domyślnie jest zainstalowana w katalogu /usr/local/lib.

Mój katalog programów to /root/dotnet/ Więc potrzebujęTworz miękkie więzi, polecenie brzmi następująco:


Pamiętaj, że program musi otrzymać uprawnienia do wykonywania przed uruchomieniem, w następujący sposób:

Program może działać normalnie na Linuksie, jak pokazano na poniższym rysunku:



(Koniec)




Poprzedni:.NET/C#, aby uzyskać wykorzystanie CPU i pamięci przez określony proces
Następny:OpenTelemetry OpenTracing OpenCensus zbieranie informacji i zbieranie danych
 Ziemianin| Opublikowano 2025-9-26 10:53:52 |
.NET/C# wykorzystuje WinDivert do przechwytywania pakietów i ich modyfikacji na Windows
https://www.itsvse.com/thread-11078-1-1.html
Zrzeczenie się:
Całe oprogramowanie, materiały programistyczne lub artykuły publikowane przez Code Farmer Network służą wyłącznie celom edukacyjnym i badawczym; Powyższe treści nie mogą być wykorzystywane do celów komercyjnych ani nielegalnych, w przeciwnym razie użytkownicy ponoszą wszelkie konsekwencje. Informacje na tej stronie pochodzą z Internetu, a spory dotyczące praw autorskich nie mają z nią nic wspólnego. Musisz całkowicie usunąć powyższą zawartość z komputera w ciągu 24 godzin od pobrania. Jeśli spodoba Ci się program, wspieraj oryginalne oprogramowanie, kup rejestrację i korzystaj z lepszych, autentycznych usług. W przypadku naruszenia praw prosimy o kontakt mailowy.

Mail To:help@itsvse.com