CSS Tutor Study Hub 메인으로

Computersystemsicherheit 2025/26

실제 시험 문제 28

단답형 · Networking / DNS

단답형

문제

근거 신뢰도 높음실제 시험지 대조 완료단답형4점

독일어 원문

Alice erhält auf eine DNS-Anfrage mehrere Resource Records der Form 'tu-darmstadt.de. 86400 IN MX ...'. Was sagen diese Resource Records aus?

한국어 해석

Alice가 DNS query에 대해 'tu-darmstadt.de. 86400 IN MX ...' 형태의 여러 Resource Records를 받았다. 이 records는 무엇을 의미하는가?

직접 답안 작성

답안 슬롯 자가 점검 — 실제로 말하거나 쓴 항목만 체크하세요.

0/3 slots

답안은 브라우저에만 임시 저장됩니다. 채점 프레임과 비교해 스스로 판정하세요.

단계별 힌트

막혔을 때만 한 단계씩 여세요. 정답을 바로 읽는 것보다 기억을 꺼내는 시간이 중요합니다.

0/6
채점 기준으로 내 답안 점검하기
  • owner/name, TTL, class, type을 각각 해석한다.
  • MX가 mail exchanger/mail server 지정임을 말한다.
  • ellipsis 때문에 preference/target은 확정하지 않는다.

답안 슬롯 자가 점검 — 실제로 말하거나 쓴 항목만 체크하세요.

0/3 slots

정답과 핵심 해설 확인하기
summary_ko

tu-darmstadt.de의 email delivery용 Mail Exchanger records이며, 86400초 TTL과 IN class를 가진다.

fields
owner

tu-darmstadt.de.

ttl_seconds

86400

class

IN

type

MX

meaning

mail exchanger for the domain

개념부터 다시 보는 상세 풀이

BEGINNER LESSON

5-(d) 'tu-darmstadt.de. 86400 IN MX ...'를 필드별로 읽기

ZERO-BASE START

정말 아무것도 모른다고 가정하고 시작합니다

전문 용어를 알고 있다고 가정하지 않습니다. 먼저 일상적인 장면을 보고, 그 장면의 사람과 행동에 실제 보안 용어를 하나씩 붙인 뒤, 시스템에서 일어나는 순서를 따라갑니다.

기초 개념 01

DNS와 resolver, cache를 처음부터 이해하기

1타 강사식 시작: 이름은 잠시 가리고 장면부터 봅시다

DNS는 이름으로 전화번호를 찾는 분산 전화번호부다. Resolver는 여러 전화번호부 기관에 대신 문의하는 안내원이고 cache는 최근 찾아본 번호를 메모해 두는 수첩이다.

지금은 이 비유를 완벽히 외울 필요가 없습니다. 누가 무엇을 가지고 있고, 무엇을 하려 하며, 어느 지점에서 문제가 생기는지만 찾으면 됩니다.

이제 실제 용어를 하나씩 붙여 봅시다

사람은 tu-darmstadt.de 같은 domain name을 사용하지만 packet은 IP address로 전달된다. DNS는 이름을 IP와 다른 정보로 바꾸는 분산 데이터베이스다. 사용자의 질문을 대신 처리하는 프로그램이 recursive resolver이고, authoritative nameserver는 특정 zone의 공식 record를 가진다. Resolver는 받은 답을 TTL 동안 cache해 같은 질문을 빠르게 답한다.

TERMS FROM ZERO

전문 용어를 한 단어씩 풀기

아래 단어는 이미 안다고 가정하지 않습니다. 먼저 쉬운 뜻을 읽고, 본문에서 같은 단어가 나오면 이 정의로 다시 바꾸어 읽으세요.

DNS

domain 이름을 IP 주소 등 resource record로 찾아주는 분산 이름 시스템입니다.

Recursive resolver

client 대신 여러 DNS server에 질의해 최종 답을 찾아주는 server입니다.

Cache

이전에 받은 DNS 답을 일정 시간 저장해 재사용하는 공간입니다.

TTL

DNS record를 cache에서 얼마나 오래 재사용할 수 있는지 나타내는 시간값입니다.

프로그램이나 프로토콜 안에서는 다음 순서로 움직입니다.

  1. 사용자 stub resolver가 recursive resolver에 이름을 묻는다.
  2. Cache에 유효한 답이 있으면 즉시 사용한다.
  3. 없으면 root, TLD, authoritative nameserver 방향으로 위임을 따라간다.
  4. 받은 record를 TTL 동안 저장한다.

왜 여기서 많이 틀릴까요?

