


Membuka pfring daripada Go: pfring NewRing Ralat: Tiada peranti sedemikian
Apabila melakukan pengaturcaraan rangkaian, kita sering menghadapi beberapa ralat dan pengecualian. Antaranya, masalah "pfring NewRing error: No such device" yang berlaku semasa membuka perpustakaan pfring daripada bahasa Go ialah ralat biasa yang melanda pembangun. Editor PHP Zimo akan menganalisis sebab dan penyelesaian untuk ralat ini dan membantu anda menyelesaikan masalah ini dengan lancar.
Kandungan soalan
Saya ingin memanggil pf_ring daripada kod go menggunakan pakej github.com/google/gopacket/pfring
tetapi tidak dapat menjalankannya pada debian 11 (kod saya berjalan pada debian 10).
Ini kod pergi saya:
package main import ( "github.com/google/gopacket/pfring" "log" ) func main() { _, err := pfring.newring("eno1@0", 1574, pfring.flagpromisc|pfring.flag(1<<14)) if err == nil { log.printf("success!") return } log.fatalf("failure: %s", err) }
Apabila saya menjalankannya:
# ./test-go 2023/01/24 10:12:25 failure: pfring newring error: no such device
Nampaknya antara muka eno1 wujud:
# pf_ringcfg --list-interfaces name: eno1 driver: i40e rss: 12 [supported by zc] name: enp3s0f1 driver: i40e rss: 12 [supported by zc] name: enx0a229512eeb9 driver: cdc_ether rss: 1 [linux driver]
Perkara yang pelik ialah kod yang sama yang ditulis dalam c juga berfungsi:
#include <errno.h> #include <string.h> #include <stdio.h> #include <pfring.h> int main() { pfring* ring = pfring_open("eno1@0", 1574, pf_ring_promisc | pf_ring_zc_not_reprogram_rss); if (ring != null) { printf("success!\n"); exit(0); } int e = errno; char* msg = strerror(e); printf("failure %d: %s\n", e, msg); exit(1); }
# ./test-c Success!
Ada idea?
Penyelesaian
Ternyata ini adalah pepijat dalam gopacket/pfring, lihat Isu #147 dan membetulkan. Panggilan perpustakaan ke pfring_open
melaporkan tiada ralat, tetapi perpustakaan telah menyalahtafsir kod pemulangan.
Atas ialah kandungan terperinci Membuka pfring daripada Go: pfring NewRing Ralat: Tiada peranti sedemikian. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Ia tidak mudah untuk menukar XML ke PDF secara langsung pada telefon anda, tetapi ia boleh dicapai dengan bantuan perkhidmatan awan. Adalah disyorkan untuk menggunakan aplikasi mudah alih ringan untuk memuat naik fail XML dan menerima PDF yang dihasilkan, dan menukarnya dengan API awan. API awan menggunakan perkhidmatan pengkomputeran tanpa pelayan, dan memilih platform yang betul adalah penting. Kerumitan, pengendalian kesilapan, keselamatan, dan strategi pengoptimuman perlu dipertimbangkan ketika mengendalikan penjanaan XML dan penjanaan PDF. Seluruh proses memerlukan aplikasi front-end dan API back-end untuk bekerjasama, dan ia memerlukan pemahaman tentang pelbagai teknologi.

Perpustakaan yang digunakan untuk operasi nombor terapung dalam bahasa Go memperkenalkan cara memastikan ketepatannya ...

Masalah Threading Giliran di GO Crawler Colly meneroka masalah menggunakan Perpustakaan Colly Crawler dalam bahasa Go, pemaju sering menghadapi masalah dengan benang dan permintaan beratur. � ...

Perbezaan antara percetakan rentetan dalam bahasa Go: perbezaan kesan menggunakan fungsi println dan rentetan () sedang ...

Masalah menggunakan redisstream untuk melaksanakan beratur mesej dalam bahasa Go menggunakan bahasa Go dan redis ...

Dua cara untuk menentukan struktur dalam bahasa Go: perbezaan antara VAR dan jenis kata kunci. Apabila menentukan struktur, pergi bahasa sering melihat dua cara menulis yang berbeza: pertama ...

Perpustakaan mana yang dibangunkan oleh syarikat besar atau projek sumber terbuka yang terkenal? Semasa pengaturcaraan di GO, pemaju sering menghadapi beberapa keperluan biasa, ...

Apa yang perlu saya lakukan jika label struktur tersuai di Goland tidak dipaparkan? Apabila menggunakan Goland untuk Pembangunan Bahasa GO, banyak pemaju akan menghadapi tag struktur tersuai ...
