On 2009-03-23, Lars Hansson <romaby...@gmail.com> wrote:
> Hey,
> I have some problems with using OpenBSD 4.4's dhcpd together with
> Mitel VoIP phones that I'd hope someone could shed some light on.
> Mitel VoIP phones requires custom options to load firmware, set VLAN
> etc and i cant quite get it to work with OpenBSD's dhcpd. it works
> fine one a Linux box running isc-dhcp 3.0.6 although curiously not
> enough on isc-dhcp on OpenBSd 4.4.
>
> ISC-DHCP:
> # MITEL specific options
> option space mitel;
> option mitel.tftp code 128 = ip-address;
> option mitel.icp code 129 = ip-address;
> option mitel.id code 130 = text;
> option mitel.vlan code 132 = signed integer 32;
> option mitel.l2p code 133 = signed integer 32;
> option mitel.dscp code 134 = unsigned integer 8;
>
> option mitel.tftp       172.30.179.7;
> option mitel.icp        10.107.10.17;
> option mitel.id         "MITEL IP PHONE";
> option mitel.vlan       11;
> option mitel.l2p        6;
> option mitel.dscp       46;
>
> I know OpenBSd's dhcp does not support options the same way but I
> thought the below would work:
>
> option option-128       "172.30.179.7";
> option option-129       "10.107.10.17";
..
> option mitel.vlan      02;
> option mitel.l2p        06;
> option mitel.dscp       46;

you are giving these as text strings, but the phone actually requires IP
addresses or numbers.

you can patch like this,

Index: tables.c
===================================================================
RCS file: /cvs/src/usr.sbin/dhcpd/tables.c,v
retrieving revision 1.8
diff -N -u -p tables.c
--- tables.c    13 Jan 2009 21:11:57 -0000      1.8
+++ tables.c    23 Mar 2009 19:53:22 -0000
@@ -190,13 +190,13 @@ struct option dhcp_options[256] = {
        { "option-125", "X",                            &dhcp_universe, 125 },
        { "option-126", "X",                            &dhcp_universe, 126 },
        { "option-127", "X",                            &dhcp_universe, 127 },
-       { "option-128", "X",                            &dhcp_universe, 128 },
-       { "option-129", "X",                            &dhcp_universe, 129 },
-       { "option-130", "X",                            &dhcp_universe, 130 },
+       { "mitel-tftp", "I",                            &dhcp_universe, 128 },
+       { "mitel-icp", "I",                             &dhcp_universe, 129 },
+       { "mitel-id", "X",                              &dhcp_universe, 130 },
        { "option-131", "X",                            &dhcp_universe, 131 },
-       { "option-132", "X",                            &dhcp_universe, 132 },
-       { "option-133", "X",                            &dhcp_universe, 133 },
-       { "option-134", "X",                            &dhcp_universe, 134 },
+       { "mitel-vlan", "l",                            &dhcp_universe, 132 },
+       { "mitel-l2p", "l",                             &dhcp_universe, 133 },
+       { "mitel-dscp", "B",                            &dhcp_universe, 134 },
        { "option-135", "X",                            &dhcp_universe, 135 },
        { "option-136", "X",                            &dhcp_universe, 136 },
        { "option-137", "X",                            &dhcp_universe, 137 },

these ones have a whole bunch of clashes with other vendor options (see
http://www.iana.org/assignments/bootp-dhcp-parameters/) and they aren't
assigned or tentatively assigned, so I don't think they can be hard-
coded into our dhcpd by default.

Reply via email to