How to define Relay Agent Vendor Specific suboptioninISCdhcpd.conf

Shu Lin Shu.Lin at Aviatnet.com
Sat Mar 6 01:06:30 UTC 2010


Reissom,

Thanks a lot for your reply.
The problem is if we define the pool like below, 

class "wimax-ha-192.168.205.1"
{
        option WIMAX.HA_IP 192.168.205.1;
}

subnet 10.67.0.0 netmask 255.255.0.0
{
        pool
        {
                allow members of "wimax-ha-192.168.205.1";
                range dynamic-bootp    10.67.128.1 10.67.128.253;
        }
}

it cannot match the packet with the options like below:

- option: Relay Agent (82)
-- vendor specific suboption (9)
--- WiMAX vendor specific suboption (24757)
---- WiMAX HA IP suboption (2)

The key problem is I cannot find a way to concatenate all the suboptions
deeply down to relay agent vendor specific wimax HA IP suboption level.

If I define the class like this double encapsulations.

option space WIMAX;
option WIMAX.mip4_registration code 1 = unsigned integer 8;
option WIMAX.HA_IP code 2 = ip-address;

option space vsrso code width 4 length width 1;
option vsrso.wimax code 24757 = encapsulate WIMAX;

option agent.vendor-specific code 9 = encapsulate vsrso;

class "wimax-ha-192.168.205.1"
{
        option agent.vendor-specific.WIMAX.HA_IP 192.168.205.1;
}

Or this
class "wimax-ha-192.168.205.1"
{
        option agent.vsrso.WIMAX.HA_IP 192.168.205.1;
}

They both are not correct.

-Shu


-----Original Message-----
From: dhcp-users-bounces+shu.lin=aviatnet.com at lists.isc.org
[mailto:dhcp-users-bounces+shu.lin=aviatnet.com at lists.isc.org] On Behalf
Of Reissom Beshir
Sent: Friday, March 05, 2010 8:44 AM
To: Users of ISC DHCP
Subject: Re: How to define Relay Agent Vendor Specific
suboptioninISCdhcpd.conf


Monday, Mar 01, 2010 Shu Lin wrote:

> David,
>
> String type seems work.
>
> I tried "encapsulation" definition also as below:
>
> option space WIMAX;
> option WIMAX.mip4_registration code 1 = unsigned integer 8;
> option WIMAX.HA_IP code 2 = ip-address;
>
> option space vsrso code width 4 length width 1;
> option vsrso.wimax code 24757 = encapsulate WIMAX;
>
> option agent.subscriber-id code 6 = text;
> option agent.vendor-specific code 9 = encapsulate vsrso;
>
> class "vendor-classes"
> {
>        match if exists agent.vendor-specific;
> }
> subclass "vendor-classes" "wimax"
> {
>        vendor-option-space vsrso;
>        option vsrso.wimax;                     ==> line 38
> }

Note that 'if exists' is a boolean expression.
I am not sure how to construct the subclass to match a boolean value.
You may have to do away with the subclass statment and move the
instructions 
to the class statement.

> But got below error:
>
> Mar  1 16:20:25 dhcp-fedora dhcpd: /etc/dhcp/dhcpd.conf line 38:
> semicolon expected.

The error here is you did not specify a value for the option, and it is
expecting a string/hexadecimal value when you configure it this way.  If
I
am not mistaken you need to fill in the WIMAX option space.
e.g.
  option WIMAX.mip4_registration 20;
  option WIMAX.HA_IP 1.2.3.4;

Hopefully the server will encapsulate the above in agent.vendor-specific
as
per your instruction.

As for vendor-option-space statement, according to the dhcp-options
manual:

    The vendor-option-space declaration tells the DHCP server to use
options
    in the option space to construct the DHCPv4
vendor-encapsulated-options
option.

so the server will send vsrso option space in option 43.  I don't think
that
is your intention.

Regards,
Reissom


_______________________________________________
dhcp-users mailing list
dhcp-users at lists.isc.org
https://lists.isc.org/mailman/listinfo/dhcp-users



More information about the dhcp-users mailing list