DHCPv4 임대 상태·Relay·서버 설정
DORA 메시지의 필드와 임대 상태를 연결하고 T1·T2 갱신 및 Relay의 풀 선택을 설명한다. 수업의 라우터·Windows·Linux 실습을 일관된 주소 계획과 정상 설정 예로 재구성한다.
개념부터 찾아보기
정의·역할·동작 원리를 독립 페이지에서 확인하세요. 본문의 밑줄 용어에도 설명이 있습니다.
이 노트에서 설명할 수 있게 되는 것
- 초기 임대와 갱신 흐름을 구분한다.
- 주소·옵션·임대 시간과 Relay 정보를 읽는다.
- DORA의 어느 단계가 누락됐는지 증거로 판단한다.
01주소 배정은 임대와 옵션의 계약이다
- 임대와 옵션DHCPv4는 클라이언트가 일정 기간 사용할 주소와 네트워크 설정을 전달한다. 주소만 주는 프로토콜이 아니라 마스크, 기본 게이트웨이, , 임대 시간 같은 옵션을 함께 제공한다.
- 서버는 주소와 클라이언트 식별의 binding을 유지하고, 클라이언트는 받은 임대의 유효 기간을 관리한다.
- 정적 설정은 단말 자체 설정이고 예약은 서버가 특정 클라이언트에 정해진 주소를 제공하는 정책이므로 구별한다.
- Pool과 주소 계획Scope 또는 pool은 클라이언트 을 기준으로 설계한다. 게이트웨이·서버·가상 게이트웨이 주소는 동적 할당에서 제외하고, 예약과 동적 범위가 구현의 규칙에 맞게 관리되도록 한다.
- 실습 사례에서 링크는 한 /24로 구성했지만 풀은 다른 /24로 설정했던 불일치는 주소를 받아도 통신이 안 되는 직접적인 원인이 된다.
- 서버의 풀과 실제 클라이언트 링크를 먼저 같은 주소 계획으로 맞춰야 한다.
02BOOTP 형식 안의 주소와 거래 식별자
- BOOTP 공통 필드 메시지는 BOOTP 형식을 확장한다. op는 요청/응답, htype·hlen은 하드웨어 주소 종류와 길이, 는 거래 식별자, secs는 시도 경과 시간, flags는 브로드캐스트 응답 요구 등을 표현한다.
- 는 클라이언트가 이미 가진 주소, 는 서버가 제공하는 주소, siaddr는 부트스트랩에서의 다음 서버 주소, 는 Relay 주소다.
- siaddr를 항상 서버 자신의 주소라고 외우면 Server Identifier 옵션과 혼동한다.
- chaddr·Client Identifierchaddr에는 하드웨어 주소가 들어갈 수 있고 클라이언트 식별자 옵션이 별도로 쓰일 수 있다. 서버가 무조건 MAC 하나로만 임대를 구분한다고 단정하지 않는다.
- 기본 포트는 서버 UDP67, 클라이언트 UDP68이다.
- Relay와 서버 사이에는 서버 포트를 사용한 중계 흐름이 생기므로 모든 패킷을 단순히 68→67·67→68 두 방향만으로 설명할 수 없다.
03DHCP 초기 임대의 DORA와 충돌 처리
- 응답의 목적지클라이언트 주소 상태·broadcast flag·Relay에 따라 응답은 unicast 또는 broadcast다. 모든 패킷이 항상 broadcast인 것은 아니다.
- 별도 메시지은 부적합한 임대 등을 거절하며 무응답과 다르다. DHCPRELEASE는 임대 반납, DHCPINFORM은 이미 주소가 있는 단말의 추가 설정 요청이다.
- DiscoverINIT 클라이언트는 아직 주소가 없어 보통 0.0.0.0:68에서 제한 브로드캐스트로 서버를 찾는다.
- Offer서버는 의 후보 주소와 옵션을 제안한다. 여러 서버가 응답할 수 있으며 제안은 최종 사용 확정이 아니다.
- Request클라이언트는 Requested IP Address와 선택한 Server Identifier를 넣어 요청한다. 브로드캐스트하면 다른 서버도 자신의 제안이 선택되지 않았음을 알 수 있다.
- ACK선택한 서버가 임대와 설정을 승인한다. 클라이언트는 주소를 정상 사용하기 전에 임대 조건과 충돌 여부를 최종 확인하며, 충돌을 발견하면 해당 주소를 사용하지 않는다.
- 충돌 여부에 따른 분기충돌이 없으면 임대를 사용한다. 충돌을 발견하면 으로 알리고 새 주소 획득 절차를 시작한다.
Discover와 두 서버의 Offer가 함께 보이는 원본
원본 크기로 보기 ↗이 자료에서 읽어낼 것
- 선택된 첫 Discover의 IPv4 출발지는 0.0.0.0, 목적지는 제한 브로드캐스트이며 UDP는 68→67이다.
- 같은 Transaction ID에 두 서버의 Offer가 보인다. Offer 수를 클라이언트 수나 최종 임대 수로 해석하지 않는다.
- 뒤의 Request와 ACK가 이어지지만 서버 선택의 확정 근거는 Request의 Server Identifier 옵션까지 읽어야 한다. 화면에 펼쳐지지 않은 옵션값은 추정하지 않는다.
Offer의 IP 목적지와 UDP 응답 방향
원본 크기로 보기 ↗이 자료에서 읽어낼 것
- 선택된 Offer는 UDP 67→68이며 BOOTP Message type은 Boot Reply 2이다. DHCP Offer 유형과 BOOTP op를 같은 번호 체계로 혼동하지 않는다.
- IPv4 목적지와 Ethernet 목적지가 개별 수신자를 가리켜 이 Offer가 유니캐스트로 수집되었음을 보여준다.
- ACK 이후 ARP Announcement가 보이지만 이 화면 하나만으로 모든 OS의 중복 탐지 시간이나 횟수를 확정할 수 없다.
설명과 함께 보는 보조 도식
DHCPv4 초기 임대
같은 링크에 서버가 있는 초기 할당의 기본 절차.
Discover
사용 가능한 서버를 찾는다.
- 상태
- 주소 미구성
전체 단계를 한 번에 읽기
- 01
Discover
사용 가능한 서버를 찾는다.
- 상태
- 주소 미구성
- 02
Offer
사용할 주소와 임대 조건을 제안한다.
- 03
Request
선택한 서버와 주소를 요청한다.
- 04
ACK
임대·옵션을 확정해 알린다.
- 관찰
- 주소·마스크·라우터·DNS
- 05
적용과 확인
충돌 여부와 실제 경로·DNS 동작을 확인한다.
04두 Offer 중 하나만 임대로 확정되는 과정
- 가상 환경클라이언트가 =0x12345678로 Discover를 보낸다. 릴레이 주소는 192.0.2.1이고 서버 A·B가 서로 충돌하지 않는 풀에서 주소를 제안하는 예다.
- 두 제안 수신A는 192.0.2.100, B는 192.0.2.150을 같은 거래에 대한 Offer로 제안한다. Offer를 두 개 받았다고 클라이언트가 두 주소를 동시에 임대로 사용하지 않는다.
- A 선택 공표클라이언트는 를 연결해 Requested IP=192.0.2.100, Server Identifier=A인 Request를 보낸다. B도 이를 보고 자신의 제안이 선택되지 않았음을 판단할 수 있다.
- ACK와 사용 전 확인A의 ACK에 있는 임대·마스크·라우터 옵션을 확인하고 주소 중복 확인을 수행한다. 충돌이 드러나면 Decline으로 알리고 그 주소를 정상 주소로 사용하지 않는다.
- 시간 추적성공한 임대가 3600초이고 ·가 별도 지정되지 않으면 기본 비율로 =1800초, =3150초다. 갱신 성공 시 받은 새 임대 정보를 기준으로 시간 상태가 다시 정해진다.
05BOUND·RENEWING·REBINDING의 시간축
- 기본 시간서버가 별도 값을 주지 않은 일반적인 기본값은 =임대의 50%, =87.5%다. 유효 임대를 가진 다른 단말의 주소를 풀 고갈만으로 임의 회수하지 않는다.
- 가 없는 갱신INIT-REBOOT의 기존 주소 검증이나 정상 갱신은 Request·ACK만 보일 수 있다. ipconfig /renew 캡처에서 두 메시지만 보였다고 초기 실패로 판정하지 않는다.
- ACK를 받아 임대를 사용한다. 아래는 8시간 임대이며 ·에 별도 값이 없는 예다.
- 4시간: 에 기존 서버로 유니캐스트 Request를 보내 갱신을 시도한다. 새 ACK를 받으면 새 임대 조건으로 시간 기준을 갱신한다.
- 7시간: 응답 없이 에 도달하면 다른 서버도 받을 수 있도록 브로드캐스트 Request를 보낸다.
- 만료 또는 새 ACK승인받지 못한 채 8시간이 지나면 해당 주소를 정상 임대처럼 계속 사용하지 않는다. 새 ACK를 받으면 승인된 임대를 다시 관리한다.
06DHCPREQUEST의 상태별 주소 필드 조합
- SELECTING 이후 요청여러 Offer 중 하나를 고른 요청은 =0, Requested IP=선택 주소, Server Identifier=선택 서버를 사용한다. 브로드캐스트로 선택 결과를 알려 다른 서버도 자신의 Offer가 선택되지 않았음을 알 수 있다.
- INIT-REBOOT 확인이전에 쓰던 주소를 확인할 때 =0, Requested IP=기억한 주소를 넣고 Server Identifier는 넣지 않는다. 새 네트워크에서 기존 임대를 그대로 사용할 수 있는지 확인하는 요청이다.
- 갱신주소를 이미 사용 중이므로 에 현재 주소를 넣는다. Requested IP와 Server Identifier 옵션을 넣는 초기 선택 방식과 달리 기존 서버로 유니캐스트 갱신을 시도한다.
- 재결합 이후에는 에 현재 주소를 유지하면서 브로드캐스트로 다른 서버도 응답할 수 있게 한다. Server Identifier를 고정하지 않으며 임대가 만료되면 주소 사용을 중단한다.
- 의 별도 역할는 클라이언트의 현재 주소이고 는 릴레이가 제공하는 클라이언트 링크 문맥이다. 서버가 올바른 풀을 선택하는 근거와 클라이언트가 주소를 소유하는 상태를 혼동하지 않는다.
| 상태 | |||
|---|---|---|---|
| 선택한 Offer 요청 | 0 | 선택 IP | 선택 서버 |
| INIT-REBOOT | 0 | 기존 IP | 없음 |
| 현재 IP | 없음 | 없음 | |
| 현재 IP | 없음 | 없음 |
07옵션 번호를 설정 값과 연결하기
- 옵션 번호Message Type53은 Discover·Offer 같은 메시지 종류를, Server Identifier54는 선택된 서버를, Requested IP50은 요청 주소를 뜻한다.
- Subnet Mask1, Router3, Server6, Time51, Renewal Time58, Time59가 실제 단말 동작에 연결된다.
- 어떤 옵션이 빠지거나 잘못되면 주소 배정은 성공해도 로컬 범위·외부 통신·이름 해석이 따로 실패할 수 있다.
- 레거시 옵션WINS는 레거시 NetBIOS 이름 해석에 관련되며 일반 와 동일한 서비스가 아니다. 시험용 서버 화면에 여러 옵션이 함께 보인다고 모두 필수로 설정할 필요는 없다.
- 원하는 클라이언트 동작에 필요한 옵션을 선택하고 ACK의 실제 옵션 값과 클라이언트에 적용된 값을 비교한다.
| 옵션 | 필드/설정 | 동작 |
|---|---|---|
| 1 | Subnet Mask | 온링크 주소 범위 |
| 3 | default-router | 기본 게이트웨이 |
| 6 | -server | 재귀 서버 |
| 51 / 58 / 59 | / / | 임대·갱신·재바인딩 |
| 53 / 54 | Message Type / Server Identifier | 메시지 종류·선택 서버 |
08Relay가 다른 서브넷의 풀을 선택하게 하는 방식
- Relay·라우터는 일반적으로 초기 브로드캐스트를 다른 링크로 전달하지 않는다. Relay는 클라이언트 메시지를 받아 서버로 중계하고 등으로 클라이언트가 속한 링크를 구분할 단서를 제공한다.
- 서버는 이 정보에 맞는 scope를 선택하고 Relay를 통해 응답을 돌려준다.
- Relay의 주소와 클라이언트에게 임대되는 주소는 같은 역할이 아니다.
- -addressIOS의 ip -address는 서버 쪽 인터페이스가 아니라 클라이언트 브로드캐스트를 수신하는 SVI 또는 라우터 인터페이스에 둔다. 서버에는 해당 클라이언트 의 풀과 Relay까지의 귀환 경로가 있어야 한다.
- Option82는 Circuit ID·Remote ID 같은 접속 위치 정보를 추가하는 확장으로, 와 동일한 필드는 아니다.
- 일부 IOS 구현의 는 외 브로드캐스트도 전달하므로 실제 플랫폼의 forwarding 설정을 구분한다.
09Cisco 라우터를 서버로 사용하는 완결 예
- 서버 구성 전제아래 예시는 격리된 문서용 LAN 192.0.2.0/24에서 라우터 .1, .53, 동적 클라이언트 .100~.199를 사용하는 구성이다. excluded-address를 전역에서 설정하고 pool의 network는 동적 시작 주소가 아니라 전체 을 적는다.
- default-router는 이 LAN의 게이트웨이이며 서버가 다른 에 있다고 그 서버 주소를 게이트웨이로 주지 않는다.
- SVI와 풀의 상태SVI로 서버 기능을 제공하는 L3 스위치에서는 과 그 을 전달하는 활성 포트, SVI 상태 및 플랫폼 기능이 전제다. 아래 인터페이스 이름은 예시이며 실제 장치와 다를 수 있다.
- show ip binding의 주소·클라이언트 식별자·만료 시각을 클라이언트 임대와 대조하면 ACK가 실제 서버 상태로 반영됐는지 알 수 있다.
interface GigabitEthernet0/0
ip address 192.0.2.1 255.255.255.0
no shutdown
!
ip dhcp excluded-address 192.0.2.1 192.0.2.99
ip dhcp excluded-address 192.0.2.200 192.0.2.254
ip dhcp pool STUDY-LAN
network 192.0.2.0 255.255.255.0
default-router 192.0.2.1
dns-server 192.0.2.53
domain-name lab.example
lease 0 8
!
show ip dhcp pool
show ip dhcp binding
show ip dhcp conflict문서용 주소로 다시 구성한 IOS 실습 예. 실제 운영 장비에 실행한 기록이 아니다.
실습: 주소 풀·클라이언트 임대·두 서버의 Offer 비교
풀 설정이 클라이언트 주소로 이어지는 과정과 복수 Offer에서 한 임대가 확정되는 과정을 구분한다.
실습 구성과 전제
- 첫 사례는 192.168.0.1 라우터와 VPCS, 두 번째는 .254·.253 서버의 별도 캡처다. 서로 다른 실행이다.
- 주소 풀의 제외 범위와 게이트웨이 주소를 먼저 정한다. 명령의 풀 이름 LAB은 재구성한 이름이다.
주소 풀과 제외 범위 구성
- 네트워크는 /24이며 .1~.9는 고정 장치에 사용하도록 제외한다. default-router는 클라이언트에게 줄 옵션이고 라우터 자신의 인터페이스 주소 설정을 대신하지 않는다.
- 풀 이름은 로컬 관리 이름이다. 다른 서버의 풀 이름과 같다고 동일 풀을 공유하는 것은 아니다.
textip dhcp excluded-address 192.168.0.1 192.168.0.9 ip dhcp pool LAB network 192.168.0.0 255.255.255.0 default-router 192.168.0.1 exit interface FastEthernet0/0 ip address 192.168.0.1 255.255.255.0 no shutdown실제 풀·제외 범위를 반영한 IOS 재구성 예시
확인 기준서버 인터페이스 .1/24와 풀 네트워크가 일치하며 제외 주소를 동적으로 배정하지 않아야 한다.
주소가 없던 PC의 임대 결과 확인
- VPCS의 show ip는 초기 주소 0.0.0.0/0을 보인다. ip 이후 .10/24와 게이트웨이 .1이 출력된다.
- 이 결과는 첫 가용 주소가 .10이었던 해당 실행이다. 모든 구현이 항상 가장 작은 주소부터 배정한다고 일반화하지 않는다.
textPC1> ip dhcp PC1> show ip R1# show ip dhcp binding R1# show ip dhcp pool실습 흐름을 재구성한 명령 예시. 장치·인터페이스 이름은 구성에 맞춰 사용한다.
원본 크기로 보기 ↗- 초기 IP/MASK는 0.0.0.0/0, GATEWAY도 0.0.0.0이다.
- ip dhcp 뒤 IP 192.168.0.10/24 GW 192.168.0.1이 보인다.
확인 기준클라이언트 값과 서버의 임대 테이블을 대조한다.
별도 두 서버 사례의 거래 식별
- 같은 ID에 .254와 .253의 Offer가 보인다. Offer 개수를 최종 임대 개수로 읽지 않는다.
- Discover는 0.0.0.0에서 브로드캐스트로 향하며 68→67이다. Request와 ACK를 이어서 읽고 선택 서버는 Request의 Server Identifier 옵션으로 확정한다.
원본 크기로 보기 ↗- 동일 거래에 서로 다른 두 서버의 Offer가 보인다.
- Discover의 출발지 0.0.0.0, 목적지 255.255.255.255와 UDP 68→67이 보인다.
확인 기준화면에 접히거나 잘린 옵션값을 추정하지 않고 상세 트리에서 확인한다.
응답의 유니캐스트와 BOOTP op 구분
- 선택한 Offer는 67→68이며 제안받을 클라이언트를 향한 유니캐스트다. 응답이 항상 브로드캐스트라는 설명은 맞지 않는다.
- Boot Reply (2)는 BOOTP op이며 Offer 유형 옵션과 구분한다. ACK 이후의 는 주소 사용 과정의 추가 관찰이다.
원본 크기로 보기 ↗- Offer가 192.168.0.254에서 192.168.0.1로 향한다.
- UDP 67→68 및 Message type Boot Reply (2)가 보인다.
확인 기준서버의 ACK와 클라이언트 주소 적용을 함께 확인한다.
실습에서 확인한 동작 원리
- 풀·제외·인터페이스·옵션은 각각 다른 구성 요소다.
- 는 거래 식별자와 클라이언트 식별자를 묶어 추적해야 한다.
설정·출력 추가로 확인하기 52장
아래 화면을 펼쳐 위 실습의 설정값, 명령과 확인 기준을 비교해 보세요. 각 묶음은 별도 실습 기록입니다.
실습 화면 묶음 01 1장
원본 크기로 보기 ↗- 「80 (내 ubuntu) → 81 (수빈 언니 ubuntu)」 문맥에 삽입된 원본 명령·상태 출력이다. DHCPv4 임대 상태·Relay·서버 설정 학습 내용과 함께 당시 구성·설정·관찰 결과를 비교할 수 있다.
실습 화면 묶음 02 1장
원본 크기로 보기 ↗- 문서 문맥에 삽입된 원본 실습·개념 참고 화면이다. DHCPv4 임대 상태·Relay·서버 설정 학습 내용과 함께 당시 구성·설정·관찰 결과를 비교할 수 있다.
실습 화면 묶음 03 22장
원본 크기로 보기 ↗- 「실습」 문맥에 삽입된 원본 명령·상태 출력이다. DHCPv4 임대 상태·Relay·서버 설정 학습 내용과 함께 당시 구성·설정·관찰 결과를 비교할 수 있다.
원본 크기로 보기 ↗- 「dora 실습(dhcp 2개)」 문맥에 삽입된 원본 명령·상태 출력이다. DHCPv4 임대 상태·Relay·서버 설정 학습 내용과 함께 당시 구성·설정·관찰 결과를 비교할 수 있다.
원본 크기로 보기 ↗- 「실습」 문맥에 삽입된 원본 실습·개념 참고 화면이다. DHCPv4 임대 상태·Relay·서버 설정 학습 내용과 함께 당시 구성·설정·관찰 결과를 비교할 수 있다.
원본 크기로 보기 ↗- 「DHCP - DORA (UDP)」 문맥에 삽입된 원본 실습·개념 참고 화면이다. DHCPv4 임대 상태·Relay·서버 설정 학습 내용과 함께 당시 구성·설정·관찰 결과를 비교할 수 있다.
원본 크기로 보기 ↗- 「DHCP - DORA (UDP)」 문맥에 삽입된 원본 실습·개념 참고 화면이다. DHCPv4 임대 상태·Relay·서버 설정 학습 내용과 함께 당시 구성·설정·관찰 결과를 비교할 수 있다.
원본 크기로 보기 ↗- 「dora 실습(dhcp 2개)」 문맥에 삽입된 원본 실습·개념 참고 화면이다. DHCPv4 임대 상태·Relay·서버 설정 학습 내용과 함께 당시 구성·설정·관찰 결과를 비교할 수 있다.
원본 크기로 보기 ↗- 「dora 실습(dhcp 2개)」 문맥에 삽입된 원본 실습·개념 참고 화면이다. DHCPv4 임대 상태·Relay·서버 설정 학습 내용과 함께 당시 구성·설정·관찰 결과를 비교할 수 있다.
원본 크기로 보기 ↗- 「dora 실습(dhcp 2개)」 문맥에 삽입된 원본 실습·개념 참고 화면이다. DHCPv4 임대 상태·Relay·서버 설정 학습 내용과 함께 당시 구성·설정·관찰 결과를 비교할 수 있다.
원본 크기로 보기 ↗- 「dora 실습(dhcp 2개)」 문맥에 삽입된 원본 실습·개념 참고 화면이다. DHCPv4 임대 상태·Relay·서버 설정 학습 내용과 함께 당시 구성·설정·관찰 결과를 비교할 수 있다.
원본 크기로 보기 ↗- 「dora 실습(dhcp 2개)」 문맥에 삽입된 원본 실습·개념 참고 화면이다. DHCPv4 임대 상태·Relay·서버 설정 학습 내용과 함께 당시 구성·설정·관찰 결과를 비교할 수 있다.
원본 크기로 보기 ↗- 「dora 실습(dhcp 2개)」 문맥에 삽입된 원본 실습·개념 참고 화면이다. DHCPv4 임대 상태·Relay·서버 설정 학습 내용과 함께 당시 구성·설정·관찰 결과를 비교할 수 있다.
원본 크기로 보기 ↗- 「dora 실습(dhcp 2개)」 문맥에 삽입된 원본 실습·개념 참고 화면이다. DHCPv4 임대 상태·Relay·서버 설정 학습 내용과 함께 당시 구성·설정·관찰 결과를 비교할 수 있다.
원본 크기로 보기 ↗- 「SVI - switched virtual interface」 문맥에 삽입된 원본 실습·개념 참고 화면이다. DHCPv4 임대 상태·Relay·서버 설정 학습 내용과 함께 당시 구성·설정·관찰 결과를 비교할 수 있다.
원본 크기로 보기 ↗- 「SVI - switched virtual interface」 문맥에 삽입된 원본 실습·개념 참고 화면이다. DHCPv4 임대 상태·Relay·서버 설정 학습 내용과 함께 당시 구성·설정·관찰 결과를 비교할 수 있다.
원본 크기로 보기 ↗- 「SVI - switched virtual interface」 문맥에 삽입된 원본 실습·개념 참고 화면이다. DHCPv4 임대 상태·Relay·서버 설정 학습 내용과 함께 당시 구성·설정·관찰 결과를 비교할 수 있다.
원본 크기로 보기 ↗- 「sh run」 문맥에 삽입된 원본 실습·개념 참고 화면이다. DHCPv4 임대 상태·Relay·서버 설정 학습 내용과 함께 당시 구성·설정·관찰 결과를 비교할 수 있다.
원본 크기로 보기 ↗- 「실습」 문맥에 삽입된 원본 실습·개념 참고 화면이다. DHCPv4 임대 상태·Relay·서버 설정 학습 내용과 함께 당시 구성·설정·관찰 결과를 비교할 수 있다.
원본 크기로 보기 ↗- 「실습」 문맥에 삽입된 원본 실습·개념 참고 화면이다. DHCPv4 임대 상태·Relay·서버 설정 학습 내용과 함께 당시 구성·설정·관찰 결과를 비교할 수 있다.
원본 크기로 보기 ↗- 「실습」 문맥에 삽입된 원본 실습·개념 참고 화면이다. DHCPv4 임대 상태·Relay·서버 설정 학습 내용과 함께 당시 구성·설정·관찰 결과를 비교할 수 있다.
원본 크기로 보기 ↗- 「실습」 문맥에 삽입된 원본 실습·개념 참고 화면이다. DHCPv4 임대 상태·Relay·서버 설정 학습 내용과 함께 당시 구성·설정·관찰 결과를 비교할 수 있다.
원본 크기로 보기 ↗- 「실습」 문맥에 삽입된 원본 실습·개념 참고 화면이다. DHCPv4 임대 상태·Relay·서버 설정 학습 내용과 함께 당시 구성·설정·관찰 결과를 비교할 수 있다.
원본 크기로 보기 ↗- 「DHCP - DORA (UDP)」 문맥에 삽입된 원본 실습·개념 참고 화면이다. DHCPv4 임대 상태·Relay·서버 설정 학습 내용과 함께 당시 구성·설정·관찰 결과를 비교할 수 있다.
실습 화면 묶음 04 1장
원본 크기로 보기 ↗- 학습 원본 · DHCP 서버·클라이언트 실습의 해당 절에 수록된 화면·도식이다.
실습 화면 묶음 05 1장
원본 크기로 보기 ↗- 학습 원본 · DHCP 서버·클라이언트 실습의 해당 절에 수록된 화면·도식이다.
실습 화면 묶음 06 1장
원본 크기로 보기 ↗- 학습 원본 · DHCP 서버·클라이언트 실습의 해당 절에 수록된 화면·도식이다.
실습 화면 묶음 07 1장
원본 크기로 보기 ↗- 학습 원본 · DHCP 서버·클라이언트 실습의 해당 절에 수록된 화면·도식이다.
실습 화면 묶음 08 1장
원본 크기로 보기 ↗- 학습 원본 · DHCP 서버·클라이언트 실습의 해당 절에 수록된 화면·도식이다.
실습 화면 묶음 09 1장
원본 크기로 보기 ↗- 학습 원본 · DHCP 서버·클라이언트 실습의 GNS에 NI, IP 작업에 수록된 화면·도식이다.
실습 화면 묶음 10 1장
원본 크기로 보기 ↗- 학습 원본 · DHCP 서버·클라이언트 실습의 Rocky Linux에 DHCP 서버 설정에 수록된 화면·도식이다.
실습 화면 묶음 11 1장
원본 크기로 보기 ↗- 학습 원본 · DHCP 서버·클라이언트 실습의 Ubuntu Linux에 수록된 화면·도식이다.
실습 화면 묶음 12 1장
원본 크기로 보기 ↗- 학습 원본 · DHCP 서버·클라이언트 실습의 Window 10 클라이언트에 DHCP 할당에 수록된 화면·도식이다.
실습 화면 묶음 13 1장
원본 크기로 보기 ↗- 학습 원본 · DHCP 서버·클라이언트 실습의 실습 환경 및 시나리오에 수록된 화면·도식이다.
실습 화면 묶음 14 1장
원본 크기로 보기 ↗- 학습 원본 · DHCP 서버·클라이언트 실습의 외각 엔드포인트 운영체제 세팅에 수록된 화면·도식이다.
실습 화면 묶음 15 1장
원본 크기로 보기 ↗- 학습 원본 · DHCP 서버·클라이언트 실습의 중앙 라우터 및 스위치 세팅에 수록된 화면·도식이다.
실습 화면 묶음 16 1장
원본 크기로 보기 ↗- 「Improper input validacation」 문맥에 삽입된 원본 실습·개념 참고 화면이다. DHCPv4 임대 상태·Relay·서버 설정 학습 내용과 함께 당시 구성·설정·관찰 결과를 비교할 수 있다.
실습 화면 묶음 17 1장
원본 크기로 보기 ↗- 문서 문맥에 삽입된 원본 실습·개념 참고 화면이다. DHCPv4 임대 상태·Relay·서버 설정 학습 내용과 함께 당시 구성·설정·관찰 결과를 비교할 수 있다.
실습 화면 묶음 18 8장
원본 크기로 보기 ↗- 문서 문맥에 삽입된 원본 설정·관리 화면이다. DHCPv4 임대 상태·Relay·서버 설정 학습 내용과 함께 당시 구성·설정·관찰 결과를 비교할 수 있다.
원본 크기로 보기 ↗- 문서 문맥에 삽입된 원본 설정·관리 화면이다. DHCPv4 임대 상태·Relay·서버 설정 학습 내용과 함께 당시 구성·설정·관찰 결과를 비교할 수 있다.
원본 크기로 보기 ↗- 문서 문맥에 삽입된 원본 설정·관리 화면이다. DHCPv4 임대 상태·Relay·서버 설정 학습 내용과 함께 당시 구성·설정·관찰 결과를 비교할 수 있다.
원본 크기로 보기 ↗- 문서 문맥에 삽입된 원본 설정·관리 화면이다. DHCPv4 임대 상태·Relay·서버 설정 학습 내용과 함께 당시 구성·설정·관찰 결과를 비교할 수 있다.
원본 크기로 보기 ↗- 문서 문맥에 삽입된 원본 설정·관리 화면이다. DHCPv4 임대 상태·Relay·서버 설정 학습 내용과 함께 당시 구성·설정·관찰 결과를 비교할 수 있다.
원본 크기로 보기 ↗- 문서 문맥에 삽입된 원본 설정·관리 화면이다. DHCPv4 임대 상태·Relay·서버 설정 학습 내용과 함께 당시 구성·설정·관찰 결과를 비교할 수 있다.
원본 크기로 보기 ↗- 문서 문맥에 삽입된 원본 설정·관리 화면이다. DHCPv4 임대 상태·Relay·서버 설정 학습 내용과 함께 당시 구성·설정·관찰 결과를 비교할 수 있다.
원본 크기로 보기 ↗- 문서 문맥에 삽입된 원본 실습·개념 참고 화면이다. DHCPv4 임대 상태·Relay·서버 설정 학습 내용과 함께 당시 구성·설정·관찰 결과를 비교할 수 있다.
실습 화면 묶음 19 2장
원본 크기로 보기 ↗- 문서 문맥에 삽입된 원본 설정·관리 화면이다. DHCPv4 임대 상태·Relay·서버 설정 학습 내용과 함께 당시 구성·설정·관찰 결과를 비교할 수 있다.
원본 크기로 보기 ↗- 문서 문맥에 삽입된 원본 실습·개념 참고 화면이다. DHCPv4 임대 상태·Relay·서버 설정 학습 내용과 함께 당시 구성·설정·관찰 결과를 비교할 수 있다.
실습 화면 묶음 20 2장
원본 크기로 보기 ↗- 「dhcp」 문맥에 삽입된 원본 설정·관리 화면이다. DHCPv4 임대 상태·Relay·서버 설정 학습 내용과 함께 당시 구성·설정·관찰 결과를 비교할 수 있다.
원본 크기로 보기 ↗- 「dhcp」 문맥에 삽입된 원본 설정·관리 화면이다. DHCPv4 임대 상태·Relay·서버 설정 학습 내용과 함께 당시 구성·설정·관찰 결과를 비교할 수 있다.
실습 화면 묶음 21 1장
원본 크기로 보기 ↗- 문서 문맥에 삽입된 원본 실습·개념 참고 화면이다. DHCPv4 임대 상태·Relay·서버 설정 학습 내용과 함께 당시 구성·설정·관찰 결과를 비교할 수 있다.
실습 화면 묶음 22 1장
원본 크기로 보기 ↗- 「Router」 문맥에 삽입된 원본 명령·상태 출력이다. DHCPv4 임대 상태·Relay·서버 설정 학습 내용과 함께 당시 구성·설정·관찰 결과를 비교할 수 있다.
동작·명령 참고 문서
10Relay를 사용하는 별도 서버 예
- Relay 서버 연결같은 클라이언트 LAN에서 서버가 198.51.100.53에 있다면 클라이언트 인터페이스에 를 설정한다. 이 경우 앞 절의 로컬 풀과 동시에 독립 운영하면 승인되지 않은 복수 Offer가 생길 수 있으므로 실습 시 서버 역할을 하나씩 바꾸어 비교한다.
- HA를 구성하려면 서버들끼리 임대 충돌을 피하는 별도 설계가 필요하다.
- 가상 중복가상화 실습에서는 VMnet 자체의 와 실습 서버가 같은 세그먼트에 함께 있는지 살펴야 한다. 내장 해제는 선택한 실습 VMnet에서 중복 서버를 제거하는 작업이지 모든 방화벽과 보안 기능을 끄라는 뜻이 아니다.
- tunnel의 local/remote 포트가 반대편 설정과 맞아야 이전의 브로드캐스트 전달부터 성립한다.
interface GigabitEthernet0/0
ip address 192.0.2.1 255.255.255.0
ip helper-address 198.51.100.53
no shutdown
!
show ip interface GigabitEthernet0/0
show ip route 198.51.100.53
show ip forward-protocol외부 서버에 192.0.2.0/24 풀이 존재하고 양방향 이 갖춰진 Relay 예.
11Windows·Linux 실습에서 서버와 클라이언트 설정 구분
- 서버 설정 실습은 서버 인터페이스를 고정 주소로 정한 뒤 역할, scope의 네트워크·범위·제외 주소·임대·라우터· 옵션을 구성하는 흐름이다.
- 의 ISC dhcpd 설정은 subnet/netmask 블록, range, option routers, option domain-name-servers, default--time·max--time을 사용한다.
- 이는 해당 레거시 구현 문법이며 현재의 다른 서버 제품 설정과 섞어 쓰지 않는다.
- 클라이언트 설정서버 자체 주소는 자신이 동적으로 나누어 주는 범위 밖에서 안정적으로 유지한다. 클라이언트는 NetworkManager의 자동 또는 Netplan의 dhcp4:true 등으로 임대를 요청한다.
- Netplan 파일에 를 켠 것은 서버를 설치한 것이 아니다.
- 특정 가상 단말의 실패만으로 운영체제·VPCS 사이의 일반적인 프로토콜 비호환을 단정하지 않는다.
12캡처와 임대 정보를 같은 거래로 묶기
- 거래 식별서버까지 Discover가 도착했는지, Offer가 돌아왔는지, 클라이언트가 어떤 Server Identifier를 선택했는지, ACK의 와 옵션이 무엇인지를 와 클라이언트 식별 정보로 연결한다.
- 동일 브로드캐스트 영역에서 승인하지 않은 두 Offer가 보이면 단말 하나의 문제보다 서버 연결 구성이 우선이다.
- 의 신뢰 방향이 틀리면 서버의 Offer·ACK만 차단되는 모습도 생긴다.
- ACK 이후 전달ACK 이후 IP는 있어도 외부 통신이 안 되면 갱신 횟수를 늘리기보다 마스크·게이트웨이·를 분리해 읽는다. 의 release는 임대를 반납하는 변경 작업이므로 단순 조회와 구별한다.
- 아래 출력 항목은 실제 수집값이 아니라 읽어야 할 필드의 예시다.
- 실습 캡처 해석원본에는 같은 ID로 두 서버가 서로 다른 후보를 제안한 화면이 있다. 캡처 목록에서 Offer가 반복되는 이유는 복수 서버·재전송·수집 중복 등 후보를 구분해야 하며, 선택한 서버는 Request의 옵션과 ACK를 연결해 판단한다.
- 이는 Discover·Offer가 반드시 한 번씩만 나오는 네 줄짜리 그림이 실제 수집 전체를 설명하지 못하는 사례이다.
Windows 조회: ipconfig /all
Linux 조회: ip -4 addr show
ip -4 route show
예시 임대:
IPv4 Address : 192.0.2.100
Subnet Mask : 255.255.255.0
Gateway : 192.0.2.1
DHCP Server : 192.0.2.1
DNS Server : 192.0.2.53
Lease : 8 hours
Wireshark 표시 필터(버전에 따라 dhcp 또는 bootp):
udp.port == 67 || udp.port == 68조회 예와 설명용 임대. IP·마스크·라우터··서버·만료를 각각 대조한다.
13릴레이와 임대 상태를 이용한 실패 위치 판독
- 서버까지 Discover가 없음클라이언트 구간에서 Discover가 보이지만 서버 구간에 없으면 적용 인터페이스·서버 경로·전달 정책을 좁힌다. 릴레이 설정은 클라이언트 브로드캐스트를 받는 인터페이스와 연결된다.
- 에 맞는 풀 없음서버가 Discover를 받아도 가 가리키는 링크의 풀이 없거나 주소가 소진되면 정상 Offer를 만들지 못할 수 있다. 서버 자체 인터페이스의 만 보는 것으로는 부족하다.
- ACK가 돌아오지 않음서버가 ACK를 송신한 증거와 릴레이 수신·클라이언트 전달을 분리한다. 서버의 반환 경로와 릴레이가 사용하는 유니캐스트·브로드캐스트 전달 조건을 함께 본다.
- NAK와 무응답 구분NAK는 요청 주소를 계속 사용할 수 없다는 명시적 응답이다. 무응답은 서버 장애·필터·손실 등 여러 원인이므로 둘을 같은 임대 실패 로그로 단순화하지 않는다.
- 클라이언트 식별 변경서버는 Client Identifier가 있으면 이를 임대 식별에 사용할 수 있다. 같은 MAC이어도 클라이언트 식별값이 바뀌면 다른 임대로 보일 수 있으므로 chaddr만 비교하지 않는다.
함께 보는 학습 자료
아래 공식 자료를 본문의 개념·예제와 함께 읽어 보세요. 자료별로 확인할 위치와 관찰할 내용을 적었습니다.
RFC 2131 §4.4·Figure 5: 클라이언트 상태 기계
이후 갱신·재바인딩·만료를 읽어 상태별 필드가 달라지는 이유를 이해한다.
- SELECTING·INIT-REBOOT·의 필드 차이
- §4.4.5의 유니캐스트와 브로드캐스트
- 또는 임대 만료의 사용 중단
이해했는지 확인하기
- DORA 중 마지막으로 관측된 메시지는 무엇인가?
- Relay가 전달한 클라이언트 네트워크와 서버 scope가 일치하는가?
- 주소 외에 받은 게이트웨이·DNS·임대 정보도 확인했는가?