From owner-freebsd-net@FreeBSD.ORG Tue Oct 13 05:55:31 2009 Return-Path: Delivered-To: freebsd-net@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id C4D541065672; Tue, 13 Oct 2009 05:55:31 +0000 (UTC) (envelope-from dhorn2000@gmail.com) Received: from mail-gx0-f214.google.com (mail-gx0-f214.google.com [209.85.217.214]) by mx1.freebsd.org (Postfix) with ESMTP id 6ACBB8FC14; Tue, 13 Oct 2009 05:55:31 +0000 (UTC) Received: by gxk6 with SMTP id 6so9033208gxk.13 for ; Mon, 12 Oct 2009 22:55:30 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:in-reply-to:references :date:message-id:subject:from:to:cc:content-type; bh=WYiezTPziHQpaGPnnmYfpl87g/Pv433iq2AHUkumYX8=; b=Dx1BnrPBoGj5naXXTcn31X09W/l7RWIResW66GN0+AlNgSRgtWLDkhb0+n5/bddjkZ puA3271Hh6xx6gKiOdPZrfnaYE+PGEQKX0ZutEqRoLoNGlyh/vXmxyE0TVLZ6v+KH3P1 20q2o7O8WZ11I0oN//6r8ndP0WFNPAL2tWYMs= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; b=QtyH5kXt/gc+wDnsu7YgPPQlOzN+/50MpNw7VOc/oflcLKgJSrvO8T3qA5w3tAb6Qn mwosrdj10cwuxyhuG8WNkrd4TiQcLFrybApBfXBXPPUemAr4p6EuxdqbENuF5TUMzUDX pwO9Y2/Fdl0ZxRT9pcnrAAgasPEva6vHvTSiU= MIME-Version: 1.0 Received: by 10.90.18.33 with SMTP id 33mr4086858agr.113.1255413330651; Mon, 12 Oct 2009 22:55:30 -0700 (PDT) In-Reply-To: <4AD410CB.2060105@FreeBSD.org> References: <4AD3ABD0.7010603@FreeBSD.org> <25ff90d60910122030r1f8511e9ued9535024fa3078a@mail.gmail.com> <4AD410CB.2060105@FreeBSD.org> Date: Tue, 13 Oct 2009 01:55:30 -0400 Message-ID: <25ff90d60910122255j5ccae96ar7c58488209768956@mail.gmail.com> From: David Horn To: Doug Barton Content-Type: text/plain; charset=ISO-8859-1 Cc: freebsd-net@freebsd.org Subject: Re: Wacky DHCP values that work in windows but not in FreeBSD X-BeenThere: freebsd-net@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Networking and TCP/IP with FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 13 Oct 2009 05:55:31 -0000 On Tue, Oct 13, 2009 at 1:31 AM, Doug Barton wrote: > David Horn wrote: >> Without seeing the actual tcpdump of the dhcp packets, I would guess >> that this is the Classless Static Route option in DHCPv4 (option 121). > > Ok, I will give the tcpdump option a go as soon as I have a chance. > > Meanwhile, if this is in fact the case how would we make it work in > FreeBSD? Is there a newer version of DHCP that handles this properly? I thought that dhclient originated from ISC, but looking at the 4.1.1b2 ISC DHCP source and at the OpenBSD dhclient, I did not see option 121 handling in dhclient. The freebsd copy of both dhclient.c, and /sbin/dhclient-script there is code for handling this option. I guess the FreeBSD version split from the ISC version at some point, and option 121 handling was added (2+ years ago). As far as fixing/debugging, it all depends on the exact dhcp options and values. It might just be a tweak to /sbin/dhclient-script, or it may be more complicated. http://www.freebsd.org/cgi/cvsweb.cgi/src/sbin/dhclient/dhclient.c Revision 1.21: download - view: text, markup, annotated - select for diffs Fri Feb 9 17:50:26 2007 UTC (2 years, 8 months ago) by emaste Branches: MAIN CVS tags: RELENG_7_BP, RELENG_7_0_BP, RELENG_7_0_0_RELEASE, RELENG_7_0 Branch point for: RELENG_7 Diff to: previous 1.20: preferred, colored Changes since revision 1.20: +68 -0 lines Implement RFC3442, the Classless Static Route option. The original DHCP specification includes a route option but it supports only class-based routes. RFC3442 adds support for specifying the netmask width for each static route. A variable length encoding is used to minimize the size of this option. PR: bin/99534 Submitted by: Andrey V. Elsukov Reviewed by: brooks ---Dave H