사용 가능한 외부 경로가 HTTP 프록시일 때 웹 응답은 대략적인 시간 기준을 제공할 수 있습니다. 시계를 신뢰하는 통제된 엔드포인트에 대해 그 경로로 응답 헤더를 요청하십시오:

curl --head --proxy http://proxy.example.net:8080 https://time.example.net/

이 호스트는 예시용 엔드포인트이며 공용 시간 서비스가 아닙니다. 신뢰하는 엔드포인트가 공개적으로 접근 가능하고 네트워크가 인증 없는 공용 중개자를 허용한다면, HTTP 프록시 목록이 프록시 주소 후보를 제공할 수 있습니다. 다만 신뢰할 수 있는 시계를 제공하지는 않습니다. 응답에는 다음이 포함될 수 있습니다:

Date: Thu, 29 Oct 2026 08:15:20 GMT
Age: 45

Date는 HTTP 메시지가 생성된 시각을 나타냅니다. 이것이 반드시 "이 클라이언트에서의 현재 순간"을 뜻하지는 않습니다. 캐시된 응답은 재사용에 유효한 상태로 더 오래된 Date를 가질 수 있습니다. Age 필드는 응답의 경과 시간에 대한 캐시의 추정치를 초 단위로 나타냅니다.

이 예시 응답에서 보고된 경과 시간을 더하면 전송 지연과 추정 오차를 고려하기 전까지 약 08:16:05 GMT라는 대략적 기준을 얻습니다. 이것은 측정된 오프셋이 아닙니다. 애플리케이션이 불확실성을 설명하려면 클라이언트가 요청을 보내고 응답을 받은 시각을 기록하십시오.

일부 서버는 HEAD를 기대대로 지원하지 않거나 쓸 만한 시간 메타데이터를 생략합니다. 누락되었거나 형식이 잘못된 필드는 실패한 시간 관측으로 취급하십시오. 407 응답은 프록시 교환을 설명하는 것이므로 그 Date가 자동으로 조회하려던 엔드포인트의 시계는 아닙니다.

관측의 용도를 선택하십시오

이 방법은 시계가 몇 시간이나 며칠 틀렸는지 식별하거나, 진단 보고서에 대략적인 원격 타임스탬프를 첨부하는 데 도움이 됩니다. NTP의 시계 선택과 지연/오프셋 처리를 제공하지 않으며, 정밀도에 민감한 시계 조정을 이끌어서는 안 됩니다.

실제 시스템 동기화에는 네트워크의 승인된 시간 서비스와 지원되는 시간 동기화 경로를 사용하십시오. HTTP 프록시 경로는 NTP 프로토콜 자체를 사용 가능하게 하지 않고도 위의 헤더 확인을 전달할 수 있습니다.

관련 글