45
DHCP - Managed Configuration of TCP/IP Hosts Dr. Ralph Droms Bucknell University [email protected]

DHCP - Managed Configuration of TCP/IP Hosts Dr. Ralph Droms Bucknell University [email protected] DHCP - Managed Configuration of TCP/IP Hosts Dr. Ralph

Embed Size (px)

Citation preview

DHCP - Managed Configuration of TCP/IP

Hosts

Dr. Ralph DromsBucknell [email protected]

DHCP - Managed Configuration of TCP/IP

Hosts

Dr. Ralph DromsBucknell [email protected]

DHCP purpose and goalsBackground and history of DHCPOperational detailsUsing DHCP

OutlineOutline

From RFC2131:

The Dynamic Host Configuration Protocol (DHCP) provides a framework for passing configuration information to hosts on a TCP/IP network. DHCP consists of two components: a protocol for delivering host-specific configuration parameters from a DHCP server to a host and a mechanism for allocation of network addresses to hosts.

Purpose of DHCPPurpose of DHCP

A host without a valid IP address locates and communicates with a DHCP serverA DHCP server passes configuration parameters, including an IP address, to the hostThe DHCP server may dynamically allocate addresses to hosts and reuse addressesHosts can detect when they require a new IP addressUnavailability of DHCP server has minimal effect on operation of hosts

DHCP Functional GoalsDHCP Functional Goals

Provides protocol stack, application and other configuration parameters to hostsEliminates need for individual, manual configuration for hostsIncludes administrative controls for network administratorsBackward compatible packet format for BOOTP interoperation (RFC 1542)Can coexist with hosts that have pre-assigned IP addresses and hosts that do not participate in DHCP

What Does DHCP Do?What Does DHCP Do?

Eliminate manual configuration of hostsPrevent use of any IP address by more than one hostShould not require a server on every subnetAllow for multiple serversProvide a mechanism, not a policyProvide same configuration - including IP address - to a host whenever possible

Design GoalsDesign Goals

Plug-and-playMove clients/desktop PCs between officesRenumberOther restructuring - change subnet masksMobile IP - laptopsMoving equipment - cartable

What Can You Do With DHCP?What Can You Do With DHCP?

Support multiple addresses per interfaceInform running host that parameters have changedPropagate new addresses to DNS (yet!)Support inter-server communication (yet!)Provide authenticated message delivery (yet!)

What DHCP Doesn’t DoWhat DHCP Doesn’t Do

DHCP purpose and goalsBackground and history of DHCP

- Origin of DHCP

- Specification documents

- Protocol statusOperational detailsUsing DHCP

OutlineOutline

Internet Engineering Task Force (IETF)Dynamic Host Configuration Working Group (DHC WG)BootP

What Is DHCP and Where Does It Come From?

What Is DHCP and Where Does It Come From?

Formal process for development, review and acceptance of TCP/IP protocol suite standardsInitial specifications published as Internet Drafts (I-Ds)Accepted specifications published as Request for Comments (RFCs)

IETF StandardsIETF Standards

DHCP has been accepted as a Draft Standard; the specifications are published in:

- RFC 2131: Dynamic Host Configuration Protocol- RFC 2132: DHCP Options and BOOTP Vendor

Extensions- RFC 1534: Interoperation between DHCP and

BOOTP- RFC 1542: Clarifications and Extensions for the

Bootstrap ProtocolSeveral additional options are in development

Protocol StatusProtocol Status

DHCP is an open standard, with freely available specificationsCan be (and has been) implemented entirely from the specificationCommercial implementations are widely availableNon-commerical implementations are also available

Implementation StatusImplementation Status

Compilation of DHCP-related WWW links and other information:

http://www.bucknell.edu/~droms/dhcp/index.htmlDHCP FAQ (maintained by John Wobus): http://web.syr.edu/~jmwobus/comfaqs/[email protected] mailing list (admin requests to [email protected])IETF information can be retrieved from:

http://www.ietf.cnri.reston.va.usI-Ds and RFCs can also be retrieved from:

http://ds.internic.net

DHCP ResourcesDHCP Resources

RARP/DRARPTFTPICMPRouter DiscoveryMobile IPWireless/“cellular” IP

Related WorkRelated Work

DHCP purpose and goalsBackground and history of DHCPOperational details

- Server function- Address allocation and leases- Message sequences- Options

Using DHCP

OutlineOutline

Provide a variety of mechanisms for controlled configurationCan override default parameters from Host Requirements“Classing” for individualized configuration of new hosts

Server Manages Client ConfigurationsServer Manages Client Configurations

Static (BOOTP): client must be pre-configured into databaseAutomatic: server can allocate new address to clientDynamic: server can allocate and reuse addresses

Address AllocationAddress Allocation

Dynamic addresses are allocated for a period of time known as the leaseClient is allowed to use the address until the lease expiresClient MUST NOT use the address after the lease expires, even if there are active connections using the addressServer MUST NOT reuse the address before the lease expires

LeasesLeases

An IP internet may not always be completely operational; there may not always be connectivity between any two hosts, so:

- Can’t use distributed (client-based) assignment of addresses- Can’t use “address defense” before server

reuse of addressesLeases guarantee an agreement as to when an address may be safely reused even if the server can’t contact the client

Motivation for LeasesMotivation for Leases

Server MAY choose to reuse an address by reassigning it to a different client after the lease has expiredServer can check using ICMP echo to see if the address is still in use (but no response is not a definitive answer!)Allows address sharing

- From old computers replaced by new ones

- Among a pool of computers not always using TCP/IP

- For transient hosts like laptops

Address ReuseAddress Reuse

