Erro tcpip: falha na solicitação devido a todas essas portas estarem em uso

8

Hoje minha máquina parou de acessar a internet. Ainda consigo acessar alguns recursos de rede local. Quando olhei no log de erros, vi o seguinte aviso tcpip:

Uma solicitação para alocar um número de porta efêmero do espaço de porta UDP global falhou devido a todas essas portas estarem em uso.

Eu corri netstat -anobe na saída o DNScache é listado milhares de vezes (a partir da porta 50000 até 65536).

saída netstat

É a segunda vez que isso acontece comigo. Matar o processo DNSClient com base nas instruções encontradas aqui funcionou, mas eu gostaria de descobrir o que está causando esse problema.

Atualização: quando esse problema ocorre, ainda consigo entrar online com programas que usavam o DNS para resolver um nome de host antes de o problema começar. Por exemplo, eu posso continuar conversando com amigos com o Pidgin. Também consigo conectar-me a sites diretamente usando o endereço IP.

cmorse
fonte
Atualização: Isso já aconteceu comigo várias vezes nesta semana. Eu realmente gostaria de alguma ajuda para rastrear o que está causando o problema, por isso estou adicionando uma recompensa.
Cmorse #
Verifique as configurações do seu roteador, pois alguns têm uma configuração que limita o número de conexões com o mesmo host. Tente reiniciar o roteador para verificar se isso resolve o problema. Em caso afirmativo, consulte as configurações avançadas em DoS e olhar para o número de conexões por host
Ian
@ Ian Estou executando o dd-wrt no meu roteador. Entrei e verifiquei e havia 143 conexões IP ativas (3% do máximo). Posso verificar novamente amanhã para ver se o número é maior quando o problema acontece. Vi o número de conexões ultrapassar 1.000 sem problemas.
Cmorse # 6/13
11
O que realmente está acontecendo aqui é que o serviço Dnscache está vinculando todas as portas de escuta que é permitido usar e falhando quando tenta vincular outra. Não encontrei informações sobre a causa e não tenho uma caixa do Windows 8 para experimentar; Enquanto isso, aconselho desabilitar o serviço Dnscache por meio do console de serviços (Iniciar -> Executar -> services.msc, OK). A execução sem ele evitará que os resultados da resolução de nomes sejam armazenados em cache, o que diminuirá um pouco as solicitações de rede à medida que forem necessárias mais consultas DNS, mas interromperá o problema muito pior que você está vendo.
Aaron Miller
11
Idealmente, eu também faria isso - mas isso pode levar algum tempo e a desativação do serviço pode oferecer uma pausa decente para que a resolução do DNS não falhe aleatoriamente e exija intervenção manual para ser retomada entre agora e sempre que uma solução for apresentada em si.
Aaron Miller

Respostas:

6

Eu descobri! Era o HealthAlertsSvc (Serviço de Integridade do Windows Server). Parece que o serviço de integridade em minha máquina com o Windows Home Server 2011 travou, e isso revelou um erro no HealthAlertsSvc do lado do cliente, onde não liberava as portas UDP corretamente.

Para verificar se era esse o caso. Desativei o serviço no lado do servidor e na área de trabalho. Assim que reativei o serviço na área de trabalho, o número de conexões UDP deixadas em aberto começou a crescer lentamente. Após reiniciar o serviço no servidor, um grande número de conexões UDP foi liberado imediatamente e a lista não aumentou mais de tamanho.

cmorse
fonte