DHCP adds option 82
DHCP adds option 82
DHCP Option 82: Allocate IP Address Intelligently
DHCP Option 82 refers to the “DHCP Relay Agent Information Option,” which allows a DHCP Relay Agent to insert detailed information, such as port information and MAC addresses of relay agents, to a request being transmitted to a DHCP server. DHCP servers can use this information to allocate IP addresses and other assignment settings that are mapped to its MAC address table. Moxa’s managed Ethernet switches support DHCP Option 82, and play the role of DHCP relay agent to communicate a DHCP request. When a new device replaces a device connected to a Moxa switch, the DHCP server can offer the same assigned IP address to reduce system downtime and maintenance efforts.
Microsoft DHCP Server does not have default support for option 82 as it has for other standard options. Using DHCP Server Management console (dhcpmgmt.msc) -> <DHCP Server> -> Right Click -> Set Predefined Options…,
you can add option 82 as a customized option for DHCP Server.
Thereon, on the DHCP Client you can use DhcpRequestParams API to retrieve the options for your further use.
DHCP option 82 is “DHCP Relay Agent Information Option” and allows a DHCP Relay Agent to insert circuitspecific information into a request that is being forwarded to a DHCP Server.
DHCP Option 82 provides a mechanism for generating IP addresses based on location the clientdevice is in the network. Information about its location can be sent along with the request to theserver. The DHCP server makes a decision on what IP should be assigned based on thisinformation. In order to implement DHCP Option 82, the network must have the followingequipment:
1) Standard DHCP client.
2) Switch or router implementing Relay Agent with Option 82 support.
3) DHCP server with Option 82 Support
The format of Relay Agent Option 82 options:
Sub-Option Sub Value
1. Circuit ID ——> Contains info identifying port location that request is coming in on.
2. Remote ID —–> Not Used, currently the MAC address of the Relay Agent
3. GiAddr ———> Gateway IP Address of the Relay Agent. Part of the normal DHCP message.
The Circuit ID field generally contains information describing the port location that the DHCPrequest is coming in from. It may contain additional information that helps describe which IPaddress should be assigned out, such as the VLAN ID. This value must be unique for a particularswitch or router that is providing the Relay Agent function. The value must also stay the same ifmodules are installed or removed in the Switch or Router that implements the Relay Agent.Therefore, having subfields representing the Module, Slot and Port is highly recommended.
The Remote ID field is intended to carry information describing the device at the remote end ofthe link. However, in Ethernet systems, this is typically the MAC address of the Relay Agent.This is not particularly useful since the MAC address would change if the Relay Agent was everyreplaced. Building a DHCP server database using the MAC address of the Relay Agent wouldrequire that the table be rebuilt every time one of the Relay Agents was replaced. Some vendorshave modified this field to use the IP address of the Relay Agent or some other string describingthe Relay Agent. This field must be unique to the entire network.
The GiAddr (or Gateway Address) field is part of the normal DHCP message. It contains the IPaddress of the Relay Agent. Since IP addresses must be unique, this field is unique for the entirenetwork.By combining the GiAddr and the Circuit ID, a network wide unique string can be created. Thisstring can be used for table lookup in the DHCP server. We called this string a pseudo MACaddress, since most DHCP servers do a MAC to IP mapping in their databases.
Entry filed under: Networking.