서버 내부에서의 자기 도메인 확인
서버 내부에서 자신의 공인 주소로 접속되지 않을 때 curl --resolve로 확인한다.
서버 내부 접속 문제
공유기 후단의 서버에서 자신의 도메인으로 접속하면 연결되지 않는 경우가 있다. 패킷이 외부로 송신된 뒤 같은 공유기로 되돌아오는 경로를 공유기가 처리하지 못하기 때문이다. 외부에서는 정상적으로 접속된다.
--resolve를 이용한 우회
도메인 이름은 그대로 두고, 접속할 주소만 서버 자신으로 변경한다. 이름이 동일하므로 nginx는 외부 접속 시와 동일한 서버 블록과 인증서를 선택한다.
curl -s -o /dev/null -w '%{http_code}\n' \
--resolve example.com:443:127.0.0.1 https://example.com/
다중 도메인 일괄 확인
for d in example.com blog.example.com; do
echo "$d : $(curl -s -o /dev/null -w '%{http_code}' \
--resolve $d:443:127.0.0.1 https://$d/)"
done
000이 출력되면 연결 자체가 이루어지지 않은 것이다. 등록하지 않은 도메인이라면 이 결과가 정상이다.