ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 웹 브라우저를 통해 도메인 주소를 입력하는 경우, 실제로는 IP 주소와 MAC 주소를 모두 얻는 과정
    컴퓨터과학/네트워크 2024. 7. 23. 10:02
    728x90
    반응형

     

     

    전체 과정 요약

    1. DNS 조회: 도메인 주소를 IP 주소로 변환
    2. ARP 조회: IP 주소를 MAC 주소로 변환 (로컬 네트워크 내)
    3. 데이터 전송: IP 및 MAC 주소를 이용해 데이터를 전송

     

    1. DNS 조회

    도메인 주소 (예: www.example.com)를 입력하면, 먼저 해당 도메인에 대한 IP 주소를 알아내야 합니다.

    DNS 조회 과정

    1. 호스트 파일 확인: 클라이언트는 먼저 로컬 호스트 파일을 확인하여 도메인에 대한 IP 주소가 지정되어 있는지 확인합니다.
    2. DNS 캐시 확인: 운영체제의 DNS 캐시에 도메인에 대한 IP 주소가 저장되어 있는지 확인합니다.
    3. DNS 서버 질의: 캐시에 없으면 설정된 DNS 서버에 질의합니다.
      • 질의 과정:
        • 클라이언트의 DNS 리졸버가 DNS 서버에 www.example.com의 IP 주소를 요청합니다.
        • DNS 서버는 루트 네임서버, TLD 네임서버, 도메인 네임서버를 순차적으로 조회하여 최종 IP 주소를 반환합니다.
    4. IP 주소 반환: 클라이언트는 DNS 서버로부터 IP 주소 (예: 93.184.216.34)를 받습니다.

     

    2. ARP 조회

    IP 주소가 로컬 네트워크 내에 있는 경우 (예: 사내 웹 서버 등), IP 주소를 MAC 주소로 변환하는 ARP 과정을 수행합니다.

    ARP 과정

    1. ARP 캐시 확인: 클라이언트는 자신의 ARP 캐시에 해당 IP 주소의 MAC 주소가 있는지 확인합니다.
    2. ARP 요청: 캐시에 없으면 ARP 요청 패킷을 브로드캐스트합니다.
      • ARP 요청 패킷: "Who has 93.184.216.34? Tell 192.168.0.2"
    3. ARP 응답: 대상 IP를 가진 장치가 자신의 MAC 주소를 포함한 응답을 클라이언트에 유니캐스트로 보냅니다.
      • ARP 응답 패킷: "93.184.216.34 is at AA:BB:CC:DD:EE:FF"
    4. ARP 캐시 업데이트: 클라이언트는 ARP 캐시에 이 정보를 저장합니다.

     

    3. 데이터 전송

    클라이언트는 얻은 IP 주소와 MAC 주소를 사용하여 데이터를 전송합니다.

    데이터 전송 과정

    1. TCP 연결 설정: 클라이언트는 서버와의 TCP 연결을 설정합니다 (3-way handshake).
      • SYN: 클라이언트 → 서버 (SYN 패킷, 목적지 IP와 MAC 주소 포함)
      • SYN-ACK: 서버 → 클라이언트 (SYN-ACK 패킷, 출발지 IP와 MAC 주소 포함)
      • ACK: 클라이언트 → 서버 (ACK 패킷)
    2. HTTP 요청: TCP 연결이 설정되면 클라이언트는 HTTP 요청을 보냅니다.
      • HTTP 요청 패킷: "GET / HTTP/1.1" (TCP 세그먼트로 캡슐화, IP 패킷으로 캡슐화, 이더넷 프레임으로 캡슐화)
    3. 응답 수신: 서버는 HTTP 응답을 클라이언트로 전송합니다.
      • HTTP 응답 패킷: HTTP 응답 (이더넷 프레임으로 캡슐화, IP 패킷으로 캡슐화, TCP 세그먼트로 캡슐화)

    웹 브라우저에서 도메인 입력 후 데이터 전송까지의 전체 흐름

    1. 웹 브라우저에 도메인 입력 (www.example.com)
    2. DNS 조회를 통해 도메인의 IP 주소 (93.184.216.34)를 얻음
    3. ARP 조회를 통해 IP 주소를 MAC 주소 (AA:BB:CC:DD:EE:FF)로 변환 (로컬 네트워크 내)
    4. TCP 연결 설정HTTP 요청 전송
    5. 서버 응답 수신 및 웹 페이지 렌더링

    이 과정을 통해 웹 브라우저는 도메인 주소를 입력하고, 해당 웹 서버로 데이터를 전송하여 웹 페이지를 받아옵니다.

    728x90
    반응형
Designed by Tistory.