Devin.KR

DNS·DHCP와 서비스 연결

주소 배포와 이름 해석을 구성하고 TCP·TLS·HTTP 실패를 분리합니다.

진도 0%

레슨

  1. TCP·UDP와 소켓

    학교 웹 TCP 연결과 DNS UDP 질의를 관찰하고 TCP 연결 상태를 확인합니다.

  2. DHCP 임대와 예약

    실습망의 DHCP 풀·예약·게이트웨이·DNS 옵션을 구성하고 임대를 확인합니다.

  3. DNS 조회와 캐시

    실습 전용 school.test 이름을 DNS에 등록하고 응답·TTL·NXDOMAIN을 확인합니다.

  4. DNS·TCP·TLS·HTTP 구분

    제공된 실습 웹 서비스에서 이름 오류·연결 거부·인증서 오류·HTTP 오류를 구분하고 개발자 도구로 헤더·쿠키·세션 전달을 확인합니다.

학교 이름과 주소 서비스 연결

m04 미션 solution 전체를 보존하고 s1의 정적 .11을 DHCP 예약 .111로 전환합니다. r1 DNS와 제공 Python 웹 앱을 연결하고 단계별 증거를 수집합니다. 제공 앱 구현은 학습자 과제가 아닙니다.

요구사항

  • services.json에 학생 풀 .100~.120, s1 MAC 예약 .111, /24 마스크, 게이트웨이 10.20.10.1, DNS 10.20.30.1, 임대 600초를 구성합니다.
  • school.test와 web.school.test A를 10.20.30.11, TTL 60으로 응답합니다. 작은 UDP 권한 응답을 검사하며 운영 DNS의 TCP·SOA·재귀 기능은 범위 밖입니다.
  • 학교 웹은 제공 Python 표준 라이브러리 앱으로 실행합니다. HTTP 8080·TLS 8443과 교육 인증서를 사용하며 애플리케이션 작성은 요구하지 않습니다.
  • python3 test_services.py에서 starter 일부 실패·solution 8건 통과를 확인하고 Linux에서 sudo bash check.sh로 기존 m04 회귀·DORA·조회·연결·TLS·HTTP·쿠키 전송을 검증합니다.
  • addresses.csv와 routes.csv는 m04 이력으로 보존합니다. lease.json과 services.csv에 실제 적용·관측 값을 남기며 브라우저 헤더·쿠키 관측은 별도 제출하거나 대기로 기록합니다.

완료 기준

  • s1이 실제 UDP DORA로 예약 .111을 받고 ACK의 마스크·라우터·DNS·임대 시간이 설정과 일치합니다.
  • A 응답의 주소·TTL·AA와 missing.school.test의 NXDOMAIN을 확인합니다. DNS 응답과 --resolve 웹 연결을 독립적으로 기록합니다.
  • ss ESTABLISHED·연결 거부·HTTP 응답 timeout·TLS 검증 실패와 --cacert 성공·HTTP 503·Set-Cookie/Cookie 전송을 구분합니다.
  • 서비스가 스스로 종료한 후 네임스페이스가 정리되고 호스트 네트워크 스냅샷이 변경 전과 같습니다. Linux 동작은 external 확인 대기입니다.
sudo bash check.sh
미션 시작 코드
모범 답안모범 답안 내려받기

검토 기준

  • 검사 결과와 판단 근거를 연결해 설명합니다.
  • 구성도와 실제 설정의 차이를 정리하고 다음 담당자가 재현할 수 있게 기록합니다.