Resolver와 authoritative nameserver를 같은 서버 역할로 쓰지 말고, cache에 오래된 거짓 답이 들어가는 cache poisoning과 전송 암호화를 구분한다.

조건을 생략하거나 서로 다른 기능을 같은 것으로 취급했는지 확인하세요. 정답 문장을 외우는 것보다 틀린 이유를 말할 수 있어야 변형 문제를 풀 수 있습니다.

기초 개념 02

Root부터 authoritative server까지 이름을 찾는 순서

1타 강사식 시작: 이름은 잠시 가리고 장면부터 봅시다

국가 안내소가 독일 지역 안내소를 알려 주고, 지역 안내소가 대학 담당 사무실을 알려 주며, 담당 사무실이 최종 방 번호를 알려 주는 과정이다.

지금은 이 비유를 완벽히 외울 필요가 없습니다. 누가 무엇을 가지고 있고, 무엇을 하려 하며, 어느 지점에서 문제가 생기는지만 찾으면 됩니다.

이제 실제 용어를 하나씩 붙여 봅시다

DNS 이름은 오른쪽에서 왼쪽으로 계층을 이룬다. tu-darmstadt.de에서 de는 top-level domain(TLD), tu-darmstadt는 그 아래 domain이다. Root nameserver는 최종 IP를 보통 직접 주지 않고 .de TLD nameserver를 알려 준다. TLD server는 tu-darmstadt.de의 authoritative nameserver를 알려 주고, authoritative server가 최종 A, AAAA, MX 같은 record를 답한다.

TERMS FROM ZERO

전문 용어를 한 단어씩 풀기

아래 단어는 이미 안다고 가정하지 않습니다. 먼저 쉬운 뜻을 읽고, 본문에서 같은 단어가 나오면 이 정의로 다시 바꾸어 읽으세요.

Root server

최상위에서 `.de`, `.com` 같은 TLD의 nameserver 방향을 알려주는 DNS server입니다.

TLD server

특정 top-level domain 아래의 authoritative server 방향을 알려줍니다.

Authoritative server

해당 zone의 실제 DNS record에 권한 있는 최종 답변자입니다.

Referral

최종 IP 대신 다음에 물어볼 nameserver 정보를 주는 응답입니다.

프로그램이나 프로토콜 안에서는 다음 순서로 움직입니다.

  1. Resolver cache에 최종 답이나 delegation이 있는지 먼저 본다.
  2. 없으면 root에 질의해 TLD nameserver referral을 받는다.
  3. TLD에 질의해 domain authoritative nameserver referral을 받는다.
  4. Authoritative server에 최종 record를 질의한다.
  5. 각 답과 delegation을 TTL 동안 cache한다.

왜 여기서 많이 틀릴까요?

모든 질의마다 반드시 root부터 시작하는 것은 아니다. 유효한 cache가 있으면 가장 구체적으로 알려진 지점부터 재개한다.

조건을 생략하거나 서로 다른 기능을 같은 것으로 취급했는지 확인하세요. 정답 문장을 외우는 것보다 틀린 이유를 말할 수 있어야 변형 문제를 풀 수 있습니다.

기초 개념 03

DNS Resource Record 한 줄 읽는 법

1타 강사식 시작: 이름은 잠시 가리고 장면부터 봅시다

주소록 한 줄에 이름, 메모 유효 기간, 정보 분류, 전화·메일 같은 종류, 실제 값이 차례로 적혀 있다고 생각하면 된다.

지금은 이 비유를 완벽히 외울 필요가 없습니다. 누가 무엇을 가지고 있고, 무엇을 하려 하며, 어느 지점에서 문제가 생기는지만 찾으면 됩니다.

이제 실제 용어를 하나씩 붙여 봅시다

DNS의 정보 한 줄을 Resource Record(RR)라고 한다. 일반 형식은 NAME TTL CLASS TYPE RDATA다. NAME은 어느 이름의 정보인지, TTL은 몇 초 동안 cache할 수 있는지, CLASS의 IN은 Internet, TYPE은 정보 종류, RDATA는 실제 값이다. MX record는 해당 domain의 메일을 받을 mail server와 우선순위 값을 나타낸다.

TERMS FROM ZERO

전문 용어를 한 단어씩 풀기

아래 단어는 이미 안다고 가정하지 않습니다. 먼저 쉬운 뜻을 읽고, 본문에서 같은 단어가 나오면 이 정의로 다시 바꾸어 읽으세요.

Resource Record

DNS에서 이름, type, 값, TTL 등을 담는 한 줄의 정보 단위입니다.

A / AAAA

