💻 Tecnologia

TR-069 e provisioning remoto del CPE: come funziona

Il protocollo con cui gli ISP configurano e aggiornano da remoto router e ONT dei clienti: architettura ACS, sessioni, parametri e implicazioni per chi usa un modem libero.

Redazione Velix2 settembre 20267 min di lettura
💻

Quando un router arriva a casa già configurato, o quando cambia firmware da solo nel cuore della notte, dietro c'è quasi sempre TR-069. È lo standard con cui gli operatori gestiscono da remoto le apparecchiature installate dai clienti, ed è il motivo per cui un'attivazione FTTH può funzionare senza che nessuno tocchi l'interfaccia web del dispositivo.

Cos'è TR-069

TR-069 (formalmente CPE WAN Management Protocol, CWMP) è una specifica del Broadband Forum pubblicata nel 2004 e aggiornata più volte. Definisce come un CPE (Customer Premises Equipment: router, ONT, access point, set-top box) comunica con un ACS (Auto Configuration Server) gestito dall'operatore.

Il modello è semplice:

  • Il CPE è il client, l'ACS è il server.
  • La comunicazione avviene via SOAP over HTTP/HTTPS, sempre iniziata dal CPE.
  • L'ACS può però chiedere al CPE di aprire una sessione tramite una Connection Request: una chiamata HTTP verso una porta del CPE, autenticata in digest.

Questo schema aggira il problema del NAT nella direzione principale — è il dispositivo del cliente a bussare — ma introduce la dipendenza dalla Connection Request per le operazioni immediate.

Quando il CPE contatta l'ACS

Una sessione CWMP si apre in occasione di eventi precisi, dichiarati nel campo Inform:

  • 0 BOOTSTRAP — primo contatto in assoluto con quell'ACS
  • 1 BOOT — ogni riavvio
  • 2 PERIODIC — a intervalli regolari (PeriodicInformInterval, tipicamente 300-86400 secondi)
  • 4 VALUE CHANGE — un parametro monitorato è cambiato
  • 6 CONNECTION REQUEST — richiesta esplicita dell'ACS
  • M Reboot, M Download — completamento di operazioni richieste

L'Inform iniziale contiene identificativi del dispositivo: OUI, ProductClass, SerialNumber, più il modello e la versione firmware. È su questa terna che l'ACS riconosce il CPE e gli associa il profilo di configurazione del cliente.

Il data model

TR-069 è solo il trasporto. Ciò che si può leggere e scrivere è definito da data model separati:

  • TR-098 (InternetGatewayDevice.) — il modello storico per i gateway domestici
  • TR-181 Issue 2 (Device.) — il modello moderno, ormai standard sui dispositivi recenti
  • TR-104 — servizi VoIP
  • TR-135 / TR-140 — set-top box e storage

I parametri hanno una struttura a percorso. Alcuni esempi tipici:

Device.DeviceInfo.SoftwareVersion
Device.PPP.Interface.1.Username
Device.WiFi.SSID.1.SSID
Device.WiFi.AccessPoint.1.Security.KeyPassphrase
Device.IP.Interface.1.IPv4Address.1.IPAddress
Device.ManagementServer.PeriodicInformInterval

I metodi RPC principali sono pochi e prevedibili:

  • GetParameterValues / SetParameterValues — lettura e scrittura
  • GetParameterNames — esplorazione dell'albero
  • AddObject / DeleteObject — creazione e rimozione di istanze (una nuova VLAN, un nuovo SSID)
  • Download — aggiornamento firmware o file di configurazione
  • Reboot / FactoryReset

Cosa ci fa concretamente un ISP

Il provisioning tipico di una linea FTTH copre:

  • Credenziali PPPoE o configurazione DHCP/IPoE sulla WAN
  • VLAN di servizio (dati, voce, IPTV) sulla porta WAN
  • Parametri SIP dell'eventuale servizio voce, senza che il cliente veda le credenziali
  • SSID e password Wi-Fi iniziali
  • Aggiornamenti firmware pianificati
  • Diagnostica: IPPingDiagnostics, TraceRouteDiagnostics, DownloadDiagnostics eseguiti dal CPE su richiesta del supporto tecnico

Il vantaggio operativo è evidente: un guasto si diagnostica leggendo lo stato reale del dispositivo invece di guidare il cliente al telefono, e una modifica di configurazione si applica in blocco su migliaia di linee.

Sicurezza

TR-069 ha una storia di incidenti seri. Il caso più noto è l'attacco del 2016 che sfruttò la porta 7547 esposta su internet in dispositivi di più produttori, con una vulnerabilità nella gestione delle richieste che permetteva esecuzione di codice. Da lì l'infezione di centinaia di migliaia di router.

Le contromisure che un'implementazione corretta adotta oggi:

  • HTTPS obbligatorio verso l'ACS, con validazione del certificato
  • Connection Request filtrata per IP sorgente, accettata solo dalla rete di gestione dell'operatore
  • Autenticazione digest con credenziali uniche per dispositivo, non condivise per modello
  • Porta di management non raggiungibile dalla internet pubblica

Se un CPE espone la porta CWMP a chiunque, è un problema del produttore o della configurazione dell'operatore, non del protocollo in sé.

TR-069 e il modem libero

In Italia la delibera AGCOM 348/18/CONS garantisce il diritto di usare un apparato proprio. Le due cose convivono, con un compromesso pratico:

  • Con CPE dell'operatore, il provisioning è automatico e il supporto può diagnosticare da remoto.
  • Con apparato proprio (un MikroTik, un pfSense, un router di terze parti), la configurazione va inserita a mano: credenziali PPPoE, VLAN, eventuali parametri voce. L'operatore deve fornirle, ma non potrà gestire il dispositivo da remoto né aggiornarlo.

Non è una limitazione imposta: semplicemente, un apparato non gestito è fuori dal perimetro dell'ACS. Chi sceglie il modem libero si assume la configurazione e il troubleshooting del proprio lato.

Il successore: USP / TR-369

Il Broadband Forum ha pubblicato USP (User Services Platform, TR-369) come evoluzione. Le differenze rilevanti:

  • Trasporti multipli: MQTT, WebSocket, STOMP, CoAP al posto del solo HTTP/SOAP
  • Encoding Protocol Buffers invece di XML, molto più leggero
  • Controller multipli sullo stesso agent: l'ISP gestisce la WAN, un'app dell'utente gestisce il Wi-Fi
  • Comunicazione bidirezionale reale, senza il meccanismo della Connection Request

L'adozione procede lentamente, e TR-069 resta oggi il protocollo dominante sul parco installato. Chi progetta un'infrastruttura di gestione nuova, però, guarda già a USP.

Vuoi portare Velix a casa tua?

Verifica la copertura FTTH al tuo indirizzo in 30 secondi. Gratis, senza impegno.

Verifica copertura →