Проверяйте доступность по уровням: разрешение DNS, установление TCP-соединения, TLS и прикладной ответ. Успешный ping не доказывает, что сервис работает.
Какими способами можно проверить доступность удалённого сервиса или порта?
Проверяйте доступность по уровням: разрешение DNS, установление TCP-соединения, TLS и прикладной ответ. Успешный ping не доказывает, что сервис работает.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
Проверяйте доступность по уровням: разрешение DNS, установление TCP-соединения, TLS и прикладной ответ. Успешный ping не доказывает, что сервис работает.
Для TCP-порта подойдёт nc -vz example.org 443 с ограничением времени, для HTTPS — curl --connect-timeout 3 --max-time 10 -I https://example.org. TLS можно отдельно исследовать через openssl s_client с правильным SNI. HTTP-код 401 или 404 подтверждает прикладной ответ, но не успешность нужной операции. Проверку выполняют из той же сети, что и клиент: firewall, прокси и DNS могут различаться. Для UDP отсутствие ответа неоднозначно; нужен запрос соответствующего протокола.