Domain 이름을 각각 IPv4 또는 IPv6 주소에 연결하는 record type입니다.

MX

Domain의 mail을 받을 mail server와 우선순위를 지정하는 record입니다.

NS

해당 DNS zone의 authoritative nameserver를 나타내는 record입니다.

프로그램이나 프로토콜 안에서는 다음 순서로 움직입니다.

  1. NAME에서 record가 속한 domain을 읽는다.
  2. TTL을 초 단위 cache 가능 시간으로 읽는다.
  3. TYPE이 A, AAAA, NS, MX, TXT 중 무엇인지 확인한다.
  4. MX RDATA의 작은 preference 값이 더 우선임을 확인한다.
  5. 끝의 점이 붙은 이름은 root까지 적은 FQDN임을 이해한다.

왜 여기서 많이 틀릴까요?

MX의 숫자를 port나 TTL로 읽지 말고, 여러 MX가 있으면 preference 순서와 장애 대체 관계를 설명한다.

조건을 생략하거나 서로 다른 기능을 같은 것으로 취급했는지 확인하세요. 정답 문장을 외우는 것보다 틀린 이유를 말할 수 있어야 변형 문제를 풀 수 있습니다.

핵심부터 말하면 이 Resource Record는 owner가 tu-darmstadt.de., TTL이 86400초(24시간), class가 Internet(IN), type이 Mail Exchanger(MX)임을 뜻한다. 생략된 RDATA에는 보통 preference 값과 해당 domain의 메일을 받을 mail server hostname이 들어간다.

이 글에서 익힐 것

  • DNS Resource Record의 공통 형식 NAME·TTL·CLASS·TYPE·RDATA를 이해한다.

  • FQDN 끝의 점과 TTL 86400을 해석한다.

  • IN과 MX의 의미를 구분한다.

  • MX preference와 exchanger hostname을 설명한다.

  • 여러 MX record가 mail delivery에 어떻게 사용되는지 이해한다.

  • ellipsis로 생략된 값을 추측해 확정하지 않는다.

Resource record format

Generic

NAME TTL CLASS TYPE RDATA

Given

tu-darmstadt.de. 86400 IN MX ...

Idea

앞 네 필드는 record가 누구의 어떤 종류 정보이고 얼마 동안 cache 가능한지 말하며, RDATA의 구조는 TYPE에 따라 달라진다.

Field by field

  • NAME / Owner

    tu-darmstadt.de.

    이 RRset이 속한 domain name. 마지막 점은 root까지 포함한 절대 이름(FQDN)임을 나타낸다.

  • TTL

    86400

    resolver/cache가 이 record를 재사용할 수 있는 최대 시간(초). 86400초=60·60·24=24시간.

  • CLASS

    IN

    Internet class. 일반 DNS에서 가장 흔하며 '안에(in)'라는 전치사 뜻이 아니다.

  • TYPE

    MX

    Mail Exchanger. 이 domain으로 오는 email을 수신할 mail server 정보를 나타낸다.

  • RDATA

    ...

    MX에서는 일반적으로 preference 숫자와 mail exchanger의 FQDN. 복기에는 생략됐으므로 구체 값은 확정할 수 없다.

시험 답안으로 정리하기

tu-darmstadt.de. 86400 IN MX 10 mail1.tu-darmstadt.de.

10은 preference/priority 값이다. 숫자가 낮을수록 먼저 시도하는 우선순위가 높다.

mail1.tu-darmstadt.de.는 실제 SMTP 연결을 시도할 mail exchanger hostname이다.

보내는 mail server는 exchanger hostname의 A/AAAA record를 추가로 조회해 IP를 얻고 보통 TCP port 25로 SMTP delivery를 시도한다.

Multiple mx records

  • 동일 owner name에 MX record가 여러 개 있으면 여러 mail exchanger 후보가 있다는 뜻이다.

  • 보내는 MTA는 preference 숫자가 가장 낮은 exchanger부터 시도한다.

  • 선호 server가 도달 불가능하면 더 큰 preference 값의 backup exchanger를 시도할 수 있다.

  • 같은 preference를 가진 여러 exchanger가 있으면 sender가 그중 하나를 선택해 부하 분산 효과를 낼 수 있다.

  • 문제의 `...`가 preference·target을 숨기므로 '세 줄이 모두 같은 우선순위' 또는 특정 host라고 단정하면 안 된다.

