Todos sabemos que o ping é a maneira mais comum de estabelecer a conectividade da camada 3. A conectividade da camada 1 é estabelecida pela luz do link. A conectividade da camada 2 é estabelecida verificando se o protocolo de link aparece como ativo (ou você vê o endereço MAC), mas e a conectividade da camada 2 não ethernet? Que tal as camadas 4, 5, 6 e 7?
Portanto, a pergunta é: quais são as formas comuns de estabelecer inequivocamente a conectividade nas camadas 2, 4, 5, 6 e 7?
Algumas ideias que me vêm à cabeça:
1) telnet para a porta 80/443 para conectividade da camada 7
2) usar netcat (como?)
A camada 2 requer a camada 1 e a camada 3 requer a camada 2. Tudo acima disso requer uma camada de transporte funcional (3) e, portanto, os testes acima são específicos do aplicativo e variam entre o tipo de serviço que você está executando.
Como você já disse, o telnet, que é um aplicativo, portanto, a camada 7 é uma maneira prática de testar a conectividade do soquete entre os dispositivos. Ele também requer que todas as camadas abaixo dela estejam funcionando e, portanto, eu diria que é um teste completo de todas as camadas envolvidas para ter uma rede IP funcionando.
Se você estiver depurando conectividade (Camada 3), precisará de ping e traceroute.
Se você deseja verificar as portas abertas, você precisa de tcptraceroute(Layer 4 TCP) ou nmap (Layer 4 TCP/UDP), mas é muito difícil depurar o UDP.
openssl s_client -connect ajudará você a depurar o SSL (Camada 5).
Para todo o resto, use tcpdump/tshark.