docs: review networking documentation in all seven translations

This commit is contained in:
Jonatan
2026-10-17 15:08:53 +02:00
parent ce1a3de719
commit 427c3dc2b9
51 changed files with 5056 additions and 60 deletions
@@ -0,0 +1,110 @@
{
"meta": {
"title": "Backup e riavvio delle interfacce | Documentazione ProxMenux",
"description": "Crea istantanee manuali, sfoglia e ripristina i backup di /etc/network/interfaces salvati in /var/backups/proxmenux/. Include il riavvio del servizio di rete con conferma e una vista rapida della configurazione attuale.",
"ogTitle": "Backup e riavvio delle interfacce | Documentazione ProxMenux",
"ogDescription": "Crea un’istantanea e ripristina la configurazione di rete Proxmox; riavvia il servizio di rete con conferma."
},
"header": {
"title": "Backup e riavvio delle interfacce",
"description": "Quattro utility che ruotano intorno a /etc/network/interfaces: scattano un'istantanea manuale, visualizzano la configurazione live, ripristinano un backup precedente con un'anteprima facoltativa e riavviano il servizio di rete con esplicito consenso. Stessa directory di backup utilizzata dai flussi di riparazione guidati.",
"section": "Rete"
},
"intro": {
"title": "Cosa fa",
"body": "Gestisce la stessa directory di backup utilizzata dai flussi di riparazione guidati (<code>/var/backups/proxmenux/</code>). Consente di scattare un'istantanea aggiuntiva prima di qualsiasi cambiamento manuale, sfogliare tutti i backup esistenti e tornare a uno qualsiasi di essi — sempre con un backup pre-restore fresco preso automaticamente come una seconda rete di sicurezza."
},
"shared": {
"heading": "La directory di backup condivisa",
"intro": "Ogni backup preso ovunque nel menu di rete atterra nello stesso posto:",
"outro": "I nomi dei file contengono data e ora, sono ordinati per data e non vengono mai sovrascritti. La directory viene creata al primo utilizzo."
},
"show": {
"heading": "Mostra file di configurazione di rete",
"body": "Mostra il contenuto esatto di <code>/etc/network/interfaces</code> nel terminale. Sola lettura. Utile come controllo prima di un backup o dopo un ripristino. Non esiste uno strumento separato per confrontare il file con il backup precedente: esaminare il file attuale è quindi il modo più semplice per verificarne il contenuto."
},
"create": {
"heading": "Crea backup di rete",
"body": "Copia l'attuale <code>/etc/network/interfaces</code> nella directory di backup con un timestamp fresco. Questo è tutto — nessuna analisi, nessun prompt, solo un'istantanea.",
"whenTitle": "Quando creare un backup manuale",
"whenBody": "Prima di modificare <code>/etc/network/interfaces</code> a mano, di installare un pacchetto che può alterare lo stack di rete (ad esempio NetworkManager o Open vSwitch) o di cambiare l’hardware. Le riparazioni guidate creano già un’istantanea automaticamente: questa opzione serve per gli interventi <em>manuali</em>."
},
"restore": {
"heading": "Ripristina backup di rete",
"intro": "Elenca tutti i backup in <code>/var/backups/proxmenux/</code> dal più recente al più vecchio e guida un ripristino protetto:",
"steps": [
{
"title": "1. Scegli un backup",
"body": "Un menu elenca ogni backup dal suo timestamp. Se non esistono backup, il flusso esce con un messaggio chiaro.",
"tone": "blue"
},
{
"title": "2. Anteprima opzionale",
"body": "Propone di aprire il backup selezionato in una vista scorrevole prima di confermare il ripristino. Sì è l’opzione predefinita: non saltare questo passaggio su un host remoto.",
"tone": "blue"
},
{
"title": "3. Backup prima del ripristino",
"body": "Prima di sovrascrivere <code>/etc/network/interfaces</code>, crea <strong>un altro</strong> backup dello stato attuale. Il ripristino è esso stesso un’operazione distruttiva: la nuova istantanea precedente al ripristino permette di tornare indietro se il backup scelto era quello sbagliato.",
"tone": "amber"
},
{
"title": "4. Applicare il ripristino",
"body": "Copia il backup scelto su <code>/etc/network/interfaces</code>. La modifica del file è su disco; lo stato del kernel live riflette ancora la configurazione precedente.",
"tone": "amber"
},
{
"title": "5. Riavvio opzionale",
"body": "Chiede se eseguire <code>systemctl restart networking</code> ora. Rifiuta per rimandare l’applicazione al prossimo riavvio.",
"tone": "emerald"
}
],
"autoBackupTitle": "Il ripristino crea automaticamente un proprio backup",
"autoBackupBody": "Selezionare <em>Ripristina backup di rete</em> crea sempre una nuova istantanea della configurazione <em>attuale</em> prima di sovrascriverla. Se ripristini il backup sbagliato, il file più recente in <code>/var/backups/proxmenux/</code> contiene lo stato precedente."
},
"restart": {
"heading": "Riavvia servizio di rete",
"body": "Esegue <code>systemctl restart networking</code> dopo una conferma sì/no. Mostra il risultato con <code>msg_ok</code> / <code>msg_error</code>. La maggior parte delle procedure di questo menu propone già un riavvio finale: questa opzione serve dopo una modifica manuale o se hai rifiutato il riavvio proposto in precedenza.",
"warnTitle": "Breve disconnessione garantita; possibile disconnessione permanente",
"warnBody": "Riavviare <code>networking</code> disattiva e riconfigura tutte le interfacce dichiarate in <code>/etc/network/interfaces</code>. Le sessioni SSH su queste interfacce si interrompono. Se la nuova configurazione non è valida, la rete non torna disponibile. Esegui questa operazione solo quando:",
"warnItems": [
"Hai un accesso alla console / IPMI / iKVM pronto, <em>oppure</em>",
"Sei fisicamente accanto alla macchina, <em>oppure</em>",
"Hai appena ripristinato con successo una configurazione sicuramente funzionante e vuoi applicarla."
]
},
"manualRollback": {
"heading": "Ripristino manuale da una console",
"intro": "Se non riesci ad accedere al menu (SSH non disponibile, dialog che si arresta, …) ma puoi usare una console, il ripristino richiede due comandi:",
"outro": "È la <em>stessa</em> operazione eseguita dal menu, semplicemente digitata a mano. Se <code>networking</code> continua a non avviarsi, controlla <code>journalctl -u networking -b</code> per individuare l’errore di sintassi o del driver."
},
"troubleshoot": {
"heading": "Risoluzione dei problemi",
"noneTitle": "\"Nessun backup trovato\" in Ripristino",
"noneBody": "La directory <code>/var/backups/proxmenux/</code> non esiste o non contiene file <code>interfaces_backup_*</code>. Esegui <em>Crea backup di rete</em> almeno una volta oppure una riparazione guidata, che ne crea uno automaticamente. Verifica con <code>ls /var/backups/proxmenux/</code>.",
"unreachTitle": "Riavviare la rete riesce, ma l'host è ancora irraggiungibile",
"unreachBody": "La nuova configurazione è errata oppure non assegna il tuo IP di gestione. Ripristina la configurazione dalla console (vedi sopra). Poi usa <bridgeLink>l’analisi dei bridge</bridgeLink> e <configLink>l’analisi della configurazione</configLink> per capire il problema prima di applicarla nuovamente.",
"emptyTitle": "L'anteprima del ripristino mostra un file vuoto",
"emptyBody": "Il file di backup è vuoto (0 byte). Succede se una copia è fallita senza segnalazioni in un’esecuzione precedente. Scegli un backup più vecchio oppure esegui di nuovo <em>Crea backup di rete</em> adesso, se la configurazione attuale funziona."
},
"related": {
"heading": "Correlati",
"items": [
{
"label": "Analisi dei bridge e riparazione guidata",
"href": "/docs/network/bridge-analysis",
"tail": "— il motivo più comune per cui un backup finisce qui."
},
{
"label": "Analisi della configurazione e pulizia guidata",
"href": "/docs/network/config-analysis",
"tailRich": "— scrive anche a <code>/var/backups/proxmenux/</code> automaticamente."
},
{
"label": "Diagnostica",
"href": "/docs/network/diagnostics",
"tail": " — per verificare lo stato attuale dopo un ripristino."
}
]
}
}
@@ -0,0 +1,132 @@
{
"meta": {
"title": "Analisi dei bridge e riparazione guidata | Documentazione ProxMenux",
"description": "Rileva bridge vmbrX con porte fisiche mancanti o non valide, tipicamente dopo la rinumerazione PCI. Li segnala con comandi shell proposti e offre una riparazione guidata in 5 passaggi con backup obbligatorio.",
"ogTitle": "Analisi dei bridge e riparazione guidata | Documentazione ProxMenux",
"ogDescription": "Controlla e ripara le porte dei bridge Proxmox dopo modifiche hardware, con una procedura guidata che consente un ripristino sicuro."
},
"header": {
"title": "Analisi dei bridge e riparazione guidata",
"description": "Controlla ogni bridge vmbrX dichiarato in /etc/network/interfaces, verifica che le porte fisiche esistano e propone una riparazione passo passo se mancano. L’analisi è di sola lettura; la riparazione richiede conferma, mostra un’anteprima e crea un backup.",
"section": "Rete"
},
"intro": {
"title": "Cosa fa",
"body": "Legge ogni bridge in <code>/etc/network/interfaces</code>, esamina la riga <code>bridge-ports</code> e verifica che ogni porta dichiarata, ad esempio <code>enp3s0</code>, esista sull’host. Se una porta manca, propone una sostituzione e, con consenso esplicito, applica la modifica seguendo la procedura <strong>backup, anteprima, applicazione, verifica</strong>."
},
"when": {
"heading": "Quando hai bisogno di questo",
"intro": "Linux assegna nomi prevedibili alle interfacce in base alla topologia PCI e all’ordine degli slot. Diversi eventi possono modificarli, lasciando in <code>/etc/network/interfaces</code> riferimenti a nomi non più esistenti:",
"items": [
"Aggiungere o rimuovere una scheda PCIe (scheda di rete, GPU, HBA o adattatore NVMe).",
"Spostare una scheda esistente in un'altra slot PCIe.",
"Aggiornamenti BIOS / UEFI che rinumerano i dispositivi PCI.",
"Migrare il disco di avvio su hardware diverso."
],
"outro": "Dopo il prossimo avvio, il ponte cerca di attaccare a una porta che non esiste più, non riesce a salire, e l'host perde la sua rete. <link>Nomi di interfaccia persistenti</link> impedisce che questo accada di nuovo — ma se sei già bloccato fuori, questa pagina è il percorso di recupero."
},
"bigPicture": {
"heading": "Quadro generale",
"diagram1": {
"arrowLabel": "passo 1",
"nodes": {
"sourceLabel": "/etc/network/interfaces",
"sourceDetail": "auto vmbr0\niface vmbr0 inet static\n bridge-ports enp3s0",
"bridgeLabel": "Analizzare (solo lettura)",
"bridgeDetail": "ip link show enp3s0\n→ non esiste",
"targetLabel": "Report + suggerimento",
"targetDetail": "❌ enp3s0: NON TROVATA\nSostituisci con: eno1\n(ancora nessuna modifica)"
}
},
"diagram2": {
"arrowLabel": "applicare con il backup",
"nodes": {
"sourceLabel": "Riparazione guidata",
"sourceDetail": "1. Backup\n2. Mostra configurazione attuale\n3. Anteprima delle modifiche\n4. Applica\n5. Verifica",
"targetLabel": "/etc/network/interfaces (nuovo)",
"targetDetail": "auto vmbr0\niface vmbr0 inet static\n bridge-ports eno1"
}
}
},
"step1": {
"heading": "Passo 1: analisi (solo lettura)",
"intro": "Selezionando <strong>Analizza configurazione dei bridge</strong>, lo strumento si interrompe se l’host non usa lo stack classico Debian/Proxmox. Altrimenti esamina ogni bridge e mostra:",
"items": [
"Nome del ponte, stato corrente (UP / DOWN), IP assegnato.",
"Ogni porta dichiarata e la sua effettiva presenza (<code>ip link show &lt;port&gt;</code>).",
"Per ogni porta non valida: una sostituzione proposta (la prima interfaccia fisica disponibile) più il comando esatto <code>sed</code> per applicarla manualmente.",
"Bridge senza alcuna riga <code>bridge-ports</code> e voci <code>auto</code> orfane senza un blocco <code>iface</code> corrispondente."
],
"readonlyTitle": "Garanzia di sola lettura",
"readonlyBody": "Fino a questo punto lo script non ha eseguito un singolo comando di modifica. È possibile lasciare l'analisi aperta, copiare i comandi <code>sed</code> suggeriti e applicarli manualmente se si preferisce — o accettare il prompt successivo per inserire la riparazione guidata."
},
"step2": {
"heading": "Passo 2: riparazione guidata (5 passi)",
"intro": "Solo se accetti il prompt alla fine dell'analisi. Ogni passo mostra cosa accadrà e chiederà la conferma prima di continuare.",
"steps": [
{
"title": "1. Backup di sicurezza",
"body": "Copia <code>/etc/network/interfaces</code> in <code>/var/backups/proxmenux/interfaces_backup_&lt;TIMESTAMP&gt;</code>. Il percorso esatto del backup viene mostrato prima e dopo la copia, insieme al comando di ripristino.",
"tone": "blue"
},
{
"title": "2. Controlla la configurazione attuale",
"body": "Apre l’attuale <code>/etc/network/interfaces</code> in una finestra scorrevole per vedere esattamente cosa verrà modificato.",
"tone": "blue"
},
{
"title": "3. Anteprima delle modifiche proposte",
"body": "Elenca esattamente i bridge interessati e le sostituzioni delle porte previste. Se non serve più alcuna riparazione perché la porta è ricomparsa tra i controlli, la procedura termina con <em>«Nessuna modifica necessaria.»</em>",
"tone": "blue"
},
{
"title": "4. Applicare le modifiche",
"body": "Per ogni ponte interessato, viene eseguito <code>sed -i \"/iface $bridge/,/bridge-ports/ s/bridge-ports.*/bridge-ports $new_ports/\"</code> contro <code>/etc/network/interfaces</code>. Se un ponte non ha una sostituzione valida disponibile, la sostituzione è saltata e riportata nella fase 5.",
"tone": "amber"
},
{
"title": "5. Verifica",
"body": "Rilegge il file e verifica che la nuova porta di ogni bridge esista. Mostra il comando di ripristino (<code>cp &lt;backup&gt; /etc/network/interfaces</code>). Infine propone <strong>Riavvia la rete</strong>: accetta solo se hai un accesso di riserva alla console.",
"tone": "emerald"
}
],
"restartTitle": "Riavviare la rete ≠ annullare senza rischi",
"restartBody": "La riparazione viene scritta su disco anche se non riavvii il servizio. <code>systemctl restart networking</code> applica la modifica <em>ora</em> e può interrompere la sessione SSH se la nuova porta è errata. Se rifiuti, la modifica avrà comunque effetto al prossimo avvio: verifica prima la configurazione oppure annulla con il comando mostrato."
},
"edits": {
"heading": "Cosa viene modificato (esattamente)",
"body": "Solo la riga <code>bridge-ports</code> di ogni bridge interessato. Le altre direttive (<code>address</code>, <code>netmask</code>, <code>gateway</code>, <code>bridge-stp</code>, …) restano invariate. In questa procedura lo script non crea né rimuove blocchi <code>iface</code>: se ne occupa <link>Analisi della configurazione &amp; pulizia</link>."
},
"troubleshoot": {
"heading": "Risoluzione dei problemi",
"unsupportedTitle": "L’analisi si interrompe con «Stack di rete non supportato»",
"unsupportedBody": "L'host esegue netplan, systemd-networkd o NetworkManager. Lo strumento supporta solo <code>/etc/network/interfaces</code>. Passare l'host al classico stack prima, o modificare la configurazione con il tooling nativo del manager (ad es. <code>netplan apply</code>).",
"noSuggestTitle": "Non viene mostrato alcun suggerimento per una porta non valida",
"noSuggestBody": "L’host non ha interfacce fisiche libere: sono già tutte in un altro bridge oppure non esistono. L’analisi suggerisce come alternativa <code>bridge-ports none</code>, così il bridge può almeno attivarsi senza una porta. Aggiungi una scheda di rete o sposta manualmente le porte tra i bridge prima di riprovare.",
"stillDownTitle": "La riparazione completa ma il ponte è ancora DOWN",
"stillDownBody": "<code>sed</code> ha aggiornato il file, ma <code>systemctl restart networking</code> è stato rifiutato. Eseguilo manualmente dopo aver verificato la nuova configurazione oppure riavvia. Se il riavvio è stato accettato e il bridge è ancora DOWN, esegui <code>ip link show</code> per verificare che la nuova porta esista e controlla <code>journalctl -u networking</code> per l’errore effettivo: cavo scollegato, collegamento non negoziato o porta già appartenente a un altro bridge.",
"lostSshTitle": "Ho perso l'accesso SSH subito dopo il riavvio della rete",
"lostSshIntro": "Utilizzare la console / IPMI / iKVM per raggiungere l'host. Ripristinare il backup:",
"lostSshOutro": "Esegui poi di nuovo l’analisi dalla console per capire perché il suggerimento non ha funzionato, in genere perché la porta sostitutiva non è collegata."
},
"related": {
"heading": "Correlati",
"items": [
{
"label": "Nomi di interfaccia persistenti",
"href": "/docs/network/persistent-names",
"tail": " — associa i nomi agli indirizzi MAC per evitare che il problema si ripeta."
},
{
"label": "Analisi della configurazione e pulizia guidata",
"href": "/docs/network/config-analysis",
"tailRich": "— per i blocchi <code>iface</code> orfani (l'altra metà dello stesso problema)."
},
{
"label": "Backup e riavvio delle interfacce",
"href": "/docs/network/backup-restore",
"tail": "— snapshot manuali e browser di ripristino."
}
]
}
}
@@ -0,0 +1,122 @@
{
"meta": {
"title": "Analisi della configurazione e pulizia guidata | Documentazione ProxMenux",
"description": "Rileva i blocchi iface in /etc/network/interfaces che fanno riferimento a schede di rete fisiche non più presenti sull’host. Li segnala e offre una rimozione guidata in 5 passaggi con backup obbligatorio e anteprima di ogni blocco.",
"ogTitle": "Analisi della configurazione e pulizia guidata | Documentazione ProxMenux",
"ogDescription": "Trovare e rimuovere i blocchi di interfaccia orfano lasciati dietro da modifiche hardware, con anteprima completa e rollback."
},
"header": {
"title": "Analisi della configurazione e pulizia guidata",
"description": "Esamina ogni blocco iface in /etc/network/interfaces e verifica che la scheda di rete fisica corrispondente esista ancora. Segnala i blocchi orfani rimasti dopo modifiche hardware e offre una rimozione guidata con backup, anteprima e conferma per ogni blocco.",
"section": "Rete"
},
"intro": {
"title": "Cosa fa",
"body": "Identifica le dichiarazioni <code>iface</code> il cui supporto NIC non è più presente sull'host (tipico dopo aver sostituito o rimosso una scheda di rete). Poi offre una pulizia guidata che rimuove <em>solo</em> i blocchi orfani, con un backup, un'anteprima per sezione e una conferma finale esplicita."
},
"differs": {
"heading": "Come differisce dall'analisi del ponte",
"headerAspect": "Aspetto",
"headerBridge": "Analisi del ponte",
"headerConfig": "Analisi della configurazione",
"rows": [
{
"aspect": "Esamina",
"bridge": "Ponti (<code>vmbrX</code>) e la loro linea <code>bridge-ports</code>",
"config": "Ogni blocco <code>iface</code>, esclusi loopback, bridge e bond"
},
{
"aspect": "Rilevamento",
"bridge": "Bridge che fanno riferimento a una porta inesistente",
"config": "Blocchi di interfaccia standalone per NIC che non esistono"
},
{
"aspect": "Azione di riparazione",
"bridge": "Sostituisce il nome della porta in <code>bridge-ports</code>",
"config": "Rimuove l'intero blocco <code>iface</code>"
},
{
"aspect": "Esclusi",
"bridge": "Nulla — ogni ponte viene analizzato",
"config": "Bridge (<code>vmbrX</code>) e bond (<code>bondX</code>) vengono sempre mantenuti: sono virtuali e la loro assenza durante l’avvio può essere normale"
}
],
"outro": "In pratica si usano spesso entrambi in quest’ordine: prima <strong>analisi della configurazione</strong> per rimuovere i blocchi orfani, poi <link>analisi dei bridge</link> per riassegnare i bridge che dipendevano dall’interfaccia rimossa."
},
"step1": {
"heading": "Passo 1: analisi (solo lettura)",
"intro": "Interrompe immediatamente se l'host non è sulla pila classica. Altrimenti elenca ogni interfaccia non-loopback configurata e segnala il suo stato:",
"virtTitle": "Le interfacce virtuali sono protette",
"virtBody": "Bridge (<code>vmbrX</code>) e bond (<code>bondX</code>) sono strutture virtuali. È possibile che non esistano al momento dell’ispezione, ad esempio un bridge ancora senza porte. L’analisi non propone mai di rimuoverli, ma solo le schede di rete fisiche."
},
"step2": {
"heading": "Passo 2: pulizia guidata (5 passi)",
"intro": "Solo se accetti il prompt alla fine dell'analisi. Ogni passo richiede la conferma; la cancellazione in qualsiasi punto esce senza scrivere.",
"steps": [
{
"title": "1. Backup di sicurezza",
"body": "Copia <code>/etc/network/interfaces</code> in <code>/var/backups/proxmenux/interfaces_backup_&lt;TIMESTAMP&gt;</code>. Il percorso viene mostrato prima e dopo.",
"tone": "blue"
},
{
"title": "2. Confermare la lista di rimozione",
"body": "Elenca esattamente i blocchi delle interfacce fisiche da rimuovere. Se le schede di rete riappaiono tra analisi e pulizia, ad esempio dopo aver reinserito una scheda, la procedura termina con <em>«Nessuna pulizia necessaria.»</em>",
"tone": "blue"
},
{
"title": "3. Visualizza in anteprima i blocchi esatti",
"body": "Apre una vista scorrevole di ogni blocco <code>iface</code> che verrebbe eliminato, esattamente come appare nel file. È il momento di individuare, ad esempio, un hook <code>up</code> che vuoi conservare.",
"tone": "blue"
},
{
"title": "4. Applicare la rimozione",
"body": "Per ogni interfaccia orfano, funziona <code>sed -i \"/^iface $iface/,/^$/d\" /etc/network/interfaces</code>. Questo elimina dalla linea <code>iface</code> corrispondente fino alla riga vuota successiva.",
"tone": "amber"
},
{
"title": "5. Verifica",
"body": "Rilegge il file, elenca ciò che è stato rimosso e ricontrolla le restanti interfacce. Stampa il comando di rollback. <strong>non</strong> riavvia automaticamente la rete: la rimozione di un blocco inutilizzato è sicura da applicare al riavvio successivo ed evita di toccare lo stato live.",
"tone": "emerald"
}
],
"noRestartTitle": "Non riavvia automaticamente la rete",
"noRestartBody": "A differenza della riparazione del ponte, il flusso di pulizia non offre di riavviare il servizio. Rimuovere un blocco di interfaccia non utilizzato non ha alcun effetto immediato sulla configurazione in esecuzione, quindi un riavvio è inutile e sarebbe un rischio di connettività inutile. La modifica ha effetto sul successivo manuale <code>systemctl restart networking</code> o al successivo riavvio."
},
"caveats": {
"heading": "Osservazioni importanti",
"boundaryTitle": "Il confine del blocco è la prima linea vuota",
"boundaryBody": "Il pattern <code>sed</code> elimina da <code>iface &lt;name&gt;</code> fino alla riga vuota successiva. Se in <code>/etc/network/interfaces</code> manca una riga vuota tra i blocchi, cosa rara ma possibile dopo modifiche manuali, può essere eliminato anche il blocco successivo. Per questo <strong>il passaggio 3 è obbligatorio</strong>: controlla l’anteprima prima di confermare.",
"tandemTitle": "Un blocco iface orfano usato da un bridge viene rilevato qui, non nell’analisi dei bridge",
"tandemBody": "Se <code>vmbr0</code> dichiara <code>bridge-ports enp3s0</code> e <code>enp3s0</code> ha anche un blocco <code>iface enp3s0 inet manual</code>, rimuovere <code>enp3s0</code> qui lascia un riferimento non valido in <code>vmbr0</code>. Dopo la pulizia, esegui <link>l’analisi dei bridge</link> per riassegnare o rimuovere la porta del bridge. Le due procedure sono pensate per essere usate insieme."
},
"troubleshoot": {
"heading": "Risoluzione dei problemi",
"notFoundTitle": "L’analisi indica «NON TROVATA» per la mia nuova scheda di rete",
"notFoundBody": "Il kernel vede il dispositivo con un nome diverso da quello nel file. Esegui <code>ip link show</code> per trovare il nome effettivo. È proprio il caso in cui i <link>nomi persistenti delle interfacce</link> eviterebbero il problema in futuro.",
"tooMuchTitle": "La pulizia ha rimosso troppo (un blocco che volevo mantenere)",
"tooMuchBody": "Ripristino dal backup stampato nella fase 5:",
"tooMuchOutro": "Modificare il file a mano per aggiungere una linea vuota chiara tra i blocchi prima di eseguire la pulizia, o rimuovere il blocco problematico manualmente.",
"bridgeBreakTitle": "Un ponte smette di funzionare dopo la pulizia",
"bridgeBreakBody": "Il bridge dipendeva da una porta il cui blocco <code>iface</code> è stato appena rimosso. Esegui <link>l’analisi dei bridge</link>: il suggerimento assegnerà al bridge un’interfaccia fisica esistente."
},
"related": {
"heading": "Correlati",
"items": [
{
"label": "Analisi dei bridge e riparazione guidata",
"href": "/docs/network/bridge-analysis",
"tail": "— il follow-up naturale dopo una pulizia."
},
{
"label": "Nomi di interfaccia persistenti",
"href": "/docs/network/persistent-names",
"tail": "— blocca i blocchi orfani dall'accumulo dopo ogni cambio hardware."
},
{
"label": "Backup e riavvio delle interfacce",
"href": "/docs/network/backup-restore",
"tail": "— snapshot manuali e browser di ripristino."
}
]
}
}
@@ -0,0 +1,94 @@
{
"meta": {
"title": "Diagnostica | Documentazione ProxMenux",
"description": "Tre controlli diagnostici puntuali di sola lettura: Mostra tabella di routing, Test di connettività e Diagnostica avanzata. Semplice ispezione: non scrive mai in /etc/network/interfaces e non esegue comandi di modifica, con un’unica eccezione esplicita: la rimozione completa di NetworkManager, se rilevato, richiede il tuo consenso.",
"ogTitle": "Diagnostica | Documentazione ProxMenux",
"ogDescription": "Diagnostica di rete di sola lettura per l'host Proxmox: routing, raggiungibilità, statistiche avanzate."
},
"header": {
"title": "Diagnostica",
"description": "Tre controlli puntuali di sola lettura dello stato attuale della rete: tabella di routing, test di connettività e statistiche avanzate. Nessuno scrive in /etc/network/interfaces: sono utilizzabili in sicurezza in qualsiasi momento, anche via SSH. Per il monitoraggio interattivo in tempo reale, vedi Strumenti di monitoraggio in tempo reale.",
"section": "Rete"
},
"intro": {
"title": "Cosa fa",
"body": "Mostra informazioni su routing, raggiungibilità e statistiche aggregate <strong>senza modificare nulla</strong>. Usalo per verificare che la rete funzioni o individuare IP duplicati. Per osservare il traffico in modo continuo, vedi <monitoringLink>Strumenti di monitoraggio in tempo reale</monitoringLink>; per visualizzare il file di configurazione grezzo, vedi <backupLink>Backup e riavvio delle interfacce</backupLink>."
},
"routing": {
"heading": "Mostra tabella di routing",
"body": "Elenca tutte le rotte attualmente usate dal kernel (<code>ip route show</code>) ed evidenzia il gateway predefinito. Utile per verificare che il traffico verso Internet esca dall’interfaccia prevista e che nessuna vecchia rotta abbia la precedenza."
},
"connectivity": {
"heading": "Test connettività",
"intro": "Invia due sonde ICMP a tre obiettivi in sequenza e segnala ciascuno. Poi viene eseguito un <code>nslookup google.com</code> per verificare la risoluzione DNS indipendentemente da ICMP.",
"headerTest": "Test",
"headerTarget": "Destinazione",
"headerConfirms": "Cosa conferma",
"rows": [
{
"test": "DNS Google",
"target": "8.8.8.8",
"confirms": "Raggiungibilità esterna tramite un indirizzo IP anycast noto"
},
{
"test": "Cloudflare DNS",
"target": "1.1.1.1",
"confirms": "Seconda opzione indipendente se Google blocca ICMP"
},
{
"test": "Gateway",
"target": "(percorso di default)",
"confirms": "Connettività L2 / L3 al router locale"
},
{
"test": "Risoluzione DNS",
"target": "google.com",
"confirms": "Il server DNS è raggiungibile e risponde"
}
],
"readingTitle": "Leggere il risultato",
"readingBody": "Se il test del gateway riesce ma i server DNS pubblici non rispondono, la connettività locale funziona ma non hai accesso a Internet: controlla la connessione a monte del gateway. Se la risoluzione DNS fallisce ma i ping verso <code>8.8.8.8</code> riescono, il problema è il resolver, non la rete: controlla <code>/etc/resolv.conf</code>."
},
"advanced": {
"heading": "Diagnostica avanzata",
"intro": "Aggrega le statistiche dell’intera rete ed esegue una serie di controlli sui problemi comuni. Mostra il numero di connessioni attive, le porte in ascolto e il totale delle interfacce, e segnala esplicitamente due configurazioni problematiche:",
"items": [
"<strong>NetworkManager in esecuzione su un host Proxmox.</strong> NetworkManager e <code>ifupdown</code> di Proxmox entrano in conflitto: entrambi tentano di gestire le interfacce, rendendo i bridge instabili o impedendone l’attivazione. Se viene rilevato, lo strumento propone una conferma interattiva per arrestarlo, disabilitarlo e rimuoverlo completamente (è l’<em>unica</em> diagnostica che può modificare il sistema, e solo dopo un consenso esplicito).",
"<strong>Indirizzi IP duplicati su interfacce diverse.</strong> Due interfacce con lo stesso indirizzo IPv4 causano problemi di connettività intermittenti molto difficili da diagnosticare dall’interno della VM. Rilevamento tramite <code>ip -4 addr show | sort | uniq -d</code>."
],
"nmTitle": "Il prompt NetworkManager è l'unica azione di modifica qui",
"nmBody": "Tutti gli altri controlli della diagnostica avanzata sono di sola lettura. La rimozione di NetworkManager richiede una conferma sì/no ed esegue <code>systemctl stop / disable</code> + <code>apt-get purge -y network-manager</code>. Se rifiuti, non cambia nulla."
},
"troubleshoot": {
"heading": "Risoluzione dei problemi",
"gwTitle": "Il test di connettività segnala un errore del gateway, ma l’host ha accesso a Internet",
"gwBody": "Alcuni router non rispondono a ICMP sulla loro interfaccia interna anche se inoltrano correttamente il traffico. Prova <code>traceroute 8.8.8.8</code> da una console: se il secondo hop è il tuo ISP e il test del DNS pubblico è riuscito, il gateway funziona nonostante il ping fallito.",
"dupTitle": "La diagnostica avanzata continua a segnalare IP duplicati dopo che ne ho rimosso uno",
"dupBody": "Il controllo guarda lo stato del kernel dal vivo, non il file di configurazione. Eseguire <code>ip -4 addr show</code> per confermare; se il duplicato è ancora presente, un'interfaccia lo tiene ancora. Utilizzare <code>ip addr del &lt;IP&gt;/&lt;mask&gt; dev &lt;iface&gt;</code> per rimuoverlo dallo stato in tempo reale, quindi modificare <code>/etc/network/interfaces</code> se è anche persistente."
},
"related": {
"heading": "Correlati",
"items": [
{
"label": "Strumenti di monitoraggio dal vivo",
"href": "/docs/network/monitoring",
"tail": "— lanciatori interattivi iftop / iptraf-ng / iperf3."
},
{
"label": "Analisi dei bridge e riparazione guidata",
"href": "/docs/network/bridge-analysis",
"tail": " — quando a un vmbrX manca la porta fisica."
},
{
"label": "Analisi della configurazione e pulizia guidata",
"href": "/docs/network/config-analysis",
"tail": " — quando una vecchia scheda di rete è ancora dichiarata ma non è più presente."
},
{
"label": "Backup e riavvio delle interfacce",
"href": "/docs/network/backup-restore",
"tail": " — per creare un’istantanea della configurazione prima di qualsiasi modifica."
}
]
}
}
+107
View File
@@ -0,0 +1,107 @@
{
"meta": {
"title": "Gestione della rete Proxmox — Bridge, bond, diagnostica, riparazione | ProxMenux",
"description": "Diagnostica di sola lettura, analisi con suggerimenti e riparazioni guidate per lo stack di rete Debian / Proxmox (/etc/network/interfaces). Ispeziona bridge e bond, avvia strumenti di monitoraggio in tempo reale, rendi persistenti i nomi delle interfacce, crea backup e riavvia la rete in sicurezza, con backup obbligatori e anteprime passo passo.",
"ogTitle": "Gestione della rete Proxmox — Bridge, bond, diagnostica, riparazione",
"ogDescription": "Diagnostica, analisi e riparazioni guidate per lo stack di rete Proxmox con backup obbligatori e anteprime passo-passo.",
"twitterTitle": "Gestione della rete Proxmox | ProxMenux",
"twitterDescription": "Bridge, bond, diagnostica e riparazioni guidate per lo stack di rete Proxmox con backup obbligatori."
},
"header": {
"title": "Gestione rete",
"description": "Diagnostica di sola lettura, rapporti di analisi con suggerimenti e riparazioni guidate per il classico stack di rete Debian/Proxmox. Ogni operazione distruttiva crea prima un backup e mostra in anteprima le modifiche esatte prima di applicarle.",
"section": "Rete"
},
"intro": {
"title": "A cosa serve questo menu",
"body": "Ispeziona, diagnostica e, quando necessario, ripara la configurazione di rete dell’host Proxmox senza perdere l’accesso remoto. Gli strumenti seguono un principio: <strong>prima leggere, poi proporre e infine applicare solo con consenso esplicito e un backup di sicurezza</strong>. Non esiste un pulsante «Correggi tutto automaticamente»."
},
"openingMenu": {
"heading": "Apertura del menu",
"intro": "Dal menu principale di ProxMenux, seleziona <strong>Rete</strong>. Vedrai questo:",
"imageAlt": "Menù Gestione rete con diagnostica, monitoraggio, analisi, riparazione, nomi persistenti e opzioni di backup"
},
"safety": {
"heading": "Il modello di sicurezza",
"body": "Modificare la configurazione di rete di un host Proxmox remoto è uno dei modi più semplici per perdere l’accesso. ProxMenux ne tiene conto per ogni azione. Gli strumenti si dividono in tre livelli di comportamento: scegli la scheda che corrisponde al tuo obiettivo:"
},
"tiers": {
"readOnly": {
"title": "Sola lettura",
"body": "Ispezione pura. Non può modificare il sistema in nessuna circostanza.",
"items": [
"Tabella di routing, test di connettività, statistiche avanzate",
"Monitoraggio del traffico dal vivo (iftop, iptraf-ng)",
"Test della larghezza di banda (iperf3)"
]
},
"analyze": {
"title": "Analizzare, quindi suggerire",
"body": "Rileva i problemi, stampa un rapporto con i comandi di shell proposti e si ferma. Si decide se entrare nella riparazione guidata dopo.",
"items": [
"Analisi della configurazione del ponte",
"Analisi della configurazione di rete"
]
},
"apply": {
"title": "Applicare con backup",
"body": "Modifica il sistema. Crea sempre prima un backup del file interessato con data e ora e mostra un’anteprima prima di scrivere.",
"items": [
"Nomi persistenti delle interfacce (file .link)",
"Backup manuale, ripristino e riavvio del servizio"
]
}
},
"classicTitle": "Solo pila classica",
"classicBody": "Ogni funzione di analisi e riparazione controlla il gestore di rete attivo prima di toccare qualsiasi cosa. Se l'host esegue <strong>netplan</strong>, <strong>systemd-networkd</strong> o <strong>NetworkManager</strong>, lo strumento si interrompe immediatamente con un messaggio chiaro — il menu supporta solo il classico stack Debian/Proxmox a <code>/etc/network/interfaces</code>. Questo è intenzionale: la modifica di un file netplan con regole scritte per <code>ifupdown</code> avrebbe corrotto silenziosamente la configurazione.",
"backups": {
"heading": "Dove vengono salvati i backup",
"intro": "Ogni riparazione guidata, ripristino o backup manuale scrive una copia di <code>/etc/network/interfaces</code> con data e ora in <code>/var/backups/proxmenux/</code>:",
"rollbackIntro": "Per ripristinare manualmente la configurazione precedente da una console:"
},
"readOnlySection": {
"heading": "Ispezione di sola lettura",
"body": "Il punto di partenza quando qualcosa non va. Semplice ispezione: non scrive mai in <code>/etc/network/interfaces</code> e non esegue comandi che modificano il sistema, con un’unica eccezione esplicita: la rimozione completa di NetworkManager, se rilevato, richiede il tuo consenso. Utilizzabile in sicurezza via SSH in qualsiasi momento.",
"options": [
{
"title": "Diagnostica",
"description": "Tre controlli puntuali di sola lettura: Mostra tabella di routing, Test di connettività e Diagnostica avanzata. Semplice ispezione: non scrive mai nel sistema."
},
{
"title": "Strumenti di monitoraggio dal vivo",
"description": "Tre strumenti avviabili in modo interattivo: iftop (larghezza di banda in tempo reale per coppia di host), iptraf-ng (monitor del traffico con più modalità) e iperf3 (test della larghezza di banda, modalità server / client)."
}
]
},
"analyzeSection": {
"heading": "Analizzare, quindi suggerire",
"body": "Da usare quando un’ispezione o un’effettiva interruzione del servizio indica un problema di configurazione. Ogni strumento esamina la parte pertinente di <code>/etc/network/interfaces</code>, stampa un rapporto dettagliato con l’esatto comando shell che risolverebbe ogni problema e <strong>si ferma</strong>. Se in seguito accetti la riparazione guidata facoltativa, ogni modifica viene preceduta da un backup e mostrata in anteprima prima della scrittura.",
"options": [
{
"title": "Analisi dei bridge e riparazione guidata",
"description": "Rileva bridge vmbrX con porte mancanti o non valide, situazione tipica dopo la rinumerazione PCI. Mostra prima un rapporto e ripara solo se accetti la procedura guidata in 5 passaggi."
},
{
"title": "Analisi della configurazione e pulizia guidata",
"description": "Trova le interfacce fisiche dichiarate in /etc/network/interfaces che non esistono più, ossia configurazioni orfane rimaste dopo modifiche hardware. Le segnala e propone una rimozione guidata."
}
]
},
"applySection": {
"heading": "Applicare con backup",
"body": "Questi strumenti scrivono su disco per loro natura. Ciascuno crea un backup del file interessato con data e ora prima della scrittura e le opzioni distruttive, come ripristino e riavvio, richiedono una conferma esplicita sì/no. I <em>nomi persistenti delle interfacce</em> diventano effettivi al prossimo riavvio, non subito: puoi quindi pianificarne l’impostazione in sicurezza anche su un host remoto.",
"options": [
{
"title": "Nomi di interfaccia persistenti",
"description": "Associa i nomi delle interfacce (eno1, enp3s0, …) agli indirizzi MAC tramite file .link di systemd. I nomi restano invariati dopo cambi di slot PCI, aggiornamenti del kernel e aggiunta o rimozione di altre schede di rete."
},
{
"title": "Backup e riavvio delle interfacce",
"description": "snapshot manuale di /etc/network/interfaces, sfoglia e ripristina i backup precedenti, visualizza la configurazione live e riavvia il servizio di rete quando necessario."
}
]
},
"consoleTitle": "Prepara un accesso alla console",
"consoleSubTitle": "Prima di qualsiasi riparazione su un host remoto",
"consoleBody": "Se sei connesso via SSH e hai un solo percorso di accesso all’host, prepara un’alternativa prima di applicare modifiche alla rete: console fisica / IPMI / iKVM oppure un’altra macchina sulla stessa LAN. Le riparazioni guidate sono sicure e offrono sempre un comando per annullare le modifiche, ma un bridge configurato male o una connessione interrotta può comunque lasciarti senza accesso finché non raggiungi la console."
}
@@ -0,0 +1,136 @@
{
"meta": {
"title": "Strumenti di monitoraggio in tempo reale | Documentazione ProxMenux",
"description": "Tre strumenti interattivi di monitoraggio della rete: iftop (larghezza di banda in tempo reale per coppia di host), iptraf-ng (monitor del traffico con più modalità) e iperf3 (test della larghezza di banda, modalità server / client). Ciascuno viene installato al primo utilizzo.",
"ogTitle": "Strumenti di monitoraggio in tempo reale | Documentazione ProxMenux",
"ogDescription": "Monitoraggio interattivo della rete e test di larghezza di banda per l'host Proxmox: iftop, iptraf-ng, iperf3."
},
"header": {
"title": "Strumenti di monitoraggio dal vivo",
"description": "Tre strumenti avviabili in modo interattivo per osservare la rete in tempo reale e misurare la larghezza di banda: iftop, iptraf-ng e iperf3. Ogni strumento viene installato automaticamente tramite apt al primo utilizzo, viene eseguito in primo piano e si chiude con il tasto indicato. Non modificano la configurazione di rete dell’host; iperf3 genera traffico di prova.",
"section": "Rete"
},
"intro": {
"title": "Cosa fa",
"body": "Tre strumenti di monitoraggio interattivo, ciascuno dietro la propria voce menu. La prima volta che si lancia uno, il pacchetto viene installato silenziosamente tramite <code>apt-get</code>. I lanci successivi iniziano immediatamente. Nessuno di questi strumenti modifica la configurazione della rete host."
},
"when": {
"heading": "Quando usare quale",
"headerQuestion": "Domanda",
"headerUse": "Usa",
"rows": [
{
"question": "Chi sta saturando il collegamento <em>in questo momento</em>?",
"use": "iftop"
},
{
"question": "Qual è la ripartizione per protocollo e quali dimensioni dei pacchetti e flussi TCP sono presenti?",
"use": "iptraf-ng"
},
{
"question": "Quanta larghezza di banda è effettivamente disponibile tra due host?",
"use": "iperf3"
}
]
},
"iftop": {
"heading": "Utilizzo rete in tempo reale (iftop)",
"body": "Larghezza di banda in tempo reale per coppia di host (origine ↔ destinazione), come <code>top</code> per il traffico. Mostra in alto i flussi più intensi con medie mobili su 2/10/40 secondi. Lo strumento ideale per rispondere a <em>«perché il mio uplink è saturo?»</em>.",
"exit": "<strong>Esci:</strong> premi <kbd>q</kbd>. ProxMenux mostra un promemoria prima dell’avvio.",
"keysTitle": "Tasti utili dentro iftop",
"keysBody": "<kbd>n</kbd> attiva o disattiva le ricerche DNS, <kbd>p</kbd> mostra i numeri di porta, <kbd>P</kbd> mette in pausa la visualizzazione, <kbd>t</kbd> cambia la direzione delle righe (inviato / ricevuto / entrambi), <kbd>1</kbd>/<kbd>2</kbd>/<kbd>3</kbd> ordina per media su 2 s / 10 s / 40 s. Elenco completo in <code>man iftop</code>."
},
"iptraf": {
"heading": "Strumento monitoraggio rete (iptraf-ng)",
"intro": "Un monitor del traffico con più modalità, gestito tramite menu. iftop risponde a <em>«chi»</em>, mentre iptraf-ng risponde a <em>«cosa»</em>: contatori di byte e pacchetti per protocollo, monitoraggio dello stato delle connessioni TCP, istogrammi delle dimensioni dei pacchetti e attività LAN per stazione.",
"menuIntro": "Al lancio si ottiene un menu a cinque opzioni:",
"headerMode": "Modalità",
"headerUseFor": "Usalo per",
"rows": [
{
"mode": "Monitor di traffico IP",
"useFor": "Elenco in tempo reale dei flussi TCP / UDP / ICMP / altri protocolli IP con contatori di byte e stato della connessione"
},
{
"mode": "Statistiche generali delle interfacce",
"useFor": "Conteggi aggregati dei pacchetti IPv4 / IPv6 / TCP / UDP / ICMP / non IP per scheda di rete"
},
{
"mode": "Statistiche dettagliate dell’interfaccia",
"useFor": "Come sopra, ma per una sola interfaccia, con dettagli sulle dimensioni e sulla frequenza dei pacchetti"
},
{
"mode": "Ripartizioni statistiche",
"useFor": "Istogramma della distribuzione delle dimensioni dei pacchetti, per porta TCP / UDP"
},
{
"mode": "Monitor della stazione LAN",
"useFor": "Per-MAC statistiche del traffico per il dominio broadcast locale"
}
],
"exit": "<strong>Esci:</strong> premi <kbd>x</kbd> da qualsiasi vista oppure <kbd>Q</kbd> dal menu principale. ProxMenux mostra un promemoria prima dell’avvio.",
"logTitle": "Salvataggio delle acquisizioni su file",
"logBody": "Ogni modalità offre di registrare le statistiche catturate a <code>/var/log/iptraf-ng/</code>. Utile se avete bisogno di un record di un picco di traffico — lasciare in esecuzione, registrare a file, rivedere il file dopo invece di cercare di leggere lo schermo dal vivo."
},
"iperf3": {
"heading": "Test della larghezza di banda (iperf3)",
"intro1": "Misura la velocità TCP effettiva tra due host. A differenza di iftop / iptraf-ng, che osservano il traffico esistente, iperf3 genera traffico sintetico per una prova di carico del collegamento. Indispensabile per domande come <em>«la mia rete 10 GbE raggiunge davvero 10 GbE?»</em> oppure <em>«il collo di bottiglia è la scheda di rete, lo switch o lo storage?»</em>.",
"intro2": "iperf3 è uno <strong>strumento per due host</strong>: uno funge da server e ascolta sulla porta TCP 5201; l’altro funge da client, si connette, invia dati e mostra la velocità. Il lanciatore di ProxMenux chiede quale modalità vuoi:",
"headerMode": "Modalità",
"headerBehaviour": "Comportamento",
"headerCli": "Comando CLI equivalente",
"rows": [
{
"mode": "Server",
"behaviour": "Ascolta sulla porta TCP 5201 e mostra i risultati di ogni test in arrivo. Si arresta con Ctrl+C.",
"cli": "iperf3 -s"
},
{
"mode": "Cliente",
"behaviour": "Chiede l’indirizzo IP o il nome host del server, si connette, esegue il test predefinito di 10 secondi e mostra il rapporto.",
"cli": "iperf3 -c <target>"
}
],
"workflowIntro": "Flusso di lavoro tipico per testare un collegamento 10 GbE tra due host Proxmox:",
"workflow": [
"Sull’host A, apri il menu Rete → <em>Test della larghezza di banda (iperf3)</em> → scegli <strong>Server</strong>.",
"Su host B, apri la stessa voce del menu → scegli <strong>Client</strong> → inserisci l'IP dell'host A.",
"Attendere 10 secondi. Confrontare il tasso riportato al massimo teorico del link."
],
"sample": "Esempio di output del client:",
"flagsTitle": "Opzioni utili da usare manualmente dalla shell",
"flagsBody": "<code>-t 60</code> test più lungo (60 s invece di 10 s), <code>-P 4</code> 4 flussi paralleli (saturano prima il collegamento), <code>-R</code> direzione inversa (server → client), <code>-u -b 100M</code> test UDP a 100 Mbit/s (misurazione di jitter e perdita di pacchetti), <code>-p 5202</code> porta diversa (più test in parallelo). Elenco completo in <code>man iperf3</code>.",
"firewallTitle": "Aprire la porta firewall sul server",
"firewallBody": "Il server ascolta TCP <strong>5201</strong> per impostazione predefinita. Se si esegue il server all'interno di un host Proxmox con un firewall rigoroso (datacenter o livello host), consentire TCP 5201 in entrata dall'IP del client per la durata del test, quindi chiudere di nuovo. Lo stesso vale per <code>nftables</code> / <code>iptables</code> su host nudi."
},
"install": {
"heading": "Il primo lancio installa il pacchetto",
"body": "Tutti e tre i lanciatori controllano il binario ed eseguono <code>apt-get update -qq &amp;&amp; apt-get install -y &lt;pkg&gt;</code> se manca. L'installazione è silenziosa: il menu può apparire congelato per 10–30 secondi la prima volta. I lanci successivi iniziano immediatamente."
},
"troubleshoot": {
"heading": "Risoluzione dei problemi",
"hangTitle": "L’installazione resta bloccata al primo avvio",
"hangBody": "L’host non ha accesso a Internet oppure i repository apt sono irraggiungibili. Annulla con <kbd>Ctrl</kbd>+<kbd>C</kbd>, esegui <code>apt-get update</code> manualmente per vedere l’errore effettivo (DNS, firma del repository, proxy, …), poi torna al menu.",
"refusedTitle": "Client iperf3: «unable to connect to server: Connection refused»",
"refusedBody": "Il server non è in esecuzione oppure il suo firewall blocca TCP 5201. Verifica sul server con <code>ss -tlnp | grep 5201</code>: dovrebbe mostrare iperf3 in ascolto. Se è in ascolto ma il client continua a fallire, controlla i firewall lungo il percorso tra i due host.",
"slowTitle": "iperf3 mostra una velocità molto inferiore a quella prevista per il collegamento",
"slowBody": "Cause comuni in ordine di probabilità: (1) la CPU di uno degli host limita la velocità: prova <code>iperf3 -c &lt;target&gt; -P 4</code> per usare più core; (2) il percorso passa per un collegamento più lento, come uno switch gigabit tra due schede 10 GbE; (3) MTU diversi: controlla <code>ip link show</code> su entrambi i lati; (4) offloading della scheda di rete disabilitato: vedi lo script della community <em>Disable NIC Offloading</em> se hai una scheda Intel e1000e.",
"noTrafficTitle": "iftop / iptraf-ng non mostrano traffico per un host occupato",
"noTrafficBody": "La cattura predefinita è sulla prima interfaccia rilevata. Specificare quello giusto esplicitamente dalla shell: <code>iftop -i vmbr0</code> o <code>iptraf-ng -i vmbr0</code>. Il menu launcher utilizza il default; per le interfacce non di default, viene eseguito da una console."
},
"related": {
"heading": "Correlati",
"items": [
{
"label": "Diagnostica",
"href": "/docs/network/diagnostics",
"tail": "— i controlli di sola lettura (routing, connettività, statistiche avanzate)."
},
{
"label": "Analisi dei bridge e riparazione guidata",
"href": "/docs/network/bridge-analysis",
"tail": "— quando il monitoraggio rivela un'interfaccia o un ponte non sta facendo ciò che dovrebbe."
}
]
}
}
@@ -0,0 +1,130 @@
{
"meta": {
"title": "Nomi di interfaccia persistenti | Documentazione ProxMenux",
"description": "Associa i nomi delle interfacce Proxmox (eno1, enp3s0, …) agli indirizzi MAC tramite file .link di systemd per mantenerli dopo la rinumerazione PCI, aggiornamenti del kernel e aggiunta o rimozione di altre schede di rete.",
"ogTitle": "Nomi di interfaccia persistenti | Documentazione ProxMenux",
"ogDescription": "Evita che i nomi delle interfacce Proxmox cambino quando modifichi l’hardware. Usa file .link di systemd basati sull’indirizzo MAC."
},
"header": {
"title": "Nomi di interfaccia persistenti",
"description": "Genera un file .link di systemd per ogni scheda di rete fisica, associando il nome assegnato dal kernel all’indirizzo MAC della scheda. Dopo l’applicazione al prossimo riavvio, i nomi delle interfacce rimangono stabili quando aggiungi, rimuovi o sposti schede PCIe.",
"section": "Rete"
},
"intro": {
"title": "Cosa fa",
"body": "Per ogni NIC fisico sull'host, scrive un piccolo file sotto <code>/etc/systemd/network/10-&lt;iface&gt;.link</code> che dice: <em>\"il dispositivo con questo MAC deve sempre essere chiamato questo nome\"</em>. systemd-udevd applica la regola ad ogni avvio, prima che <code>ifupdown</code> legga <code>/etc/network/interfaces</code>."
},
"problem": {
"heading": "Il problema che risolve",
"intro": "Linux ricava i nomi predefiniti delle interfacce dalla topologia PCI: <code>eno1</code> = integrata, <code>enp3s0</code> = scheda sul bus PCI 3, slot 0, ecc. Lo schema dei nomi è deterministico <em>a parità di disposizione hardware</em>. Se la disposizione cambia, cambiano anche i nomi:",
"items": [
"Aggiungere un GPU di fronte a un NIC esistente → il numero di bus NIC può cambiare → cambi di nome.",
"Spostare una scheda in una diversa slot PCIe → cambia nome.",
"Aggiornamento BIOS / UEFI che rienumera i dispositivi → i nomi possono cambiare.",
"Sostituire una scheda difettosa con lo stesso modello in una slot diversa → cambia nome."
],
"outro": "Dopo una modifica simile, <code>/etc/network/interfaces</code> fa ancora riferimento al nome <em>precedente</em>; il bridge non si attiva e l’host perde la rete. Impostare nomi persistenti impedisce che la situazione si ripeta."
},
"howWorks": {
"heading": "Come funziona",
"arrowLabel": "per scheda di rete",
"nodes": {
"detectLabel": "Rileva le schede di rete fisiche",
"detectDetail": "ls /sys/class/net/\nescludi vmbr / bond /\ndocker / veth / wireguard …",
"readLabel": "Leggi ogni MAC",
"readDetail": "cat /sys/class/net/\n '<'iface'>'/address",
"writeLabel": "Scrivi file .link",
"writeDetail": "/etc/systemd/network/\n 10-'<'iface'>'.link"
},
"minimalIntro": "Ogni file generato è intenzionalmente minimo:",
"minimalOutro": "All’avvio, systemd-udevd identifica il dispositivo tramite MAC e assegna il nome richiesto <em>prima</em> che intervengano altri componenti (ifupdown, denominazione predefinita del kernel). Il prefisso <code>10-</code> fa caricare queste regole in anticipo, prima del file predefinito <code>99-default.link</code>."
},
"scope": {
"heading": "Quello che viene scritto, quello che viene saltato",
"headerType": "Tipo",
"headerBehaviour": "Comportamento",
"headerWhy": "Perché?",
"rows": [
{
"type": "Scheda di rete integrata / PCIe",
"behaviour": "File <code>.link</code> scritto",
"why": "Corrisponde a un dispositivo PCI reale: il caso per cui è pensato lo strumento"
},
{
"type": "Wi-Fi (phy80211)",
"behaviour": "File <code>.link</code> scritto",
"why": "Ha un MAC reale e benefici dalla stabilità dei nomi"
},
{
"type": "Ponti (vmbrX)",
"behaviour": "Ignorato",
"why": "Virtuale; il nome viene da <code>/etc/network/interfaces</code>"
},
{
"type": "Bond (bondX)",
"behaviour": "Ignorato",
"why": "Virtuale; il nome del bond è impostato da ifupdown"
},
{
"type": "veth / docker0 / br-XXXX",
"behaviour": "Ignorato",
"why": "Creato su richiesta da Docker / LXC — hardware non persistente"
},
{
"type": "tap / fwpr / fwln",
"behaviour": "Ignorato",
"why": "Creato su richiesta da Proxmox per VM/CT"
},
{
"type": "WireGuard / Cilium / Tailscale",
"behaviour": "Ignorato",
"why": "Interfacce software gestite dai propri demoni"
}
]
},
"safety": {
"heading": "Rete di sicurezza: backup dei file .link precedenti",
"intro": "Se <code>/etc/systemd/network/</code> contiene già file <code>.link</code> da un’esecuzione precedente o da altri strumenti, questi vengono copiati in una directory di backup con data e ora prima di generare i nuovi file:",
"outro": "Per tornare indietro: copiare i file dalla directory di backup e riavviare.",
"rebootTitle": "Prende effetto sul prossimo riavvio, non immediatamente",
"rebootBody": "Le modifiche ai file <code>.link</code> si applicano solo all’avvio, quando udev enumera nuovamente i dispositivi. Per questo lo strumento mostra <em>«Le modifiche saranno applicate dopo il riavvio»</em>. Rinominare un’interfaccia in uso è rischioso e non viene tentato: un <code>vmbr0</code> attivo con interfacce membro andrebbe riconfigurato atomicamente, quindi l’operazione è rimandata al prossimo avvio pulito."
},
"afterReboot": {
"heading": "Dopo il riavvio",
"intro": "Una volta che i nomi sono bloccati, il flusso di lavoro per le future modifiche hardware è semplice:",
"items": [
"Spegni, modifica l’hardware (aggiungi una scheda, cambia slot, …), poi avvia.",
"Ogni NIC mantiene il suo nome precedente perché il suo MAC corrisponde a un file <code>.link</code>.",
"Se una scheda di rete viene sostituita e ha un MAC diverso, riceve un nome predefinito del kernel (<code>enp&lt;bus&gt;s&lt;slot&gt;</code>); esegui di nuovo questo menu per aggiungere una voce <code>.link</code> per il MAC della nuova scheda."
]
},
"troubleshoot": {
"heading": "Risoluzione dei problemi",
"emptyTitle": "\"Nessuna interfaccia fisica trovata\" dopo aver eseguito lo strumento",
"emptyBody": "Il kernel non vede interfacce basate su PCI / phy80211 sull’host. Verifica con <code>ls -l /sys/class/net/</code>: ogni voce dovrebbe avere un collegamento simbolico <code>device</code> (PCI) oppure una voce <code>phy80211</code> (Wi-Fi). Se mancano entrambi per una scheda di rete reale, il driver non è caricato.",
"noChangeTitle": "Dopo il riavvio, i nomi non sono cambiati come previsto",
"noChangeBody": "Verifica che il file esista e sia ben formato: <code>cat /etc/systemd/network/10-&lt;iface&gt;.link</code>. Poi controlla i log di udev: <code>journalctl -u systemd-udevd -b | grep -i link</code>. Una causa comune è un vecchio parametro del kernel <code>net.ifnames=0</code> che disabilita del tutto i nomi prevedibili: rimuovilo da <code>/etc/default/grub</code>, esegui <code>update-grub</code> e riavvia.",
"undoTitle": "Voglio annullare la denominazione persistente",
"undoBody": "Elimina i file <code>.link</code> (<code>rm /etc/systemd/network/10-*.link</code>) oppure ripristinali dalla directory di backup creata nell’esecuzione precedente. Riavvia per applicare."
},
"related": {
"heading": "Correlati",
"items": [
{
"label": "Analisi dei bridge e riparazione guidata",
"href": "/docs/network/bridge-analysis",
"tailRich": " — il percorso di ripristino quando i nomi sono <em>già</em> cambiati."
},
{
"label": "Analisi della configurazione e pulizia guidata",
"href": "/docs/network/config-analysis",
"tail": "— rimuovere i blocchi orfani lasciati alle spalle con i cambi di nome."
},
{
"label": "Diagnostica",
"href": "/docs/network/diagnostics",
"tailRich": " — verifica i nuovi nomi con <em>Mostra tabella di routing</em> dopo il riavvio."
}
]
}
}