Clients check on address validity at reboot time (renumbering)Clients can extend the lease on an address at startup timeClients can extend the lease on an address as expiration time approaches (without closing and restarting existing connections)Clients with addresses that have been configured manually can use DHCP to obtain other configuration parameters

Address Allocation DetailsAddress Allocation Details

INIT - acquire an IP address and configuration informationINIT-REBOOT - confirm validity of previously acquired address and configurationRENEWING - extend a lease from the original serverREBINDING - extend a lease from any server

Four Ways a Client Uses DHCPFour Ways a Client Uses DHCP

Client broadcasts DISCOVER to locate serversServer chooses address and returns in OFFERClient selects a server and sends REQUEST for addressServer commits allocation and returns ACK with address and other parametersClient can now use configured address

Client Server

DISCOVER

OFFER

REQUEST

ACK

Obtaining A New AddressObtaining A New Address

Client puts address in REQUEST and broadcastsServer checks validity and returns ACK with parameters

Client Server

REQUEST

ACK

Rebooting ClientRebooting Client

Client puts requested lease extension in REQUEST and sends to serverServer commits extension and returns ACK with parameters

Client Server

REQUEST

ACK

Renewing ClientRenewing Client

Client puts requested lease extension in REQUEST and broadcastsServer commits extension and returns ACK

Client Server

REQUEST

ACK

Rebinding ClientRebinding Client

Client broadcasts INFORMServer returns ACK with parameters

Client Server

INFORM

ACK

Client With Externally Configured AddressClient With Externally Configured Address

Using hardware and IP broadcast still limits DHCP message from client to single physical networkRelay agent can retransmit DHCP message to a remote serverServer replies to relay agent, which retransmits the message to the DHCP clientRelay agent and server exchange messages using unicast UDP

- Servers can be located anywhere on organization’s internet

- Servers can be centrally located for ease of administration

Relay AgentsRelay Agents

Client and server are on different physical networksClient and relay agent are on same physical networkRelay agent retransmits broadcast from client and response from server

Client Server

REQUEST

ACKRelay agent

REQUEST

ACK

Illustration of Relay AgentIllustration of Relay Agent

Identical to BOOTP relay agents (except for ‘broadcast flag’)Very simple in function and implementation

- Stateless; all information carried in DHCP messages- Needs to examine only a couple of header

fields, not the entire DHCP message and options

Usually, but not necessarily, located in routersMore than one relay agent on a physical network is OK

Implementation of Relay AgentsImplementation of Relay Agents

DHCP purpose and goalsBackground and history of DHCPOperational detailsUsing DHCP

- Using multiple servers- Lease times and strategies- Some scenarios for using DHCP- Integrated DHCP/IP address

management tools

OutlineOutline

Client behavior is designed to accommodate multiple serversUsing multiple servers can provide reliability through redundancy

- UDP does not guarantee delivery- Server may be down

All coordination must be managed by DHCP administrator

- Distributed database- Off-line batch updates- Manually

Using Multiple ServersUsing Multiple Servers

Split address pool for each subnet among serversCoordinate leases off-lineReallocate addresses when needed

Strategies For Using Multiple ServersStrategies For Using Multiple Servers

Choice of lease times made by DHCP administratorLong lease times decrease traffic and server load, short lease times increase flexibilityShould choose lease time allow for server unavailability

- Allows clients to use old addresses- For example, long enough to span

weekendsCan use management tools to differentiate between desktop computers, cartable systems and laptops

Lease Times and StrategiesLease Times and Strategies

Fresh out-of-the-box systemsRenumberingChanging other parametersMoving to new locationReplacing a system

ScenariosScenarios

500 new computers show up on loading dock Friday afternoonSoftware loaded, network cards installed - all ready to goBut... these systems go to six different departments in three different buildings

New SystemsNew Systems

Make sure network infrastructure is in place

- Routers (correctly configured)- Network addresses- Subnet masks- DHCP servers

Configure DHCP management with class identifiers (if desired)Plug them in...

New Systems - DHCP SolutionNew Systems - DHCP Solution

Network administrator may have to change IP addresses across significant parts of an enterprise internet

- Change in subnet numbering scheme- Change of ISP- Restructuring of internal

network architectureWant to minimize downtime

RenumberingRenumbering

Set up plan for renumbering- New network architecture- Network addresses, server

addresses- Timing of cutovers

Force DHCP clients to contact server for notification about new address

- Set short leases- Require all clients be rebooted

Renumbering - DHCP SolutionRenumbering - DHCP Solution

Use FQDNs for servers; when servers move, DHCP clients will find new IP addressesRebooting, although not elegant, probably most reliableSchedule subnet cutover for overnight or weekend, force reboot through “alternate protocol” (e.g.., e-mail to all users)

Renumbering - DHCP SolutionRenumbering - DHCP Solution

Other configuration parameters such as print servers may changeReconfigure DHCP server with new parametersAt next reconfirmation, clients will get new addressesUse INFORM on computers that get IP addresses through some other mechanism

Changing Other Configuration ParametersChanging Other Configuration Parameters

User may get moved to a new location on a different subnetUser may arrange to move computer system without contacting network administratorDHCP will allocate address for new locationWhat about old lease?

- New server can notify network administrator about address allocation

- Client can issue RELEASE before moving from old location

Moving A Client To A New LocationMoving A Client To A New Location

User may get new computer on desktopNetwork administrator wants to allocate same IP address to the new computerBut, new computer will have different hardware address Use client id as system identifier and transfer to new system

Replacing A SystemReplacing A System

DHCP works today as a tool for automatic configuration of TCP/IP hostsIt is an open Internet standard and interoperable client implementations are widely availableOngoing work will extend DHCP with authentication, DHCP-DNS interaction and inter-server communication

SummarySummary