Test connettività di rete network-connectivity-test
Il test della connettività di rete è uno strumento di diagnostica di Cloud Manager che consente di convalidare la configurazione di rete avanzata e VPN prima dell'attivazione della rete avanzata negli ambienti e prima della pubblicazione. Utilizzalo per verificare che gli host e le porte che AEM deve raggiungere, inclusi gli endpoint interni o privati, siano raggiungibili attraverso lo stesso percorso di connettività utilizzato da Rete avanzata.
Il test viene eseguito dall'infrastruttura proxy in uscita che appartiene alla configurazione di rete avanzata del programma, non da un pod Author o Publish. Utilizza lo stesso percorso di rete in uscita utilizzato da AEM quando è attiva la funzione Rete avanzata. Questa progettazione è particolarmente utile per gli scenari VPN: prima di andare in diretta, puoi confermare la risoluzione DNS, il routing di rete, le regole del firewall e la disponibilità del servizio per i sistemi privati o locali.
Per informazioni sul provisioning della VPN, sull'IP in uscita dedicato o sull'uscita da porta flessibile, vedere Configurazione di reti avanzate per AEM as a Cloud Service.
Quando utilizzare questo strumento when-to-use
- Dopo la creazione della rete avanzata al livello programma e prima o durante l'attivazione in ambienti.
- Per convalidare la connettività VPN ai sistemi privati o locali che utilizzi (ad esempio, nomi host interni o indirizzi IP privati).
- Per limitare i problemi DNS rispetto ai problemi firewall o di routing quando un servizio non risponde come previsto.
Prerequisiti prerequisites
- Un programma Cloud Manager.
- Infrastruttura di rete avanzata già creata per il programma (vedere Configurazione di reti avanzate).
Eseguire un test how-to-run-a-test
-
Accedi a Cloud Manager all'indirizzo my.cloudmanager.adobe.com e apri la tua organizzazione e il tuo programma.
-
Apri la scheda Ambienti per il programma. Nella barra laterale sinistra, selezionare Infrastruttura di rete.
-
Nella pagina Infrastruttura di rete, individuare l'infrastruttura nella tabella. Seleziona una riga per aprire l'esperienza di test oppure apri il menu delle azioni di riga (
) e scegli Test.
-
Viene visualizzata la finestra di dialogo Test di rete. Immetti Host e Porta, seleziona Prova e controlla la risoluzione DNS, l'apertura della porta, la connettività HTTP e la raggiungibilità nell'area dei risultati. Nella finestra di dialogo vengono visualizzate azioni facoltative come Copia negli Appunti e la cronologia dei test recenti. Consulta Informazioni sui risultati per informazioni su come interpretare ogni sezione.
Campi di input input-fields
internal-api.example.com, 10.0.1.50443Passaggi test-steps
- Immettere Host e Porta.
- Seleziona Test. I risultati vengono in genere visualizzati entro pochi secondi.
- Facoltativo: utilizzare Copia negli Appunti per acquisire il risultato JSON completo (utile per i casi di supporto).
- È possibile elencare i test recenti per le esecuzioni rapide.
I risultati understanding-results
Lo strumento riporta diverse dimensioni. Insieme descrivono se la destinazione è raggiungibile da Advanced Networking e come si sono comportati i controlli in base a HTTP.
Risoluzione DNS dns-resolution
ips: ["10.0.1.50"]error: "DNS resolution error: ..."Porta aperta port-open
Yes / trueNo / falseConnettività HTTP http-connectivity
Tentativo di richiesta HTTP/HTTPS su ogni porta. Lo strumento tenta sempre prima HTTPS, quindi torna a HTTP. Se nessuna delle due funziona, il risultato viene mappato a un breve messaggio di errore leggibile (vedi la tabella seguente).
Output di successo
protocol: "https", status_code: 200, reason: "200 OK"protocol: "http", status_code: 301, reason: "301 Moved Permanently"Output di errori classificati
"Not an HTTP/HTTPS service""The service appears to be a non-HTTP service (e.g., database, message queue, or custom TCP). Use the port_open and reachability fields to verify connectivity.""Connection refused""The port is not accepting connections. Verify the service is running and listening on this port.""Connection timed out""The connection timed out. Check firewall rules and network routing.""No IPs resolved for host"200, 301, 302, 403, 404 o 500) è un segnale di successo per la connettività. Significa che il percorso di rete funziona. Il codice di stato riflette la risposta del servizio stesso, non l’integrità complessiva della rete. Per i servizi non HTTP, lo strumento indica Non è un servizio HTTP/HTTPS. Utilizzare Porta aperta e Raggiungibilità come indicatori affidabili per tali servizi.Raggiungibilità reachability
Più risolutori DNS multiple-dns-resolvers
Se l'infrastruttura di rete avanzata definisce più resolver DNS:
- Quando tutti i resolver restituiscono risultati identici, viene visualizzato un singolo risultato consolidato con etichetta
default. - Quando i risolutori restituiscono risultati diversi, il risultato di ciascun risolutore viene visualizzato separatamente (con etichetta
resolver_1,resolver_2e così via), con l'IP del risolutore, in modo da individuare il server DNS che causa l'incoerenza.
Risoluzione dei problemi troubleshooting
Gli scenari seguenti associano ciò che è probabile vedere nello strumento con i passaggi per limitare la causa. Per la copia completa negli Appunti JSON che illustra le stesse situazioni, vedi Output di esempio.
Risoluzione DNS non riuscita dns-failed
Output
Il nome host non è stato risolto utilizzando le impostazioni DNS di rete avanzate. Impossibile verificare la porta. Nella visualizzazione dei risultati, Risoluzione DNS mostra una stringa di errore e Raggiungibilità segnala un errore DNS:
DNS Resolution: error: "DNS resolution error: ..."
Reachability: "Unreachable: DNS resolution failed"
Consigli
- Verificare che il nome host sia corretto. Verificare la presenza di errori di battitura e che si stia utilizzando la zona DNS prevista (la zona errata è un errore comune).
- Assicurati che i risolutori DNS, ovvero quelli configurati nell'infrastruttura di rete, siano raggiungibili dall'intervallo CIDR di rete avanzata (lo stesso spazio di indirizzi utilizzato dallo strumento e da AEM per i controlli in uscita). Se si utilizza il DNS privato, tali server devono essere raggiungibili tramite il tunnel VPN o all'interno dello spazio di indirizzi di rete che il routing espone alla rete avanzata.
- Verificare che i server DNS configurati siano in grado di risolvere il nome host. Le reti avanzate utilizzano solo i resolver definiti nella configurazione dell'infrastruttura di rete, non DNS pubblici (ad esempio,
8.8.8.8). Se il DNS interno non dispone di record per tale nome host, la risoluzione non riesce. - Per le impostazioni VPN: Verificare che gli indirizzi IP del server DNS si trovino nello spazio degli indirizzi VPN (CIDR di rete remota per cui è stato creato il tunnel). I resolver su una subnet non instradata attraverso il tunnel VPN non sono raggiungibili da Rete avanzata.
Il DNS funziona ma la porta non è accessibile dns-ok-port-blocked
Output
Lo strumento può risolvere l'host, ma TCP alla porta non riesce. Un riepilogo è spesso simile al seguente:
DNS Resolution: ips: ["10.0.1.50"]
Port Open: No
Reachability: "Unreachable: Port not accessible"
Consigli
- Rivedi le regole del firewall e dell'elenco Consentiti sul servizio di destinazione. È necessario consentire il traffico in ingresso dall'intervallo CIDR dell'infrastruttura di rete avanzata (e dagli indirizzi IP in uscita utilizzati da AEM). Se utilizzi una VPN, includi CIDR di rete remota come richiesto dalla progettazione.
- Verificare che il servizio sia in esecuzione e in ascolto sull'host e sulla porta immessi nel test.
- Per le impostazioni VPN: Verificare che il tunnel sia attivo, che il routing raggiunga la subnet di destinazione e che l'indirizzo di destinazione si trovi nello spazio degli indirizzi di rete remoto presente sulla VPN.
- Nell'infrastruttura, esaminare i gruppi di sicurezza di rete (NSG), le regole di sicurezza o equivalenti che potrebbero bloccare la porta tra la rete avanzata e la destinazione.
- Confermare il numero di porta. Verificare che il processo sia effettivamente in ascolto sulla porta da testare.
Il Test Mostra Che È Raggiungibile, Ma AEM Non Si Connette reachable-but-aem-fails
Output
Il controllo della connettività ha esito positivo. Un riepilogo sintetico è spesso simile al seguente:
Port Open: Yes
Reachability: "Reachable"
Questo risultato significa che il percorso dalla rete avanzata all'host e alla porta testati è aperto. Non garantisce che il traffico dell’applicazione AEM utilizzi quel percorso: quando il codice viene eseguito, i registri del servizio potrebbero ancora non mostrare richieste dall’IP in uscita previsto.
Consigli
- Il codice dell'applicazione deve essere configurato per utilizzare il proxy. Il test di connettività verifica il funzionamento del percorso di rete, ma AEM deve instradare esplicitamente le richieste tramite il proxy di rete avanzato (ad esempio, tramite la variabile di ambiente
AEM_PROXY_HOST). Se il codice effettua connessioni dirette senza il proxy, il traffico non passa attraverso l'infrastruttura di rete avanzata. - Verifica le impostazioni proxy nei client HTTP. I client HTTP devono utilizzare la stessa configurazione proxy (
AEM_PROXY_HOSTe l'inoltro delle porte, se applicabile). - Verificare la configurazione dell'inoltro porte per la rete avanzata al livello ambiente: in
portForwardsogni voce deve mappareportOrigaportDestnell'host destinazione destro.portOrigè la porta a cui il codice dell'applicazione AEM si connette quando apre la connessione in uscita tramite il proxy.portDestè la porta effettiva sul servizio di destinazione in cui il processo remoto è in ascolto. L'host di destinazione è il nome host o indirizzo del servizio utilizzato nell'inoltro. Tutti e tre devono corrispondere alla modalità di scrittura dell'applicazione per la connessione. - Seleziona
nonProxyHosts. Se l'host di destinazione è elencato, le richieste ignorano il proxy per tale host e non seguiranno il percorso di rete avanzato convalidato.
HTTP mostra un errore ma la porta è aperta http-error-port-open
Output
TCP riesce, ma il probe HTTP/HTTPS segnala ancora un errore. Un riepilogo è spesso simile al seguente:
Port Open: Yes
HTTP Connectivity: error: "Connection error: ..." or "Both HTTPS and HTTP failed. ..."
Reachability: "Reachable"
Consigli
- Il servizio potrebbe non parlare HTTP o HTTPS, ad esempio TCP raw, gRPC o un altro protocollo. Il probe HTTP può avere esito negativo mentre
Port open: YeseReachability: Reachableconfermano il funzionamento del percorso di rete. Utilizza questi campi come fonte di verità per i servizi non HTTP. - Verifica la configurazione di TLS e certificati. Se HTTPS non riesce ma HTTP riesce (a volte indicato da una nota come
HTTPS failed, HTTP succeeded), il servizio potrebbe avere problemi di certificato o offrire HTTP solo su tale porta.
Timeout richiesta timeout
Output
{ "error": "Request timeout" }
Consigli
- Consenti tempo di risposta del servizio. Il controllo utilizza un timeout di 5 secondi. I target che rispondono più lentamente di quello si interromperanno anche quando sono altrimenti sani.
- Account per la latenza di rete. Sulle connessioni VPN, un'elevata latenza o un tunnel non integro può spingere il percorso di andata e ritorno oltre il limite; rivedere lo stato e il routing del tunnel.
- Esegui di nuovo il test. I guasti di rete una tantum possono produrre un timeout che non si ripete.
Output di esempio example-outputs
Test HTTPS riuscito (ad esempio, API interna sulla porta 443) example-output-successful-https
{
"resolvers": [
{
"name": "default",
"dns_resolution": {
"ips": ["10.0.1.50"]
},
"port_open": true,
"http_connectivity": {
"protocol": "https",
"status_code": 200,
"reason": "200 OK"
},
"reachability": "Reachable"
}
]
}
Test del servizio non HTTP riuscito (ad esempio, database sulla porta 5432) example-output-successful-non-http
{
"resolvers": [
{
"name": "default",
"dns_resolution": {
"ips": ["10.0.1.50"]
},
"port_open": true,
"http_connectivity": {
"error": "Not an HTTP/HTTPS service",
"note": "The service appears to be a non-HTTP service (e.g., database, message queue, or custom TCP). Use the port_open and reachability fields to verify connectivity."
},
"reachability": "Reachable"
}
]
}
Risoluzione DNS non riuscita example-output-dns-resolution-failure
{
"resolvers": [
{
"name": "default",
"dns_resolution": {
"error": "DNS resolution error: dial udp 10.0.0.2:53: i/o timeout"
},
"port_open": false,
"http_connectivity": {
"error": "DNS resolution failed"
},
"reachability": "Unreachable: DNS resolution failed"
}
]
}
Porta non accessibile (firewall / servizio inattivo) example-output-port-not-accessible
{
"resolvers": [
{
"name": "default",
"dns_resolution": {
"ips": ["10.0.1.50"]
},
"port_open": false,
"http_connectivity": {
"error": "Connection error: dial tcp 10.0.1.50:443: i/o timeout"
},
"reachability": "Unreachable: Port not accessible"
}
]
}
Note importanti important-notes
Quali operazioni non vengono eseguite dal test what-this-test-does-not-do
- Il test non viene eseguito dall’interno di un pod di authoring o pubblicazione di AEM. Viene eseguito da infrastruttura proxy in uscita. In questo modo viene convalidato il livello di rete e non la configurazione proxy a livello di applicazione nel codice.
- Non convalida le impostazioni proxy dell’applicazione AEM. Anche quando il risultato è
Reachable, il codice AEM deve essere ancora configurato per l'utilizzo del proxy. - Non convalida di per sé la configurazione dell’inoltro porta a livello di ambiente. Verifica la connettività raw dal percorso dell’infrastruttura.
- Non invia payload personalizzati. I test HTTP emettono una richiesta
GETdi base a/.
Tempo di risposta response-time
- Tipico: circa 2-3 secondi.
- Massimo: timeout di circa cinque secondi.
- Tutti i risolutori DNS e i controlli di connettività vengono eseguiti in parallelo.
Servizi HTTP e non HTTP http-vs-non-http-services
Lo strumento tenta una connessione HTTP/HTTPS su ogni porta. Per i servizi non HTTP (ad esempio, PostgreSQL sulla porta 5432, MySQL su 3306, SFTP su 22, Redis su 6379), il controllo HTTP può non riuscire con un errore di connessione, come previsto. Utilizza Port open e Reachability per confermare la connettività per questi servizi.