Ciao a tutti,
scrivo questo post perché non ho trovato nessuna guida online e magari può tornare utile a chi, come me, vuole fare PPPoE relay (aprire sessioni PPPoE dalla LAN) su gateway UniFi (UCG / UDM / UDR), funzionalità non supportata ufficialmente dal controller.
👉 Nota preliminare importante
È necessario avere SSH abilitato sul gateway UniFi. Se non sapete cos’è SSH o non l’avete mai abilitato su UniFi, probabilmente questa guida non è rivolta a voi.
Set-Up Personale:
- UCG Fiber con UniFi OS 4.4.9 e Network 10.0.162
- ISP TIM in ingresso su VLAN 835 tramite porta SFP+ 6
- Dispositivo a valle (nel mio caso macOS) che instaura direttamente la sessione PPPoE
Step 1. Installazione del binario pppoe-relay
Su UniFi OS è presente il binario pppoe-relay ma è installabile con il pacchetto pppoe.
Da SSH:
apt update && apt install pppoe
Per verificare che sia stato installato:
command -v pppoe-relay
Dovrebbe restituirvi:
/usr/sbin/pppoe-relay
Step 2. Individuare le interfacce corrette
Potete vedere tutte le interfacce disponibili con:
ip -br link
Nel mio caso:
- WAN (VLAN 835 TIM) → eth5.835
- LAN → br0
Step 3. Avvio del PPPoE Relay (manuale)
Il comando che abilita il relay è:
pppoe-relay -S eth5.835 -C br0
Dove:
-S = interfaccia WAN (verso ISP)
-C = interfaccia LAN (verso client)
A questo punto il client dovrebbe riuscire a negoziare correttamente la sessione PPPoE con l’ISP.
Step 4. Rendere il relay persistente al reboot
In realtà mi sono reso conto che con questo script on-boot non viene comunque lanciato pppoe-relay all'avvio (o meglio parte e si chiude) quindi al momento occorre riavviarlo manualmente
Premi per mostrare
Premi per nascondere
Senza persistenza, al riavvio del gateway il relay va rilanciato a mano.
Per risolvere, si può usare unifios-utilities (on-boot script): https://github.com/unifi-utilities/unifios-utilities/tree/main/on-boot-script-2.x
Una volta installato, all'avvio vengono eseguiti gli script da questa cartella:
/data/on_boot.d/
Create quindi il file:
/data/on_boot.d/20-pppoe-relay.sh
Con questo contenuto:
#!/bin/sh
LAN_IF="br0"
WAN_IF="eth5.835"
pppoe-relay -S "$WAN_IF" -C "$LAN_IF"
logger "[pppoe-relay] started LAN=$LAN_IF WAN=$WAN_IF"
E rendetelo eseguibile con:
chmod +x /data/on_boot.d/20-pppoe-relay.sh
Al reboot il PPPoE relay partirà in automatico.
⚠️ Avvertenze finali
- Soluzione non ufficiale
- Può rompersi con aggiornamenti UniFi OS
- Va usata solo se si sa cosa si sta facendo
- Ad oggi è l’unico metodo che ho trovato per avere PPPoE relay su UniFi
Spero possa essere utile a qualcuno.
Se qualcuno ha varianti (container, watchdog ecc.) ben venga il confronto 👍