Пересылка кадров Ethernet на интерфейс с использованием ebtables/ebtables отсутствует таблица маршрутизации

Сегодня я потратил много времени на то, чтобы выяснить, как это сделать, но не смог найти решения. На мой взгляд, это должно быть возможно. Я пытаюсь настроить следующую настройку:

обзор настройки

Чтение интерфейса и пересылка наenp0s3использование Go должно работать без проблем... Надеюсь. Если я сделаюping 10.0.0.10 -I tap1Я вижу кадры эфира в приложении Go. (В настоящее время я использую https://github.com/songgao/water , но, вероятно, перейду на https://github.com/mdlayher/packet , если у меня это заработает)

Проблема, с которой я столкнулся, заключается в пересылке etherframes изenp0s8кtap1интерфейс. Я пробовал несколько команд, но это не работает. Я попробовал использоватьiptables:

iptables -A FORWARD -i enp0s8 -o tap1 -j ACCEPTи подобные команды.

Затем я нашел этот вопрос: Tap0 не получает трафик , где Шервуд Ван сказал следующее:

      If you want to force tap0 to recieve its own IP packets, you may use ebtables. When packets are DROPed in the ethernet layer of tap0 at broute table, these packets go into the the IP layer of tap0 instead of eth0. See also: http://ebtables.sourceforge.net/examples/real.html#example1

Звучит именно то, что мне нужно. Кажется, я нашел здесь команду, которую он имеет в виду: https://ebtables.netfilter.org/examples/basic.html#ex_brouter .

ebtables -t broute -A BROUTING -p ipv4 -i tap1 --ip-dst 172.16.1.1 -j DROP

Однако я получаю следующую ошибку:ebtables: No chain/target/match by that name. Если я посмотрюman ebtablesя не вижуbrouteупомянутая таблица. Хотя я вижу это здесь https://linux.die.net/man/8/ebtables . Так я что-то упускаю?

я тоже попробовалebtables -A FORWARD -i enp0s8 -o tap1 -j ACCEPTс https://www.linuxquestions.org/questions/linux-networking-3/ebtables-to-setup-forwarding-and-ethernet-level-nat-4175538316/ , но это тоже не работает.

0 ответов

Другие вопросы по тегам