단계별로 따라가기

  1. Alice가 bob@tu-darmstadt.de로 메일을 보낸다.

  2. Alice 측 outgoing Mail Transfer Agent가 tu-darmstadt.de MX records를 DNS에 질의한다.

  3. 응답의 preference 순서로 target mail exchanger를 고른다.

  4. 선택한 exchanger hostname의 A/AAAA를 조회한다.

  5. 해당 IP의 SMTP server에 연결해 메일 배달을 시도한다.

  6. 실패하면 SMTP retry 정책과 다음 MX preference에 따라 재시도한다.

Ttl deep understanding

  • TTL 86400은 record 자체가 24시간 후 삭제된다는 뜻이 아니라 cache가 권위 server에 다시 묻지 않고 사용할 수 있는 기간이다.

  • Authoritative zone owner가 TTL 전에 MX를 바꿔도 이미 cache한 resolver는 남은 TTL 동안 이전 값을 사용할 수 있다.

  • Migration 전에 TTL을 미리 낮추는 운영 전략이 필요한 이유다.

  • TTL은 mail server 우선순위가 아니다. MX preference는 RDATA 안의 별도 숫자다.

Fqdn final dot

  • tu-darmstadt.de. 끝의 점은 DNS root label을 명시한다.

  • Zone file에서 끝 점이 없는 이름은 현재 zone suffix가 자동으로 붙을 수 있다.

  • 예를 들어 exchanger를 mail.example.com처럼 끝 점 없이 잘못 쓰면 zone context에 따라 mail.example.com.tu-darmstadt.de.처럼 해석될 위험이 있다.

  • 시험에서는 마지막 점을 'absolute/FQDN'으로 해석하면 충분하다.

Nearby record types

  • Type

    A

    Meaning

    hostname → IPv4 address

  • Type

    AAAA

    Meaning

    hostname → IPv6 address

  • Type

    NS

    Meaning

    zone의 authoritative nameserver

  • Type

    CNAME

    Meaning

    한 이름을 다른 canonical name의 alias로 연결

  • Type

    TXT

    Meaning

    문자열 data; SPF·domain verification 등에 사용

  • Type

    MX

    Meaning

    domain의 inbound mail exchanger

문제를 푸는 순서

  1. 1단계: 주어진 줄 위에 NAME | TTL | CLASS | TYPE | RDATA 칸을 그린다.

  2. 2단계: tu-darmstadt.de.를 owner/FQDN으로 해석한다.

  3. 3단계: 86400 seconds를 24 hours로 환산하고 cache 의미를 쓴다.

  4. 4단계: IN=Internet class라고 쓴다.

  5. 5단계: MX=domain의 mail exchanger를 지정한다고 쓴다.

  6. 6단계: 여러 record는 여러 mail server와 preference/fallback을 나타낼 수 있다고 설명한다.

  7. 7단계: 구체 preference와 target은 `...` 때문에 알 수 없다고 제한한다.

시험장에서는 이렇게 쓰기

Four point german

Der Owner-Name des Records ist der vollständig qualifizierte Name tu-darmstadt.de. Der TTL-Wert 86400 erlaubt eine Zwischenspeicherung für 86400 Sekunden beziehungsweise 24 Stunden, und IN bezeichnet die Internet-Klasse. Der Typ MX gibt die Mail-Exchanger für eingehende E-Mails an; im ausgelassenen RDATA stehen normalerweise eine Präferenzzahl und der Hostname des Mailservers. Mehrere MX-Records können priorisierte beziehungsweise alternative Mailserver beschreiben.

Field version

NAME=tu-darmstadt.de.; TTL=86400 s=24 h; CLASS=IN; TYPE=MX; RDATA=Preference + Mailserver-Hostname (hier ausgelassen).

자주 틀리는 지점

  • 86400을 IP address나 port 번호로 해석하는 것.

  • TTL이 86400번 query 가능하다는 뜻이라고 생각하는 것.

  • IN을 incoming mail의 약자라고 해석하는 것. DNS class Internet이다.

  • MX가 메일 주소 user@domain을 직접 나열한다고 생각하는 것. mail exchanger server를 지정한다.

  • MX target 자리에 직접 IP address가 온다고 생각하는 것. 표준 MX RDATA는 exchanger hostname이며 그 A/AAAA를 별도 조회한다.

  • preference 숫자가 클수록 우선이라고 뒤집는 것. 낮을수록 선호된다.

  • 여러 MX가 있으면 모두에게 같은 메일을 동시에 중복 전송한다고 생각하는 것. 우선순위·실패 대응에 따라 선택한다.

  • ellipsis를 보고 구체 hostname이나 priority를 지어내는 것.

한 줄로 기억하기

