DHCP Question

Preston Hagar prestonh at gmail.com
Fri Apr 4 21:13:29 UTC 2008

On Wed, Mar 19, 2008 at 9:36 PM,  <jhall at vandaliamo.net> wrote:
> I am in the process of moving my phone system DHCP from my Mitel 3300 to a
>  FreeBSD so I can parse the DHCP file.  In order to make Mitel's option 125
>  work correctly, I have to specify some vendor specific options.  I believe
>  this is option 124 if I understand the Mitel documentation correctly.

We have a Mitel 3300 and use OpenBSD servers with the ISC DHCP server.
 We have 5212 and 5224 IP phones and 5550 IP consoles.  The consoles
are the trickiest  of all to get working with DHCP.  Below are the
sections from our DHCP config that relate to the Mitel. A few things
to note about it. is our name server and dhcp server. is the IP of our Mitel 3300 controller/server.  the
/sysro/e2t8260 is the path of our e2t. The two most key components to
get it to work are the option-128 and option-129.  You need to set
these as the hex representation of the IP address of your Mitel
controller, so in our case, became 0A:01:05:01.  It won't
work otherwise. is our VPN gateway to our other office.
The vendor-class-identifier for mitel phones is always null (at least
for the 5212, 5224, and 5550 consoles).  We use this to separate the
Mitel phones into a separate class so they are in their own IP block.
We originally just used the vendor-class-identifier thing, but then
started to find NICs that had vendor-class-identifier = null, so I
noticed that all of our Mitel device MAC addresses start with
1:08:00:0f., so we use that to separate them as well.  It is a bad
hack, but it works for us.  Anyway, with this config, we have 5212,
5224, and 5550 consoles getting their addresses with DHCP. Feel free
to contact me if you have any questions.

host mitele2t {
   hardware ethernet 08:00:0f:1d:7e:e7;
   filename "/sysro/E2T8260";
# ------------------------------------------------------------
# ************************************************************
# ------------------------------------------------------------
# consoles will not work unless these options are EXACTLY
# as below.
# ------------------------------------------------------------
# ************************************************************
# ------------------------------------------------------------
option option-128 code 128 = string;
option option-129 code 129 = string;
option option-130 code 130 = text;
option option-66 code 66 = string;
option option-67 code 67 = string;

subnet netmask {

  class "mitel-phone" {
        match if option vendor-class-identifier = null
        and substring(pick-first-value(option
dhcp-client-identifier,hardware), 0, 4) = 1:08:00:0f;

  pool {
    allow members of "mitel-phone";
    option routers;
    option option-66  "";
    option option-67  "/sysro/e2t8260";
    option option-128 0A:01:05:01;
    option option-129 0A:01:05:01;
    #option tftp-server-name "";
    option option-130 "MITEL IP PHONE";

  pool {
    deny members of "mitel-phone";
    option routers;

  option broadcast-address;
  option subnet-mask;

  option netbios-name-servers;
  option netbios-dd-server;
  option netbios-node-type 8;
  option netbios-scope "";


Hope this helps.


More information about the freebsd-questions mailing list