Table Of Contents
Prerequisites for DHCP Server RADIUS Proxy
Restrictions for DHCP Server RADIUS Proxy
Information About DHCP Server RADIUS Proxy
DHCP Server RADIUS Proxy Overview
DHCP Server RADIUS Proxy Architecture
DHCP Server and RADIUS Translations
RADIUS Profiles for DHCP Server RADIUS Proxy
How to Configure DHCP Server RADIUS Proxy
Configuring the DHCP Server for RADIUS-based Authorization
Monitoring and Maintaining the DHCP Server
Configuration Examples for DHCP Server Radius Proxy
Configuring the DHCP Server: Example
Configuring RADIUS Profiles: Example
Feature Information for DHCP Server RADIUS Proxy
DHCP Server RADIUS Proxy
First Published: May 2, 2005Last Updated: June 25, 2009The Dynamic Host Configuration Protocol (DHCP) Server RADIUS Proxy is a RADIUS-based address assignment mechanism in which a DHCP server authorizes remote clients and allocates addresses based on replies from a RADIUS server.
Finding Feature Information
For the latest feature information and caveats, see the release notes for your platform and software release. To find information about the features documented in this module, and to see a list of the releases in which each feature is supported, see the "Feature Information for DHCP Server RADIUS Proxy" section.
Use Cisco Feature Navigator to find information about platform support and Cisco IOS XE software image support. To access Cisco Feature Navigator, go to http://www.cisco.com/go/cfn. An account on Cisco.com is not required.
Contents
•
Prerequisites for DHCP Server RADIUS Proxy
•
Restrictions for DHCP Server RADIUS Proxy
•
Information About DHCP Server RADIUS Proxy
•
How to Configure DHCP Server RADIUS Proxy
•
Configuration Examples for DHCP Server Radius Proxy
•
Feature Information for DHCP Server RADIUS Proxy
Prerequisites for DHCP Server RADIUS Proxy
Before you can configure the DHCP Server RADIUS Proxy, you must be running DHCPv4 or a later version. For information about release and platform support, see the "Feature Information for DHCP Server RADIUS Proxy" section.
Restrictions for DHCP Server RADIUS Proxy
The DHCP Server RADIUS Proxy supports only one address authorization pool on the router.
Information About DHCP Server RADIUS Proxy
Before you configure the DHCP Server RADIUS Proxy, you should understand the following concepts:
•
DHCP Server RADIUS Proxy Overview
•
DHCP Server RADIUS Proxy Architecture
•
DHCP Server and RADIUS Translations
•
RADIUS Profiles for DHCP Server RADIUS Proxy
DHCP Server RADIUS Proxy Overview
The DHCP Server RADIUS Proxy feature is an address allocation mechanism for RADIUS-based authorization of DHCP leases. This feature supports DHCP options 60 and 121.
1.
The DHCP server passes client information to a RADIUS server.
2.
The RADIUS server returns all required information to the DHCP server as RADIUS attributes.
3.
The DHCP server translates the RADIUS attributes into DHCP options, and sends this information back to RADIUS in a DHCP OFFER message.
4.
DHCP binding is synchronized after the RADIUS server authorizes the client session.
If a local pool and an authorization pool are configured on the router, the DHCP server can assign addresses from both pools for different client interfaces.
DHCP Server RADIUS Proxy Architecture
The allocation of addresses in a DHCP and RADIUS solution occurs as follows:
1.
The client accesses the network from a residential gateway and sends a DHCP DISCOVER broadcast message to the relay agent. The DHCP DISCOVER message contains the client IP address, hostname, vendor class identifier, and client identifier.
2.
The relay agent sends a DHCP DISCOVER unicast message containing the following information to the router:
–
Relay agent information (option 82) with the remote ID suboption containing the inner and outer VLAN IDs
–
Client information in the DHCP DISCOVER packet
The router determines the address of the DHCP server from the IP helper address on the interface that receives the DHCP packet.
3.
RADIUS receives an access-request message to translate the DHCP options to RADIUS attributes.
4.
RADIUS responds with an access-accept message, and delivers the following attributes to the DHCP server:
–
Framed-IP-Address
–
Framed-IP-Netmask
–
Session-Timeout
–
Session-Duration
5.
The DHCP server sends an OFFER unicast message containing the following translations from the RADIUS server access-accept message to the client:
–
Framed-IP-Address inserted into the DHCP header.
–
Framed-IP-Netmask inserted into DHCP option 1 (subnet mask).
–
Session-Timeout inserted into DHCP option 51 (IP address lease time).
–
Framed-Route that is translated from the standard Cisco Framed-Route format into DHCP option 121 or the DHCP default gateway option (if the network and netmask are appropriate for a default route).
–
A copy of relay agent information (option 82). Before the DHCP client receives the packet, the relay removes option 82.
–
T1 time set to the Session-Timeout and T2 time set to the Session-Duration.
6.
The client returns a formal request for the offered IP address to the DHCP server in a DHCP REQUEST broadcast message.
7.
The DHCP confirms that the IP address is allocated to the client by returning a DHCP ACK unicast message containing lease information and the DHCP options to the client.
8.
A RADIUS server accounting request starts, followed by a RADIUS server accounting response that is used by the AAA subsystem.
When a RADIUS server attribute is not present in an access-accept message, the corresponding DHCP option is not sent to the DHCP client. If the required information to produce a particular RADIUS server attribute is not available to the DHCP server, the DHCP server does not include information in the RADIUS packet. Non-inclusion can be in the form of not sending an attribute (if there is no information at all), or omitting information from the attribute (in the case of CLI-based format strings).
If a DHCP option is provided to the DHCP server but is invalid, the DHCP server may not transmit the corresponding RADIUS attribute in the access-request, or may transmit an invalid RADIUS server attribute.
DHCP Server and RADIUS Translations
Table 1 lists the translations of DHCP options in a DHCP DISCOVER message to attributes in a RADIUS server access-request message.
Table 2 lists the translations of attributes in a RADIUS server access-accept message to DHCP options in a DHCP OFFER message.
RADIUS Profiles for DHCP Server RADIUS Proxy
When you configure RADIUS server user profiles for DHCP server RADIUS proxy, use the following guidelines:
•
The Session-Timeout attribute must contain a value, in seconds. If this attribute is not present, the DHCP OFFER is not sent to the client.
•
A RADIUS user profile must contain the following attributes:
–
Framed-IP-Address
–
Framed-IP-Netmask
–
Framed-Route
–
Session-Timeout
–
Session-Duration—Session-Duration is the Cisco AV pair session-duration = seconds, where seconds is the maximum time for the duration of a lease including all renewals. The value for Session-Duration must be greater than or equal to the Session-Timeout attribute value, and it cannot be zero.
•
Additional RADIUS server attributes are allowed but are not required. The DHCP server ignores additional attributes that it does not understand. If a RADIUS server user profile contains a required attribute that is empty, the DHCP server does not generate the DHCP options.
How to Configure DHCP Server RADIUS Proxy
This section contains the following tasks:
•
Configuring the DHCP Server for RADIUS-based Authorization
•
Monitoring and Maintaining the DHCP Server
Configuring the DHCP Server for RADIUS-based Authorization
Perform this task on the DHCP server to configure address allocation for RADIUS-based authorization of DHCP leases.
SUMMARY STEPS
1.
enable
2.
configure terminal
3.
service dhcp
4.
aaa new-model
5.
aaa group server radius group-name
6.
server ip-address [auth-port port-number] [acct-port port-number]
7.
exit
8.
aaa authorization network method-list-name group server-group-name
9.
aaa accounting network method-list-name start-stop group server-group-name
10.
ip dhcp pool name
11.
accounting method-list-name
12.
authorization method method-list-name
13.
authorization shared-password password
14.
authorization username string
15.
exit
16.
interface type slot/subslot/port[.subinterface]
17.
encapsulation dot1q vlan-id second-dot1q {any | vlan-id [,vlan-id [-vlan-id]]}
18.
ip address address mask
19.
no shutdown
20.
radius-server host ip-address [auth-port port-number] [acct-port port-number]
21.
radius-server key {0 string | 7 string | string}
22.
exit
DETAILED STEPS
Monitoring and Maintaining the DHCP Server
Perform this task to verify and monitor DHCP server information:
SUMMARY STEPS
1.
enable
2.
debug ip dhcp server packet
3.
debug ip dhcp server events
4.
show ip dhcp binding [address]
5.
show ip dhcp server statistics
6.
show ip dhcp pool [name]
7.
show ip route dhcp [address]
DETAILED STEPS
Configuration Examples for DHCP Server Radius Proxy
This section provides the following configuration examples:
•
Configuring the DHCP Server: Example
•
Configuring RADIUS Profiles: Example
Configuring the DHCP Server: Example
The following example shows how to configure a DHCP server for RADIUS-based authorization of DHCP leases. In this example, DHCP clients can attach to Ethernet interface 4/0/1 and Ethernet subinterface 4/0/3.10. The username string (%c-user1) specifies that the RADIUS server sends the Ethernet address of DHCP client named user1 to the DHCP server.
Router> enableRouter# configure terminalRouter(config)# service dhcpRouter(config)# aaa new-modelRouter(config)# aaa group server radius rad1Router(config-sg)# server 10.1.1.1Router(config-sg)# server 10.1.5.10Router(config-sg)# exitRouter(config)# aaa authorization network auth1 group group1Router(config)# aaa accounting network acct1 start-stop group group1Router(config)# aaa session-id commonRouter(config)# ip dhcp database tftp://172.16.1.1/router-dhcp write-delay 100 timeout 5!Router(config)# ip dhcp pool pool_commonRouter(config-dhcp)# accounting acct1Router(config-dhcp)# authorization method auth1Router(config-dhcp)# authorization shared-password ciscoRouter(config-dhcp)# authorization username %c-user1Router(config-dhcp)# exit!Router(config)# interface ethernet4/0/1Router(config-if)# ip address 15.0.0.1 255.255.255.0Router(config-if)# exitRouter(config-if)# interface ethernet4/0/3.10Router(config-if)# encapsulation dot1q 100 second-dot1q 200Router(config-if)# ip address 10.1.1.1 255.255.255.0Router(config-if)# exitRouter(config)# radius-server host 10.1.3.2Router(config)# radius-server key ciscoRouter(config)# exitConfiguring RADIUS Profiles: Example
The following example shows how to configure a typical RADIUS user profile to send attributes in an access-accept message to the DHCP server:
DHCP-00059A3C7800 Password = "metta"Service-Type = Framed,Framed-Ip-Address = 10.3.4.5,Framed-Netmask = 255.255.255.0,Framed-Route = "0.0.0.0 0.0.0.0 10.3.4.1",Session-Timeout = 3600,Cisco:Cisco-Avpair = "session-duration=7200"Additional References
The following sections provide references related to the DHCP Server RADIUS Proxy feature.
Related Documents
Standards
MIBs
RFCs
RFCs TitleNo new or modified RFCs are supported by this feature, and support for existing RFCs was not modified by this feature.
—
Technical Assistance
Feature Information for DHCP Server RADIUS Proxy
Table 3 lists the release history for this feature.
Use Cisco Feature Navigator to find information about platform support and software image support. Cisco Feature Navigator enables you to determine which Cisco IOS XE software images support a specific software release, feature set, or platform. To access Cisco Feature Navigator, go to http://www.cisco.com/go/cfn. An account on Cisco.com is not required.
Note
Table 3 lists only the Cisco IOS XE software release that introduced support for a given feature in a given Cisco IOS XE software release train. Unless noted otherwise, subsequent releases of that Cisco IOS XE software release train also support that feature.
Glossary
client—A host trying to configure its interface (obtain an IP address) using DHCP or BOOTP protocols.
DHCP—Dynamic Host Configuration Protocol.
giaddr—Gateway IP address. The giaddr field of the DHCP message provides the DHCP server with information about the IP address subnet on which the client is to reside. It also provides the DHCP server with an IP address where the response messages are to be sent.
MPLS—Multiprotocol Label Switching. Emerging industry standard upon which tag switching is based.
relay agent—A router that forwards DHCP and BOOTP messages between a server and a client on different subnets.
server—DHCP or BOOTP server.
VPN—Virtual Private Network. Enables IP traffic to use tunneling to travel securely over a public TCP/IP network.
VRF—VPN routing and forwarding instance. A VRF consists of an IP routing table, a derived forwarding table, a set of interfaces that use the forwarding table, and a set of rules and routing protocols that determine what goes into the forwarding table. In general, a VRF includes the routing information that defines a customer VPN site that is attached to a PE router. Each VPN instantiated on the PE router has its own VRF.
Cisco and the Cisco Logo are trademarks of Cisco Systems, Inc. and/or its affiliates in the U.S. and other countries. A listing of Cisco's trademarks can be found at www.cisco.com/go/trademarks. Third party trademarks mentioned are the property of their respective owners. The use of the word partner does not imply a partnership relationship between Cisco and any other company. (1005R)
Any Internet Protocol (IP) addresses and phone numbers used in this document are not intended to be actual addresses and phone numbers. Any examples, command display output, network topology diagrams, and other figures included in the document are shown for illustrative purposes only. Any use of actual IP addresses or phone numbers in illustrative content is unintentional and coincidental.
© 2005-2009 Cisco Systems, Inc. All rights reserved.
