Как копировать многоадресные пакеты в нескольких интерфейсах?

Я хотел бы отправить поток от сервера Linux до нескольких клиентов Linux через групповой адрес. Клиенты непосредственно подключены к серверу, но в различных интерфейсах: bnep0 и bnep1. Кроме того, насколько я понимаю, мои многоадресные пакеты направляются к моему шлюзу по умолчанию eth0.

Таблица маршрутизации после этого:

Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.1.1     0.0.0.0         UG    0      0        0 eth0
10.0.0.0        0.0.0.0         255.255.255.0   U     0      0        0 bnep1
10.0.1.0        0.0.0.0         255.255.255.0   U     0      0        0 bnep0
192.168.1.0     0.0.0.0         255.255.255.0   U     0      0        0 eth0

Я предполагаю, что должен создать специализированное правило маршрутизации, так, чтобы мои многоадресные пакеты были отправлены не в eth0, но оба к bnep0 и bnep1. Мой вопрос: как я мог сделать это? Я пытался использовать ip route и iptables -t mangle ... TEE, но я не успешно выполнялся.

Заранее спасибо.

1
задан 25 February 2015 в 13:48
1 ответ

Решение состоит не во внедрении правил маршрутизации для дублирования пакетов на двух интерфейсах, а в слиянии интерфейсов в один.

Для этого у вас есть для создания и использования сетевого моста. Мост должен иметь уникальные IP-адреса, тогда как «настоящие» интерфейсы не должны иметь их, даже если они должны работать.

# apt-get install bridge-utils
# ifconfig bnep0 up
# ifconfig bnep1 up
# brctl addbr br0
# brctl addif br0 bnep0
# brctl addif br0 bnep1
# ifconfig br0 10.0.0.1 netmask 255.255.255.0
1
ответ дан 4 December 2019 в 00:12

Теги

Похожие вопросы