Openwrt dalam mode jembatan - kesalahan kernel ebtables


1

Saya memiliki pengaturan di rumah sebagai berikut:

DHCP clients  -----> (wifi)(bridge) Openwrt -----> (eth)Main Router

Perangkat yang saya gunakan adalah TPlink MR3020 dengan Barrier Breaker dan saya mencoba mengatur proxy transparan untuk lalu lintas jembatan - Saya ingin mengarahkan ulang paket yang melewati jembatan ke server proxy ( privoxy). Saya mencoba menggunakan ebtables. Tetapi ketika saya memasukkan perintah berikut:

ebtables -t broute -A BROUTING -p IPv4 --ip-protocol 6 --ip-destination-port 80 -j redirect --redirect-target ACCEPT

Saya mendapat kesalahan berikut:

Unable to update the kernel. Two possible causes:
1. Multiple ebtables programs were executing simultaneously. The ebtables
userspace tool doesn't by default support multiple ebtables programs running
concurrently. The ebtables option --concurrent or a tool like flock can be
used to support concurrent scripts that update the ebtables kernel tables.
2. The kernel doesn't support a certain ebtables extension, consider
recompiling your kernel or insmod the extension.

Saya mencoba mengaktifkan paket IPv4 dengan insmod, tetapi tidak berhasil.

Ada ide tentang bagaimana mencapai ini?

Jawaban:


0

Pesan kesalahan itu biasanya dihasilkan dari modul kernel yang hilang. Sintaks yang benar dan urutan untuk memuat yang Anda butuhkan adalah:

insmod ebtables # memuat ebtables

insmod ebtable_filter #load tabel filter [tidak sepenuhnya diperlukan]

insmod ebtable_broute # Muat tabel broute

insmod ebt_ip #load penyaringan ip

insmod ebt_redirect #load redirect

lsmod #Periksa apakah mereka aktif


Terima kasih, tetapi tidak ada keberuntungan. Saya mencoba melakukan apa yang Anda katakan, tetapi saya mengambil Failed to find ebt_ip. Maybe it is a built in module ? kesalahan. Saya mencoba menemukan modul ini sebelumnya, tetapi saya tidak dapat menemukannya. Apakah Anda tahu bagaimana saya bisa mengatasi kesalahan ini?
— Enes Aldemir

Jika Anda melihatnya di output find / -iname "*ebt*"maka Anda bisa insmoddengan path lengkap. Jika tidak ada di sana, Anda perlu menemukan modul yang sesuai untuk kernel Anda dan menambahkannya secara manual.
— codemonk113
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.