로그인 여정의 시작: 도메인부터 찾아야 한다
지난 글에서 우리는 SSO(Single Sign-On)의 전체적인 흐름을 간단히 살펴봤습니다. 이번 글부터는 그 여정 하나하나를 따라가 볼 텐데요, 첫 번째 주제는 바로 **"주소 찾기"**입니다.
생각해보세요. 여러분이 회사 웹메일 사이트에서 로그인 버튼을 누르자 브라우저에 SSO 로그인 창이 떴습니다.
그런데 이 로그인 창이 뜨려면 먼저 **“어디에 접속할지”**를 알아야 합니다. 사람은 login.company.com처럼 주소를 기억하지만, 컴퓨터는 숫자(IP 주소)로만 통신합니다.
이 주소를 숫자로 바꾸는 게 바로 DNS의 역할입니다. 그런데, 무조건 물어보는 게 아니라 우선 "예전에 가봤던 기억"부터 떠올립니다. 즉, 캐시를 먼저 뒤지는 거죠.
1단계: 브라우저 캐시 – “전에 가봤던 곳?”
브라우저는 먼저 자기 메모장을 꺼내듭니다.
“login.company.com? 전에 가본 적 있던가?”
브라우저 내부에는 최근 방문한 사이트의 주소와 IP가 잠깐 저장돼 있습니다. 이걸 브라우저 DNS 캐시라고 부릅니다. 마치 내가 지난주에 갔던 식당의 주소를 핸드폰 지도 기록에서 확인하는 것과 비슷하죠.
찾았다면? 바로 그 IP로 서버 접속을 시도합니다.
못 찾았을 경우? 다음 단계로 갑니다.
2단계: 운영체제(OS) 캐시 – “컴퓨터는 기억할까?”
브라우저도 모르면 운영체제에 묻습니다.
“혹시 이 주소 기억해?”
윈도우든 맥이든 컴퓨터는 DNS 정보를 따로 저장해 놓습니다. 이를 로컬 DNS 캐시라고 부르며, 브라우저보다 더 오랫동안 기억하고 있습니다.
이 캐시를 검색해도 없으면, 그다음은?
3단계: hosts 파일 – “혹시 수동으로 적어둔 적 있지?”
운영체제는 마지막으로 hosts 파일을 확인합니다.
이건 마치 "엄마 전화번호를 주소록 말고 냉장고 메모지에 적어놓은" 경우라고 생각하시면 돼요.
시스템 관리자나 개발자가 특정 도메인 주소를 강제로 특정 IP로 연결해둔 경우, 이 파일이 사용됩니다. (보안 상의 문제로 가짜 IP를 넣는 피싱 공격도 이 경로를 타기도 하죠.)
4단계: DNS 서버 질의 – “진짜 전화번호부에 물어보자”
어디서도 주소를 못 찾았다면, 이제는 외부에 묻습니다.
“DNS 서버님, login.company.com은 어디에 있어요?”
이게 바로 DNS 질의입니다. 컴퓨터는 설정된 DNS 서버(회사 내 DNS, 또는 공용 DNS인 Google의 8.8.8.8 등)에게 요청을 보냅니다.
DNS 서버는 마치 도메인 전용 전화번호부 같은 역할을 하며, 다음과 같은 과정을 거칩니다:
- 루트 서버: “.com은 어디에서 관리해?”
- TLD 서버: “company.com은 어디에 있어?”
- 권한 있는 DNS 서버: “login.company.com의 IP는 이거야!”
이렇게 계층적으로 조회하며, 최종적으로 login.company.com → 192.0.2.10 같은 실제 IP 주소를 받아옵니다.
보안과 성능에 중요한 이유
이 주소 찾기 과정은 SSO에서 매우 중요한 첫걸음입니다. 왜냐하면:
- 잘못된 주소(IP)에 접속하면 피싱 위험이 있습니다.
- DNS spoofing 공격처럼, 도메인을 가로채 가짜 사이트로 유도할 수 있습니다.
- 캐시를 잘 활용하면 로그인 속도 향상에도 도움이 됩니다.
즉, 안전하게 신뢰할 수 있는 IdP와 SP 주소에 정확하게 연결되는 게 전체 인증 과정의 전제조건입니다.
다음 이야기 예고
이제 우리는 브라우저가 SSO 로그인 페이지의 주소를 어떻게 찾는지 배웠습니다. 이 IP를 기반으로 다음에는 실제 서버에 연결을 시도하고, HTTPS로 안전하게 통신을 시작합니다.
다음 편에서는 이 서버와의 TCP 연결 및 HTTPS 인증서 교환 과정을 따라가 보겠습니다. 그리고 왜 이 연결이 사용자 ID와 비밀번호를 안전하게 보호하는 데 핵심인지 설명할 예정이에요.
'호주 IT 취업' 카테고리의 다른 글
| [SSO 로그인 흐름 4편] "아이디 입력했어요!" 그 다음엔? – SAML 인증 흐름 따라가기 (1) | 2025.06.18 |
|---|---|
| [SSO 로그인 흐름 3편] 서버와의 첫 만남 – 안전한 연결을 위한 ‘악수’ 과정 (TCP + HTTPS) (1) | 2025.06.17 |
| [SSO 로그인 흐름 1편] SSO SAML, 로그인 버튼 뒤의 여정 (1) | 2025.06.15 |
| 10. 오류 / 거부 / 스팸 분류 시나리오 (1) | 2025.06.07 |
| 9. 수신자 클라이언트의 받은편지함 표시 (Outlook vs Gmail) (3) | 2025.06.07 |