<html>
<head>
<meta content="text/html; charset=ISO-8859-1"
http-equiv="Content-Type">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<div class="moz-cite-prefix">On 9/28/2014 9:08 PM, Mike Diggins
wrote:<br>
</div>
<blockquote cite="mid:5428B0F0.7060800@mcmaster.ca" type="cite">
<meta http-equiv="content-type" content="text/html;
charset=ISO-8859-1">
Hello,<br>
<br>
I have ISC DHCP V4 configured for my Nortel IP Phones. Soon we are
adding Avaya 96xx series phones which require a different DHCP
configuration and I could use some assistance how to best handle
that. Both types of phones will share the same network and address
range.<br>
<br>
My current configuration:<br>
<br>
<tt>option space Nortel;</tt><tt><br>
</tt><tt>option Nortel.data code 128 = string;</tt><tt><br>
</tt><tt><br>
</tt><tt>class "ipphones" {</tt><tt><br>
</tt><tt> match if substring(option vendor-class-identifier,0,14)
= 4e:6f:72:74:65:6c:2d:69:32:30:30:34:2d:41;</tt><tt><br>
</tt><tt>}</tt><tt><br>
</tt><tt><br>
</tt><tt>shared-network Voice1 {</tt><tt><br>
</tt><tt> subnet 172.25.5.0 netmask 255.255.255.0 {</tt><tt><br>
</tt><tt> option routers 172.25.5.5;</tt><tt><br>
</tt><tt> option broadcast-address 172.25.5.255;</tt><tt><br>
</tt><tt> option subnet-mask 255.255.255.0;</tt><tt><br>
</tt><tt> allow unknown-clients;</tt><tt><br>
</tt><tt> default-lease-time 86400;</tt><tt><br>
</tt><tt> max-lease-time 86400;</tt><tt><br>
</tt><tt> pool {</tt><tt><br>
</tt><tt> vendor-option-space Nortel;</tt><tt><br>
</tt><tt> option Nortel.data
"Nortel-i2004-A,172.25.10.203:4100,1,5;172.25.10.203:4100,1,5;172.25.47.22:5000.";</tt><tt><br>
</tt><tt> range 172.25.5.128 172.25.5.254;</tt><tt><br>
</tt><tt> allow members of "ipphones";</tt><tt><br>
</tt><tt> }</tt><tt><br>
</tt><tt> }</tt><tt><br>
</tt><tt>}</tt><br>
<br>
I want to add the following new class and options for the 96xx
series phones but I'm not sure how best to merge the two? Do I add
the Avaya option statement into the subnet pool declaration above
or move the Nortel option statement out of the pool declaration
and into the class "iphones". I want DHCP to respond with only the
correct option matched to the phone. <br>
<br>
<tt>option space AVAYA_PHONE;</tt><tt><br>
</tt><tt> option AVAYA_PHONE.242 code 242 = text; #Used by 96xx
and newer hardware</tt><tt><br>
</tt><tt> </tt><tt><br>
</tt><tt>class "avaya-phones" {</tt><tt><br>
</tt><tt> match if substring (option vendor-class-identifier,
0, 13) = "ccp.avaya.com" ;</tt><tt><br>
</tt><tt> option </tt><tt><tt>AVAYA_PHONE.242</tt>
"MCIPADD=172.25.43.18,172.25.43.19,MCPORT=1719,TLSSRVR=172.25.43.80,HTTPSRVR=172.25.43.80,DIR=sip,TLSDIR=sip,HTTPDIR=sip"</tt><tt><br>
</tt><tt>}</tt><br>
<div class="moz-signature"><font size="1"><br>
<big><big><br>
</big></big></font><font size="1"><big><big>-Mike</big></big>
</font></div>
<br>
<fieldset class="mimeAttachmentHeader"></fieldset>
<br>
<pre wrap="">_______________________________________________
dhcp-users mailing list
<a class="moz-txt-link-abbreviated" href="mailto:dhcp-users@lists.isc.org">dhcp-users@lists.isc.org</a>
<a class="moz-txt-link-freetext" href="https://lists.isc.org/mailman/listinfo/dhcp-users">https://lists.isc.org/mailman/listinfo/dhcp-users</a></pre>
</blockquote>
<br>
<tt>My suggestion:<br>
</tt><br>
<tt>option space Nortel;</tt><tt><br>
</tt><tt>option Nortel.data code 128 = string;</tt><tt><br>
</tt><br>
<tt>option space AVAYA_PHONE;</tt><br>
<tt>option AVAYA_PHONE.242 code 242 = text; #Used by 96xx and newer
hardware</tt><tt><br>
<br>
</tt><tt>#class "ipphones" {</tt><tt><br>
</tt><tt># match if substring(option vendor-class-identifier,0,14)
= 4e:6f:72:74:65:6c:2d:69:32:30:30:34:2d:41;</tt><tt><br>
</tt><tt>#}<br>
<br>
# lookup Nortel phone MAC address prefix (</tt><tt><tt><font
color="#006600">xx:xx:xx</font>)</tt>:<br>
# <a class="moz-txt-link-freetext" href="http://pbxbook.com/voip/ntmacs.html">http://pbxbook.com/voip/ntmacs.html</a><br>
</tt><tt><font color="#993300">class "nortel-phones"</font> {</tt><tt><br>
</tt><tt> match if substring(hardware, 1,3) = <font
color="#006600">xx:xx:xx</font>;</tt><tt><br>
# if multiple MAC prefixes use:<br>
# match if (<br>
# substring(hardware, 1,3) = <font color="#006600">xx:xx:xx</font><br>
# or substring(hardware, 1,3) = <font color="#006600">yy:yy:yy</font><br>
# );<br>
</tt><tt> vendor-option-space Nortel;</tt><tt><br>
</tt><tt> option Nortel.data
"Nortel-i2004-A,172.25.10.203:4100,1,5;172.25.10.203:4100,1,5;172.25.47.22:5000.";</tt><tt><br>
# examples of other stuff:<br>
default-lease-time 7200; # 2 hours<br>
ddns-domainname "phone.example.com";<br>
option domain-name "</tt><tt><tt>phone.example.com</tt>";<br>
</tt><tt>}<br>
<br>
</tt><tt><tt><font color="#993300">class "avaya-phones"</font> {</tt><tt><br>
</tt><tt> match if substring (option vendor-class-identifier,
0, 13) = "ccp.avaya.com" ;</tt><tt><br>
</tt></tt><tt><tt><tt> vendor-option-space </tt></tt></tt><tt><tt><tt><tt>AVAYA_PHONE</tt>;</tt><tt><br>
</tt> option </tt><tt><tt>AVAYA_PHONE.242</tt>
"MCIPADD=172.25.43.18,172.25.43.19,MCPORT=1719,TLSSRVR=172.25.43.80,HTTPSRVR=172.25.43.80,DIR=sip,TLSDIR=sip,HTTPDIR=sip"</tt><tt><br>
</tt><tt>}</tt><br>
<br>
</tt><br>
<tt><tt>shared-network Voice1 {</tt><tt><br>
</tt><tt> subnet 172.25.5.0 netmask 255.255.255.0 {</tt><tt><br>
</tt><tt> option routers 172.25.5.5;</tt><tt><br>
</tt><tt> option broadcast-address 172.25.5.255;</tt><tt><br>
</tt><tt> option subnet-mask 255.255.255.0;</tt><tt><br>
</tt><tt> allow unknown-clients;</tt><tt><br>
</tt><tt> default-lease-time 86400;</tt><tt><br>
</tt><tt> max-lease-time 86400;</tt><tt><br>
</tt><tt> pool {</tt><tt><br>
</tt><tt> range 172.25.5.128 172.25.5.254;</tt><tt><br>
</tt><font color="#993300"><tt> allow members of "</tt></font></tt><font
color="#993300"><tt><tt><tt>nortel-phones</tt>";</tt><tt><br>
</tt></tt><tt><tt><tt><tt> allow members of "</tt></tt></tt></tt></font><tt><tt><tt><font
color="#993300"><tt><tt><tt><tt>avaya-phones</tt></tt></tt>";</tt></font><tt><br>
</tt></tt> }</tt><tt><br>
</tt><tt> }</tt><tt><br>
</tt><tt>}</tt><br>
<br>
<br>
Hope this helps,<br>
Bill<br>
<br>
</tt><tt> </tt>
</body>
</html>