🛠 Routeur / passerelle réseau double Gigabit avec OpenWrt et PoE

Radxa ROCK 3B (Rockchip RK3568) · avance · Schéma : IMG-radxa-rock-3b-avance-1-rock3b-routeur-dual-gbe.svg — Radxa ROCK 3B sous OpenWrt, deux ports Ethernet en WAN/LAN, HAT PoE 25 W alimentant la carte via le switch

Objetivos

Transformar la ROCK 3B en router/puerta de enlace: dos puertos Gigabit (gmac0 + gmac1, ambos rgmii-id en el device tree mainline), un puerto alimentable por PoE mediante el HAT Radxa de 25 W (el puerto cercano a la pila de USB), y una sección oficial de OpenWrt en la documentación de Radxa. Caso típico: box → WAN (eth0), LAN (eth1) hacia un switch, la tarjeta alimentada por el PoE del switch — cero alimentación de red eléctrica.

Material

Código completo

# 1. Prérequis ABSOLU sur toute image non-Radxa : U-Boot récent, sinon eth1 meurt
#    (« rk_gmac-dwmac ... eth1: Failed to reset the dma ») — flasher l'image SPI
#    Radxa actuelle ou un mainline rock-3b-rk3568_defconfig AVANT tout le reste.

# 2. Option A — OpenWrt (section officielle docs.radxa.com other-os/openwrt) :
#    écrire l'image, configurer /etc/config/network (eth0=WAN wan, eth1=LAN lan),
#    firewall zone wan=LAN->WAN ; le boot NVMe OpenWrt est du DIY (forum 225022).

# 3. Option B — Debian + NAT manuel :
sudo apt install isc-dhcp-server nftables
sudo sysctl -w net.ipv4.ip_forward=1
sudo nft add table ip nat ; sudo nft add chain ip nat postrouting '{ type nat hook postrouting priority 100 ; }'
sudo nft add rule ip nat postrouting oifname "eth0" masquerade
sudo ip link set eth1 up ; sudo ip addr add 192.168.10.1/24 dev eth1

# 4. Débit par port (~940 Mbit/s attendus) :
sudo apt install iperf3 ; iperf3 -s -D ; iperf3 -c <ip-de-la-carte>

Verificación esperada

ip -br addr muestra eth0 (WAN) y eth1 (LAN) activos; ethtool indica 1000 Mb/s en ambos; un cliente detrás de eth1 sale a Internet (NAT) y iperf3 se acerca a 940 Mbit/s por puerto. La tarjeta funciona, alimentada únicamente por el cable Ethernet del switch PoE.

Errores frecuentes

Otros tutoriales para esta placa

Ejemplos de código para esta placa

← Volver a la ficha 🛠 Todos los tutoriales