[ipxe-devel] [PATCH] [dhcp] Use random transaction ID to associate messages

Sasha Levin levinsasha928 at gmail.com
Thu Sep 15 14:53:02 UTC 2011


On Thu, 2011-09-15 at 10:43 -0400, Amos Kong wrote:
> ----- Original Message -----
> > ----- Original Message -----
> > > On Thu, 15 Sep 2011 21:00:38 +0800, Amos Kong <akong at redhat.com>
> > > wrote:
> > >
> > > > + netdev->xid = random();
> > >
> > > This will not work for reboots. The decision that the hardware
> > > address
> > > is
> > > choosen was not accidental. Not sure if some DHCP server will count
> > > on
> > > the
> > > ID. (RFC 2131 "Retain DHCP client configuration across server
> > > reboots,
> > > and,
> > > whenever possible, a DHCP client should be assigned the same
> > > configuration
> > > parameters despite restarts of the DHCP mechanism"). If not so I am
> > > fine
> > > with the patch.
> 
> Hi Hagen,
> 
> rfc2131 clearly describes that we need a random xid,
> I don't think xid is a port of "DHCP client configuration",
> it only be used to associate messages and responses between client and server.
> 
> I would post a patch to ipxe maillist later if it's ok.

rfc2131 only required that "A DHCP client MUST choose 'xid's in such a
way as to minimize the chance of using an 'xid' identical to one used
by another client.".

The 'random xid' suggestion is listed merely as an example.

The way I see it using a xid based on MAC instead of a random number is
safer since the odds for same MAC on the same network are pretty slim
since it would cause problems on other layers in the network.

Whats the reason behind this patch? Whats wrong with current selection
of xid?

-- 

Sasha.




More information about the ipxe-devel mailing list