Мост (br0) не пересылает пакеты (RPi)

Мост (br0) не пересылает пакеты (RPi)

В настоящее время я нахожусь в середине проекта сети LTE. У меня есть два интерфейса wwan (wwan0.1 и wwan0.2) и два интерфейса Ethernet (eth0 и eth1). Эти интерфейсы настроены, как показано ниже:

                       +-------------------------------------------------------------------------------------+ 
                       | Raspberry Pi                                                                        |
                       |    +------------------+    +-----+    +-----+    +-----+                            |
 +----------------+    |    |  +------------+  |    |     |    |     |    |     |    +-------------------+   |
 |  PC 1          |    |    |  |            |  |    |     |    |     |    |     |    | WWAN0.1 (Private) |   | 
 |  DHCP          |----+----+--|    ETH0    |  |    |     |    |     |    |     |<-->| Static            |   | 
 |  192.18.1.123  |    |    |  |            |  |    |  E  |    |  D  |    |  I  |    | 10.16.ppp.ppp     |   |
 +----------------+    |    |  +------------+  |    |  B  |    |  N  |    |  P  |    +-------------------+   |
                       |    |                  |    |  T  |    |  S  |    |     |                            |
                       |    |       BR0        |<-->|  A  |<-->|  M  |<-->|  R  |                            |
                       |    |                  |    |  B  |    |  A  |    |  O  |                            |
 +----------------+    |    |  +------------+  |    |  L  |    |  S  |    |  U  |    +-------------------+   |
 |  PC 2          |    |    |  |            |  |    |  E  |    |  Q  |    |  T  |    | WWAN0.1 (Public)  |   |
 |  DHCP          |----+----+--|    ETH1    |  |    |  S  |    |     |    |  E  |<-->| DHCP              |   |
 |  192.18.1.169  |    |    |  |            |  |    |     |    |     |    |     |    | 10.xxx.xxx.xxx    |   |
 +----------------+    |    |  +------------+  |    |     |    |     |    |     |    +-------------------+   |
                       |    +------------------+    +-----+    +-----+    +-----+                            |
                       |                                                                                     |
                       +-------------------------------------------------------------------------------------+

Следующие работы:

  • С RPi я могу пинговать сервер в частной сети wwan0.1
  • С RPi я могу пинговать сервер в публичной сети wwan0.2
  • ПК1 и ПК2 получают IP-адрес от DNSMasq (через br0)
  • С ПК1 я могу пинговать ПК2
  • С ПК2 я могу пинговать ПК1
  • С ПК1 и ПК2 я могу пропинговать RPi (192.168.1.1)
  • С ПК1 и ПК2 я могу подключиться к RPi через SSH (192.168.1.1)

Однако следующее не работает:

  • Я не могу выполнить ping ни в частной, ни в публичной сети с ПК1
  • Я не могу выполнить ping ни в частных, ни в публичных сетях с ПК2

Вот моя текущая настройка

brctl

brctl show
bridge name     bridge id               STP enabled     interfaces
br0             8000.0050b69c9bf5       no              eth0
                                                        eth1

ebtables

Bridge table: filter

Bridge chain: FORWARD, entries: 4, policy: DROP
-p IPv4 -j ACCEPT
-p ARP -j ACCEPT
-j ACCEPT
--log-level info --log-prefix "EBFW" --log-ip -j CONTINUE

Bridge chain: INPUT, entries: 4, policy: DROP
-p IPv4 -j ACCEPT
-p ARP -j ACCEPT
-j ACCEPT
--log-level info --log-prefix "EBFW" --log-ip -j CONTINUE

Bridge chain: OUTPUT, entries: 4, policy: DROP
-p IPv4 -j ACCEPT
-p ARP -j ACCEPT
-j ACCEPT
--log-level info --log-prefix "EBFW" --log-ip --log-arp -j DROP

sysctl.conf

net.ipv4.ip_forward=1
net.ipv4.conf.br0.bc_forwarding=1
net.bridge.bridge-nf-call-ip6tables = 0
net.bridge.bridge-nf-call-iptables = 0
net.bridge.bridge-nf-call-arptables = 0

IP-маршрут

default dev wwan0.2 scope link
10.16.ppp.ppp/30 dev wwan0.1 proto kernel scope link src 10.16.ppp.ppp
10.xxx.xxx.xxx/29 dev wwan0.2 proto kernel scope link src 10.xxx.xxx.xxx
10.10.124.0/24 dev wwan0.1 scope link
10.100.0.0/22 dev wwan0.1 scope link
192.168.1.0/24 dev br0 proto kernel scope link src 192.168.1.1

Кто-нибудь знает, чего не хватает?

Ваше здоровье,

Ли

решение1

Вероятно, вы пропустили часть NAT, поскольку для этого потребуется маршрутизация маршрутизатора между локальной сетью, использующей частные IP-адреса с одной стороны и публичные IP-адреса с другой стороны.

Что-нибудь простое, например:

iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -o wwan+ -j MASQUERADE

Если у вас есть полный контроль над wwan и его удаленной частью, можно представить, что удаленные устройства на частной части (wwan0.1) могли бы получать прямые маршруты к 192.168.1.0/24 через 10.16.ppp.ppp вместо использования NAT на RPi, но возможность сделать это будет зависеть от того, как реализована связь.

Связанный контент