View Single Post
Old 06-10-2023, 13:21   #76
handymenny
Senior Member
 
Iscritto dal: Jan 2018
Messaggi: 318
Ho avuto modo di giocare qualche giorno con uno dei DX-5401-B0 che perdono tutte le modifiche ad ogni riavvio.

In pratica durante la fase di avvio si verificano degli errori di scrittura sulla partizione /data, per questo motivo ubi decide di rimontarla in modalità read only. Essendo read only qualsiasi modifica alle config è temporanea.
La buona notizia è che, stando ai commenti in alcune patch, non si tratta di un difetto hardware, ma sostanzialmente sono state caricate (in fabbrica?) delle partizioni errate sulla nand.
La notizia ancora più buona è che appunto ci sono delle patch/workaround di Zyxel che consentono di ripristinare tale partizione e farla ritornare scrivibile.
Queste patch le ho trovate nel firmware ABYO.4 C0, ma probabilmente sono anche presenti nell'ultimissima release per W3 (la ABXA.1 b7).
Quella meno buona è che credo che il router in quello stato non sia nemmeno in grado di aggiornarsi da solo (nessun problema tramite web o bootloader), il recupero dei dati tramite TR-069 infatti falliva.

Riguardo alla password di root/supervisor, secondo me l'algoritmo che la crea non è più nella rootfs, il device all'avvio legge le varie password (root, admin, wifi) dalla nvram (/dev/mtd6). Probabilmente o è il bootloader a scriverle o addirittura vengono scritte in fabbrica.
La cosa positiva è che basta fare un dump di questa nvram (es. tramite dd), aprirlo con un editor di testo e cercare la password di admin. Il testo che la precede è la password di supervisor/root.
Quindi potete recuperarla molto facilmente se riuscite ad ottenere i permessi di root in altro modo. Ad es. resettando la password di root ad ogni avvio o settandola nei file di config predefiniti (seguendo le guide per VMG8825-B50B).

Riguardo alla questione firmware ABYO che causano bootloop o xdsl non funzionante, il problema è che i firmware Wind sono per un solo modello, mentre i firmware stock sono per più modelli. La board predefinita nei firmware stock è EX5401-B0 (con FXS Skyworks), che non è al 100% compatibile con il DX5401-B0.
Sono riuscito ad ovviare a questo problema usando il bootloader originale di questo DX5401-B0 e modificando il driver "zyxel detect by gpio" (lo trovate in dl/broadcom_sdk_502L07_pkg.tar.bz2/broadcom-sdk-502L07/shared/opensource/boardparms/bcm963xx/).
Se qualcuno ha il binario o i sorgenti dell'ultimo firmware W3 (ABXA.1 b7), sarei curioso di provare il suo bootloader.

A proposito di sorgenti, se vi capita di compilarne vi consiglio di creare una entry nel menuconfig per ogni voce che vedete in private_config, altrimenti potreste trovarvi con delle funzionalità non funzionanti.

Ultima modifica di handymenny : 06-10-2023 alle 13:47.
handymenny è offline   Rispondi citando il messaggio o parte di esso