Το SharpPcap είναι ένα λογισμικό καταγραφής κυκλοφορίας πολλαπλών πλατφορμών που μπορεί να λειτουργήσει με .NET, μια πλήρως διαχειριζόμενη βιβλιοθήκη .NET πολλαπλών πλατφορμών (Windows, Mac, Linux) για τη λήψη πακέτων από ζωντανές συσκευές και συσκευές που βασίζονται σε αρχεία.
Διεύθυνση GitHub:Η σύνδεση με υπερσύνδεσμο είναι ορατή.
Ένα νέο έργο κονσόλας .NET Core 3.1 με τον ακόλουθο κώδικα επίδειξης C# έχει ως εξής:
Δημοσιεύστε το έργο σας σε διακομιστή Linux (Η δημοσίευση δεν πρέπει να ρυθμιστεί ώστε να δημιουργεί ένα μόνο αρχείο!! Η δημοσίευση δεν πρέπει να ρυθμιστεί ώστε να δημιουργεί ένα μόνο αρχείο!! Η δημοσίευση δεν πρέπει να ρυθμιστεί ώστε να δημιουργεί ένα μόνο αρχείο!!), το σφάλμα έχει ως εξής:
SharpPcap 5.4.0.0, Δημιουργία αρχείου λήψης Ανεπίλυτη εξαίρεση. System.DllNotFoundException: Δεν είναι δυνατή η φόρτωση της κοινόχρηστης βιβλιοθήκης 'libpcap' ή μιας από τις εξαρτήσεις της. Για να βοηθήσετε στη διάγνωση προβλημάτων φόρτωσης, εξετάστε το ενδεχόμενο να ορίσετε τη μεταβλητή περιβάλλοντος LD_DEBUG: liblibpcap: δεν είναι δυνατό το άνοιγμα αρχείου κοινόχρηστου αντικειμένου: Δεν υπάρχει τέτοιο αρχείο ή κατάλογος στο SharpPcap.LibPcap.Unix.pcap_findalldevs(IntPtr& alldevs, StringBuilder errbuf) στο SharpPcap.LibPcap.LibPcapSafeNativeMethods.pcap_findalldevs(IntPtr& alldevs, StringBuilder errbuf) στο SharpPcap.LibPcap.PcapInterface.GetAllPcapInterfaces() στο 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 θα σας ζητήσει: διαμόρφωση: σφάλμα: Δεν βρέθηκε ούτε flex ούτε lex
Για να εγκαταστήσετε το bison:
Εάν δεν το εγκαταστήσετε, το σφάλμα θα είναι το εξής:
configure: error: yacc is insufficient to compile libpcap. Το libpcap απαιτεί Bison, μια νεότερη έκδοση του Berkeley YACC με υποστήριξη για τους αναλυτές επανεισόδου ή άλλο YACC συμβατό με αυτούς. Τέλος, κατεβάστε και εγκαταστήστε το libpcap
Εγκαθιστούμε την πιο πρόσφατη έκδοση του libpcap-1.10.0, η οποία είναι εγκατεστημένη στον κατάλογο /usr/local/lib από προεπιλογή.
Ο κατάλογος του προγράμματός μου είναι /root/dotnet/ Λοιπόν, χρειάζομαιΔημιουργήστε απαλές συνδέσεις, η εντολή είναι η εξής:
Να θυμάστε ότι το πρόγραμμα πρέπει να λάβει δικαιώματα εκτέλεσης για να μπορέσει να εκτελεστεί, ως εξής:
Το πρόγραμμα μπορεί να τρέξει κανονικά σε Linux, όπως φαίνεται στο παρακάτω σχήμα:
(Τέλος)
|