SharpPcap — это кроссплатформенное программное обеспечение для захвата трафика, которое может работать с .NET — полностью управляемой кроссплатформенной (Windows, Mac, Linux) библиотекой .NET для захвата пакетов с живых и файловых устройств.
Адрес на GitHub:Вход по гиперссылке виден.
Новый консольный проект для .NET Core 3.1 с следующим демо-кодом на C# выглядит следующим образом:
Опубликуйте свой проект на сервере Linux (Публикация не должна быть настроена на генерацию одного файла!! Публикация не должна быть настроена на генерацию одного файла!! Публикация не должна быть настроена на генерацию одного файла!!), ошибка следующая:
SharpPcap 5.4.0.0, Создание CaptureFile Необработанное исключение. System.DllNotFoundException: Не удаётся загрузить общую библиотеку 'libpcap' или одну из её зависимостей. Чтобы помочь диагностировать проблемы с загрузкой, рассмотрите возможность установки LD_DEBUG переменной среды: liblibpcap: cannot open shared object file: нет такого файла или каталога at SharpPcap.LibPcap.Unix.pcap_findalldevs(IntPtr&alldevs, StringBuilder errbuf) at SharpPcap.LibPcap.LibPcapSafeNativeMethods.pcap_findalldevs(IntPtr&alldevs, StringBuilder errorbuf) на SharpPcap.LibPcap.PcapInterface.GetAllPcapInterfaces() at SharpPcap.LibPcap.LibPcapLiveDeviceList.GetDevices() на SharpPcap.LibPcap.LibPcapLiveDeviceList.Refresh() на SharpPcap.LibPcap.LibPcapLiveDeviceList.. ctor() в SharpPcap.LibPcap.LibPcapLiveDeviceList.get_Instance() на Linux_Packets.Program.Main(String[] args) Прекращено (ядро сброшено)
Ошибка возникла из-за того, что сервер не устанавливает libpcap, серверная система: CentOS Linux релиз 8.2.2004 (Core)
Официальный сайт libpcap:Вход по гиперссылке виден.
Установка GCC:
Установка Flex:
Без flex установка libpcap напрямую сделает запрос: configure: error: ни flex, ни lex не найдены.
Чтобы установить бизонов:
Если вы не установите его, ошибка будет следующей:
configure: error: yacc is insufficient to compile libpcap. libpcap требует Bison — более новой версии Berkeley YACC с поддержкой для реентрантных парсеров или другого YACC, совместимого с ними. Наконец, скачайте и установите libpcap
Мы устанавливаем последнюю версию libpcap-1.10.0, которая по умолчанию установлена в каталоге /usr/local/lib.
Моя папка программ — /root/dotnet/ Так что нужноСоздание мягких соединений, команда следующая:
Помните, что программе необходимо предоставить права на выполнение перед её запуском, а именно так:
Программа может нормально работать на Linux, как показано на рисунке ниже:
(Конец)
|