slide1 l.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
DHCP PowerPoint Presentation
Download Presentation
DHCP

Loading in 2 Seconds...

play fullscreen
1 / 23

DHCP - PowerPoint PPT Presentation


  • 543 Views
  • Uploaded on

DHCP. Dynamic Host Configuration Protocol. CIS 856: TCP/IP and Upper Layer Protocols Presented by Kyle Getz October 20, 2005. Motivation for DHCP. Configuration parameters for network hosts IP address Router Subnet Mask Many more… Before DHCP Manual assignment RARP BOOTP.

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'DHCP' - Mercy


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
slide1

DHCP

Dynamic Host Configuration Protocol

CIS 856: TCP/IP and Upper Layer Protocols

Presented by Kyle Getz

October 20, 2005

motivation for dhcp
Motivation for DHCP
  • Configuration parameters for network hosts
    • IP address
    • Router
    • Subnet Mask
    • Many more…
  • Before DHCP
    • Manual assignment
    • RARP
    • BOOTP
dhcp features
DHCP Features
  • Protocol for providing configuration parameters to hosts over network
  • Dynamic allocation of IP addresses
  • Minimal human intervention
sample network
Sample Network

DHCP Server

DHCP Clients

UDP Port 68

UDP Port 68

UDP Port 68

UDP Port 67

Router

Internet

preliminaries
Preliminaries
  • (DHCP) Message = DHCP-PDU (A-PDU)
  • Client = DHCP Client
  • Server = DHCP Server
  • Well-known port numbers
    • DHCP Server: UDP port 67
    • DHCP Client: UDP port 68
    • No ephemeral ports
  • Broadcast and unicast used for PDU’s in both directions
    • “Broadcast”: link and IP addresses are broadcast
    • “Unicast”: link and IP addresses are unicast
initial message flow

Client attempts to discover available DHCP servers

DHCPDISCOVER

DHCPDISCOVER

Servers reply with offers

DHCPOFFER

DHCPOFFER

Client broadcasts request for one of the received offers

DHCPREQUEST

DHCPREQUEST

Server acknowledges client’s use of IP address

DHCPACK

Client explicitly releases use of IP address

DHCPRELEASE

Initial Message Flow

Server A

Client

Server B

Client collects offers and decides which offer to accept

Configuration complete

Graceful shutdown

lease renewal times client
Lease Renewal Times (Client)
  • T1 < T2 < Lease time
  • T1 default value = 1/2 of lease time
  • T2 default value = 7/8 of lease time
  • Communicated via DHCPOFFER, DHCPACK
  • Client actions when times elapse
    • T1: client must renew address with the DHCP server
    • T2: client must renew address with any DHCP server
    • Lease time: client must stop using IP address
renewal message flow

Client unicasts request to continue using IP address

DHCPREQUEST

Server acknowledges request and updates lease

DHCPACK

Client unicasts request to continue using IP address

DHCPREQUEST

Client broadcasts request to continue using IP address

DHCPREQUEST

DHCPREQUEST

Server acknowledges request and updates lease

DHCPACK

Renewal Message Flow

Server A

Client

Server B

T1 elapses

Configuration complete

T1 elapses

T2 elapses

Configuration complete

client fsm simplified

DHCPNAK/ Stop using IP address

RENEWING

DHCPNAK, Lease expires/ Stop using IP address

T2/Broadcast DHCPREQUEST

REBINDING

DHCPACK/Set T1,T2

DHCPNAK/ Discard offer

DHCPACK (in use)/ DHCPDECLINE

DHCPACK/Set T1,T2

T1/ Unicast DHCPREQUEST

-/DHCPDISCOVER

REQUESTING

Select offer/DHCPREQUEST

DHCPACK/Set T1,T2

SELECTING

BOUND

DHCPOFFER/ Process offer

Client FSM (Simplified)

INIT

retransmissions
Retransmissions
  • Client responsible for all retransmissions
  • Retransmission strategy
    • Exponential backoff
    • Randomized
  • Recommendations
    • Base delay doubled for each retransmission
    • Random number picked from [-1,+1]
    • Maximum base delay: 64 seconds
server storage
Server Storage
  • Permanent storage
    • Pool of available IP addresses
    • Local configuration parameters
    • Mapping between clients and leases
  • Flexibility concerning storage update
    • When DHCPOFFER sent
    • When DHCPACK sent
dhcp pdu format
DHCP PDU Format

32 Bits

Magic Cookie

dhcp options
DHCP Options

Magic Cookie:

4 bytes

Option format:

1 byte

1 byte

Length bytes

Subnet Mask:

One-byte options:

0

Padding

255

End of options

another sample network
Another Sample Network

DHCP Clients

Internet

Relay Agent within

Router

DHCP Server

relay agents
Relay Agents
  • Remove restriction of having DHCP server on every network
  • Listen for DHCP messages and transmit them to appropriate machine
  • Client to server relay
    • Broadcast from client ® Unicast to server(s)
  • Server to client relay
    • Broadcast from server ® Broadcast to client
    • Unicast from server ® Unicast to client
advanced topics
Advanced Topics
  • Lease times
  • Dynamic DNS
  • Reliability
  • Security
lease times
Lease Times
  • Anywhere from 15 minutes – 1 year
  • Common lease times & rationales
    • 15 minutes: Maximum number of addresses free
    • 3 days: Microsoft default
    • 4 months: Students can keep lease over summer
  • Tradeoff
dynamic dns
Dynamic DNS
  • If IP address changes due to DHCP, DNS entry is wrong
  • Client or server can update DNS
  • Option 81: Client FQDN

1 byte

1 byte

“Length” bytes

reliability
Reliability
  • Two synchronized DHCP servers on the same network: Primary, Secondary
  • Permanent storage constantly communicated
  • Failure: Secondary server takes over

Primary Server

Secondary Server

DHCP Clients

security
Security
  • Potentially unauthorized clients
  • Malicious client could exhaust address pool
  • Malicious server (Rogue server)
    • Supply incorrect configuration parameters
    • Supply malicious configuration parameters