DNS RR은 택배 라벨처럼 읽는다: 누구(NAME), 얼마나 기억(TTL), 어느 체계(CLASS), 무슨 정보(TYPE), 실제 내용(RDATA). MX 라벨의 내용은 우선순위와 메일 창고 주소다.

스스로 확인하기

  • 86400초는 몇 시간인가?

    24시간.

  • MX preference 10과 20 중 먼저 시도하는 값은?

    더 낮은 10.

  • MX RDATA의 두 핵심 요소는?

    preference 값과 mail exchanger hostname.

  • 끝의 점 `tu-darmstadt.de.`는 무엇을 뜻하는가?

    root까지 명시된 absolute fully qualified domain name.

  • MX target을 받은 뒤 sender가 추가로 찾는 record는?

    그 exchanger hostname의 A/AAAA record.

  • TTL과 MX preference는 같은 값인가?

    아니다. TTL은 cache 시간, preference는 MX RDATA 내부의 mail server 선택 우선순위다.

설명의 근거

  • Gedächtnisprotokoll Computersystemsicherheit WS2025_26.md, Networking / DNS, 5-(d), 4 Punkte — MX answer section.

  • Vorlesung 08 Domain Name System — DNS Resource Record 형식과 MX.

  • 복기에서 생략된 RDATA는 구체값을 추정하지 않고 표준 MX 구조만 설명.

예제로 확인하기

  • DNS와 resolver, cache를 처음부터 이해하기을 구체적인 순서로 보기

    DNS는 이름으로 전화번호를 찾는 분산 전화번호부다. Resolver는 여러 전화번호부 기관에 대신 문의하는 안내원이고 cache는 최근 찾아본 번호를 메모해 두는 수첩이다.

    1. 사용자 stub resolver가 recursive resolver에 이름을 묻는다.

    2. Cache에 유효한 답이 있으면 즉시 사용한다.

    3. 없으면 root, TLD, authoritative nameserver 방향으로 위임을 따라간다.

    4. 받은 record를 TTL 동안 저장한다.

    각 단계에서 입력이나 message가 어떻게 달라지는지 확인한 뒤 현재 문제의 조건과 결론에 연결합니다.

  • Root부터 authoritative server까지 이름을 찾는 순서을 구체적인 순서로 보기

    국가 안내소가 독일 지역 안내소를 알려 주고, 지역 안내소가 대학 담당 사무실을 알려 주며, 담당 사무실이 최종 방 번호를 알려 주는 과정이다.

    1. Resolver cache에 최종 답이나 delegation이 있는지 먼저 본다.

    2. 없으면 root에 질의해 TLD nameserver referral을 받는다.

    3. TLD에 질의해 domain authoritative nameserver referral을 받는다.

    4. Authoritative server에 최종 record를 질의한다.

    5. 각 답과 delegation을 TTL 동안 cache한다.

    각 단계에서 입력이나 message가 어떻게 달라지는지 확인한 뒤 현재 문제의 조건과 결론에 연결합니다.

  • DNS Resource Record 한 줄 읽는 법을 구체적인 순서로 보기

    주소록 한 줄에 이름, 메모 유효 기간, 정보 분류, 전화·메일 같은 종류, 실제 값이 차례로 적혀 있다고 생각하면 된다.

    1. NAME에서 record가 속한 domain을 읽는다.

    2. TTL을 초 단위 cache 가능 시간으로 읽는다.

    3. TYPE이 A, AAAA, NS, MX, TXT 중 무엇인지 확인한다.

    4. MX RDATA의 작은 preference 값이 더 우선임을 확인한다.

    5. 끝의 점이 붙은 이름은 root까지 적은 FQDN임을 이해한다.

    각 단계에서 입력이나 message가 어떻게 달라지는지 확인한 뒤 현재 문제의 조건과 결론에 연결합니다.

이 문제가 어려운 이유

짧은 문제 문장 ‘Alice가 DNS query에 대해 'tu-darmstadt.de. 86400 IN MX ...' 형태의 여러 Resource Records를 받았다. 이 records는 무엇을 의미하는가?’ 안에 정의, 조건, 처리 순서가 압축되어 있습니다. 아래 예시에서는 이를 한 단계씩 펼쳐 확인합니다.

AI 구두시험용 프롬프트

한 문항만 풀어라. 먼저 정답을 열지 말고 90초 안에 답안을 말한 뒤, css-ws2025-26-network-dns-004의 채점 프레임으로 스스로 채점하라. 문제: Alice가 DNS query에 대해 'tu-darmstadt.de. 86400 IN MX ...' 형태의 여러 Resource Records를 받았다. 이 records는 무엇을 의미하는가?

학습 기록

이 문항을 얼마나 이해했나요?