Risolvere i problemi di esaurimento delle porte in Windows
Qualsiasi connessione di rete effettuata tra computer (protocolli TCP o UDP), viene effettuata tramite le porte. Immagina questi come punti di ingresso o gateway che vengono utilizzati da un servizio o un'applicazione. Man mano che vengono effettuate più connessioni client, le porte si riducono nel conteggio. In questo post, condivideremo come risolvere i problemi Esaurimento del porto problemi.
Esistono due tipi di porte - Porte dinamiche e Porte definite. Le porte dinamiche consentono a più client di connettersi a porte definite. I siti Web sono un buon esempio. Di solito hanno definito la porta 80, ma usando una porta attiva, possono servire più client. Poiché esiste un limite per la porta dinamica, le connessioni inizieranno a fallire quando tutte le porte sono occupate. È definito come esaurimento del porto.
Risolvere i problemi relativi all'esaurimento delle porte in Windows
Il motivo principale di questa guida alla risoluzione dei problemi è identificare quale processo o applicazione sta esaurendo la porta. Una volta determinato, il passo successivo è quello di correggere l'app.
I sintomi per identificare l'esaurimento del porto:
1] Impossibile accedere alla macchina con le credenziali di dominio, tuttavia, l'accesso con l'account locale funziona. È possibile che un account già utilizzato possa funzionare, ma il nuovo fallirà. Succede a causa del caching.
2] L'aggiornamento dei Criteri di gruppo inizierà senza esito. Ogni volta che provi ad apportare modifiche, potresti ricevere un errore che dice "fallito a causa della mancanza di connettività di rete con il controller di dominio" Potrebbe essere temporaneo ma è un segno.
3] Le condivisioni di file o le unità di rete diventano inaccessibili.
4] Il desktop remoto sul server in cui è ospitata l'applicazione ha esito negativo.
Altri segni includono l'ID evento 4227, 4231 nel Visualizzatore eventi per TCP con un messaggio che l'allocazione della porta dinamica non è riuscita. Il comando NetStat mostra un numero enorme di voci per lo stato TIME_WAIT per una particolare applicazione e così via.
Utilizzare NetStat per Windows 10 e Windows Server 2016
- Apri il prompt dei comandi con privilegi elevati.
- Esegui il comando
netstat -anobq
- Quindi, verificare l'ID del processo che ha le voci massime come BOUND.
Se si utilizza PowerShell, è possibile utilizzare il comando seguente per identificare il processo con il limite massimo.
Get-NetTCPConnection | Group-Object -Property State, OwningProcess | Select -Property Count, Name, @ Name = "ProcessName"; Expression = (Get-Process -PID ($ _. Name.Split (',') [- 1] .Trim ("))). Nome , Gruppo | Ordina numero -Descendino
Molte volte, i client non chiudono correttamente le porte. Anche non in uso, queste porte non sono gratuite. È una delle maggiori ragioni per l'esaurimento del porto.
Se il bisogno è frequente, puoi usare Comando Netstat in un ciclo. L'output può essere disponibile in un file di testo che può essere utilizzato per monitorare la tendenza. Ecco come appare lo script:
@ECHO ON set v =% 1: loop set / a v + = 1 ECHO% data%% time% >> netstat.txt netstat -ano >> netstat.txt PING 1.1.1.1 -n 1 -w 60000> NUL loop goto
Utilizzare Task Manager per trovare le maniglie massime
Un metodo leggermente più naturale per trovare tali applicazioni sta utilizzando Task Manager. Mentre PowerShell e Command Prompt hanno i loro meriti, se vuoi vedere il processo velocemente, questo è un metodo migliore.
- Aprire Task Manager e passare a Scheda Dettagli.
- Fare clic con il tasto destro su una delle colonne e fare clic su "Seleziona colonne.”
- Aggiungi "Maniglie" dalle opzioni disponibili.
- Fai clic sull'intestazione della colonna degli handle per ordinarla per numero massimo.
Microsoft suggerisce che se le connessioni falliscono, controlla se il numero di handle è superiore a 3000. In tal caso, l'applicazione è il colpevole. Tuttavia, i servizi del sistema operativo sono un'eccezione a questo. Per gli altri, interrompi il processo una volta, quindi prova ad accedere utilizzando le credenziali di dominio e verifica se ha esito positivo.
Process Explorer
È possibile utilizzare Process Explorer nel caso in cui Task Manager non aiuti. È utile per rintracciare i problemi della versione DLL o gestire perdite e fornire informazioni sulle applicazioni rouge. Process Explorer dovrebbe essere scaricato da qui e installato. Assicurati di eseguirlo con privilegi elevati.
- Fai clic con il pulsante destro del mouse sull'intestazione della colonna, quindi seleziona "Scegli colonne".
- Passare alla scheda Prestazioni e aggiungere Gestire il conteggio.
- Dal menu, fare clic su Visualizza> Mostra riquadro inferiore.
- Ancora una volta fare clic sul menu, selezionare Visualizza> Vista riquadro inferiore> Maniglie.
- Ordinare le maniglie in ordine decrescente.
- Rivelerà il processo (i) con il numero di handle più alto
- Fare clic per evidenziare uno dei processi con il conteggio dell'handle superiore.
- Il pannello inferiore mostrerà il tipo per tutte le maniglie. Porte o socket sono generalmente con etichette "File \ Device \ AFD".
Chiudere il processo con un numero elevato di maniglie. Se l'applicazione si avvia, può essere la causa, e dovrai riparare l'applicazione o chiedere allo sviluppatore dell'OEM di risolverlo. Se non è possibile risolverlo perché l'applicazione lo richiede, è consigliabile aumentare il numero di porte che il computer può utilizzare. Il comando seguente (esempio) può cambiare l'intervallo e sollevarlo.
netsh int ipv4 set dynamicport tcp start = 10000 num = 1000
La porta di avvio minima che può essere impostata è 1025. La porta di estremità massima non può superare 65535.
Detto questo, la soluzione è ancora temporanea. Come amministratore IT, dovrai trovare una soluzione migliore per la risoluzione dell'esaurimento della porta. A volte è possibile utilizzare più server per aumentare le porte, ma questo è un campionato completamente diverso.