dhcpc: microsoft classless static routes support

Denys Vlasenko vda.linux at googlemail.com
Sat Sep 25 22:22:41 UTC 2010


On Tuesday 07 September 2010 19:02, Vladislav Grishenko wrote:
> Hi all,
> 
> We're using busybox for embedded linux routers firmware, and have attached
> patch for years.
> Microsoft was added 249 (0xF9) dhcp option in Windows XP/2003 clients when
> there was no rfc3442 accepted.
> So, supporting that option would be useful for soho networking scene.
> 
> Need to say, 121 option have priority over 3 (router) and 33 (classful
> static routes) and should be placed before them in request packet, according
> rfc.

I am not sure currently this will be enforced.

> If client supports both 121 and 249 options, it should request them both,

It's up to admin to use "ushcpc -O staticroutes -O msstaticroutes"
to request both of them.

> but the only difference between them is in the fact that 249 used as
> addition to 3/33 options.

How the options are interpreted is up to udhcpc's script.
udhcpc per se does not do anything to the network configuration.



+       { OPTION_IP | OPTION_LIST     | OPTION_REQ, 0x21 }, /* DHCP_ROUTES        */

(1) This seems to be incorrect.
Option 33 has pairs of IPs, thus it should be OPTION_IP_PAIR, not OPTION_IP.
(2) Why it is flagged with OPTION_REQ? "Just because we fell it's safer to do"
or "we had problems without this flag" (which problems?)


-       { OPTION_STATIC_ROUTES                    , 0x79 }, /* DHCP_STATIC_ROUTES */
+       { OPTION_STATIC_ROUTES        | OPTION_REQ, 0x79 }, /* DHCP_STATIC_ROUTES */
+       { OPTION_STATIC_ROUTES        | OPTION_REQ, 0xf9 }, /* DHCP_MS_STATIC_ROUTES */

(1) Are there material differences between 0x79 and 0xf9
or they are totally the same?
(2) Why they are flagged with OPTION_REQ?


Applied with small changes:

http://git.busybox.net/busybox/commit/?id=7d3a48a003cd645edfae2b404493688022b13193

Thanks!

-- 
vda


More information about the busybox mailing list