Subject: Relayed lease extension

From: Wim Janssen <[email-masked]>
Date: Thu, 27 Apr 2000 12:34:27 -0700

All,

I wanted to get some feedback from the group on the following:

What should a DHCP server do when it receives a request to extend an 
existing lease, and with 'giaddr' filled in?

Should it unicast to the client (ciaddr) or to the relay agent (giaddr)?

The idea behind this is a client/relay agent in one big box,
asking for leases on behalf of PPP users. In this case, lease extensions
should not be sent back to the PPP user, but to the relay agent.

Note that the RFC 'assumes' that lease extensions are unicasted between 
client and server, without any intervention from a relay agent.
("this message will be unicast ...")

RFC 2131 tells us:

4.1 Constructing and sending DHCP messages (p. 21 & 22)

   ...
   If the 'giaddr' field in a DHCP message from a client is non-zero,
   the server sends any return messages to the 'DHCP server' port on the
   BOOTP relay agent whose address appears in 'giaddr'. 
   ...

But also on p. 30:

   Clients send DHCPREQUEST messages as follows:

   ...
   o DHCPREQUEST generated during RENEWING state:

      'server identifier' MUST NOT be filled in, 'requested IP address'
      option MUST NOT be filled in, 'ciaddr' MUST be filled in with
      client's IP address. In this situation, the client is completely
      configured, and is trying to extend its lease. This message will
      be unicast, so no relay agents will be involved in its      ^^^^
      transmission.  Because 'giaddr' is therefore not filled in, the
      DHCP server will trust the value in 'ciaddr', and use it when
      replying to the client.
    ...

Thanks for any feedback,

Wim

--
Wim Janssen
Alcatel Telecom                          http://www.alcatel.com
Tel : 1 (408) 935 3130                   Fax : 1 (408) 941 1818
Email : [email-masked] || [email-masked]

---

From: "Bernard Aboba" <[email-masked]>
Date: Fri, 28 Apr 2000 05:39:43 -0700

>should not be sent back to the PPP user, but to the relay agent.

In most implementations that I've seen it is the big box that
obtains the leases in the first place. So in effect it is not
acting as a relay agent, but as a DHCP client. In that case,
why forge a DHCPREQUEST on behalf of the PPP user?