network-interface-health
Ajuda seu agente a diagnosticar problemas em interfaces de rede. É útil quando uma conexão de rede está apresentando erros ou lentidão.
O que ela faz
Esta ferramenta ajuda a identificar problemas em conexões de rede, como cabos, portas de equipamentos ou configurações incorretas. Ela analisa erros e o desempenho das interfaces de rede para encontrar a causa de lentidão ou falhas.
Quando usar
- ✓Quando a internet está lenta ou caindo.
- ✓Se um equipamento de rede (roteador, switch) mostra muitos erros.
- ✓Antes de trocar um cabo ou peça, para ter certeza que é o problema.
Exemplo do que pedir para a IA
“Minha conexão está com problemas, pode verificar a saúde da interface de rede?”
Quer saber mais? Abra as seções abaixo.
Como usar
O jeito mais fácil: copie a mensagem abaixo e cole no Claude, ChatGPT, Cursor ou outra IA. Ela lê a skill e segue as instruções.
Link da skill
Mensagem pronta para colar
Como funciona
A ferramenta coleta informações sobre o tráfego de rede e compara os números de erros ao longo do tempo. Ela também verifica configurações como velocidade e duplex para encontrar inconsistências.
Instalação
Jeito mais fácil: copie o link da skill e cole no Claude, ChatGPT ou Cursor pedindo para seguir as instruções.
No terminal (Claude Code, Codex, Cursor), na pasta do projeto:
npx skills add affaan-m/ECC --skill network-interface-healthOu baixe só o arquivo:
curl -L https://raw.githubusercontent.com/affaan-m/ECC/main/skills/network-interface-health/SKILL.md -o SKILL.mdConteúdo técnico (SKILL.md)
Tradução do texto original do autor no GitHub. Os comandos e códigos estão como no original.
Saúde da Interface de Rede
Use esta habilidade quando um sintoma de rede puder ser causado por um link físico, porta de switch, cabo, transceptor, configuração de duplex ou interface congestionada.
Quando Usar
- Um host ou VLAN tem perda de pacotes, picos de latência ou alcançabilidade intermitente.
- Uma interface de switch ou roteador mostra CRCs, runts, giants, drops, resets ou flaps.
- Você precisa comparar ambas as extremidades de um link antes de substituir hardware.
- Uma janela de mudança precisa de evidências de contadores de interface antes e depois.
- O monitoramento relata aumento de
ifInErrors,ifOutErrorsouifOutDiscards.
Como Funciona
Contadores de interface são evidências, mas a tendência importa mais do que o número absoluto. Capture uma linha de base, espere um intervalo de medição, capture novamente e, em seguida, compare os incrementos.
show interfaces <interface>
show interfaces <interface> status
show logging | include <interface>|changed state|line protocol
Em hosts Linux:
ip -s link show <interface>
ethtool <interface>
ethtool -S <interface>
Referência de Contadores
| Contador | Significado | Causa Comum |
|---|---|---|
| CRC | Falha na soma de verificação do quadro recebido | Cabo ruim, fibra suja, óptica ruim, incompatibilidade de duplex |
| input errors | Erros agregados no lado de recebimento | Verifique subcontadores antes de concluir |
| runts | Quadros abaixo do tamanho mínimo do Ethernet | Incompatibilidade de duplex, domínio de colisão, NIC defeituosa |
| giants | Quadros maiores que o MTU esperado | Incompatibilidade de MTU ou limite de jumbo-frame |
| input drops | Dispositivo não pôde aceitar pacotes de entrada | Rajada, supersubscrição, caminho da CPU, pressão da fila |
| output drops | Pacotes descartados da fila de saída | Congestionamento, política de QoS, uplink subdimensionado |
| resets | Reinicialização do hardware da interface | Flapping, keepalive, driver, óptica, energia |
| collisions | Contador de colisão Ethernet | Half duplex ou incompatibilidade de negociação |
Fluxo de Diagnóstico
CRCs ou Erros de Entrada
- Confirme se os contadores estão incrementando, não apenas históricos.
- Verifique ambas as extremidades do link. Erros no lado de recebimento geralmente apontam para o sinal chegando nesse lado, não necessariamente para a porta que relata o erro.
- Substitua o cabo de remendo ou limpe/substitua a fibra e as ópticas.
- Confirme se as configurações de velocidade/duplex correspondem em ambos os lados.
- Verifique os logs em busca de eventos de flap na mesma marcação de tempo.
Drops
- Separe os drops de entrada dos drops de saída.
- Compare a taxa da interface com a capacidade.
- Verifique a política de QoS, os contadores de fila e se o link é um uplink supersubscrito.
- Trate o ajuste da fila como secundário. Primeiro, prove se o link está congestionado.
Duplex e Velocidade
Prefira a negociação automática em links Ethernet modernos quando ambos os lados a suportam. Se um lado precisar ser corrigido, configure ambos os lados explicitamente e documente o motivo. Nunca misture velocidade/duplex fixos em um lado com auto no outro.
show interfaces <interface> | include duplex|speed
Exemplo de Analisador Seguro
Fatie cada bloco de interface de um cabeçalho para o próximo. Não use uma janela de caractere arbitrária; blocos de interface grandes podem fazer com que os contadores sejam perdidos ou atribuídos à porta errada.
import re
from typing import Any
HEADER_RE = re.compile(
r"^(?P<name>\S+) is (?P<status>(?:administratively )?down|up), "
r"line protocol is (?P<protocol>up|down)",
re.I | re.M,
)
ERROR_RE = re.compile(r"(?P<input>\d+) input errors, (?P<crc>\d+) CRC", re.I)
DROP_RE = re.compile(r"(?P<output>\d+) output errors", re.I)
DUPLEX_RE = re.compile(r"(?P<duplex>Full|Half|Auto)-duplex,\s+(?P<speed>[^,]+)", re.I)
def parse_show_interfaces(raw: str) -> list[dict[str, Any]]:
headers = list(HEADER_RE.finditer(raw))
interfaces = []
for index, header in enumerate(headers):
end = headers[index + 1].start() if index + 1 < len(headers) else len(raw)
block = raw[header.start():end]
errors = ERROR_RE.search(block)
drops = DROP_RE.search(block)
duplex = DUPLEX_RE.search(block)
interfaces.append({
"name": header.group("name"),
"status": header.group("status"),
"protocol": header.group("protocol"),
"duplex": duplex.group("duplex") if duplex else "unknown",
"speed": duplex.group("speed").strip() if duplex else "unknown",
"input_errors": int(errors.group("input")) if errors else 0,
"crc_errors": int(errors.group("crc")) if errors else 0,
"output_errors": int(drops.group("output")) if drops else 0,
})
return interfaces
Exemplos
CRCs em uma Porta de Switch
…
Perguntas frequentes
O que são 'erros CRC'?
São erros na verificação de integridade dos dados recebidos, geralmente causados por cabos ruins, sujeira em conexões de fibra óptica ou problemas no equipamento.
O que significa 'flapping'?
É quando uma conexão de rede fica caindo e voltando rapidamente, indicando um problema instável.
Devo limpar os contadores de erro?
Só limpe os contadores depois de anotar os valores atuais como referência. Limpar sem registrar pode fazer você perder informações importantes para o diagnóstico.
Detalhes
Descrição original do autor
Diagnose interface errors, drops, CRCs, duplex mismatches, flapping, speed negotiation issues, and counter trends on routers, switches, and Linux hosts. Use when an interface shows errors, drops, CRCs, flapping, or a duplex or speed mismatch.
repo: affaan-m/ECC
Popularidade
- Estrelas no GitHub
- 280 mil
- Posição no ranking
- #241
- Licença
- MIT
- Atualizada em
- 15/10/2026
Comentários
- …
Mais skills deste repositório
accessibility
Ajuda seu agente a criar interfaces que todos possam usar. Garante que sites e aplicativos funcionem bem para pessoas com deficiência, como cegos ou com mobilidade reduzida.
affaan-m/ECC
agent-architecture-audit
Faz seu agente verificar se tudo está funcionando corretamente. Ele encontra e conserta problemas em sistemas de IA, garantindo que funcionem como esperado.
affaan-m/ECC
agent-eval
Ajuda seu agente a comparar diferentes ferramentas de programação de IA. Ele mede qual é mais rápido, barato e confiável para realizar tarefas específicas.
affaan-m/ECC
agent-harness-construction
Faz seu agente entender melhor como realizar tarefas. Ele otimiza as ferramentas e instruções que o agente usa para aumentar suas chances de sucesso.
affaan-m/ECC
Skills parecidas
git-workflow-and-versioning
Organiza o trabalho de código usando o Git. Ajuda a salvar o progresso, gerenciar diferentes versões e evitar conflitos ao trabalhar em equipe.
addyosmani/agent-skills
observability-and-instrumentation
Adiciona ferramentas para monitorar o que o código faz em produção. Ajuda a entender se algo deu errado e por quê, facilitando a correção.
addyosmani/agent-skills
github-pr-workflow
Prepara pull requests no GitHub, garantindo a qualidade do código e a documentação.
paperclipai/paperclip