[Kea-users] Option82

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

[Kea-users] Option82

Batuhan Bakıp

Hello again,

 

>Second case: I do not want to evaulate mac address, I evaluated circuit-id

>and remote-id for the incoming packet. For example, I want to determine what

>IP address to give to the port of switch for any client so I do not care mac

>address . The following configuration is not working because reservations

>need  a circuit-id or a hw-address or a duid or a client-id or a flex-id.

>Maybe I give circuit-id in reservations but  it may have to be the same

>circuit-id for different IP address so configuration will fail.

>                       

>..

> 

>..

> 

>  "client-classes": [

> 

>   {"name": "opt82", "test": "substring(relay4[1].hex,2,4) == 0x012E0105 and

>substring(relay4[2].hex,2,6) == 0x44656e656d65"} ],

> 

>  "subnet4": [

> 

>    {

> 

>       "subnet": "10.0.100.0/24",

> 

>       "client-class": "opt82",

> 

>       "reservations": [

> 

>       {

> 

>          "ip-address": "10.0.100.13"

> 

>        },

> 

>   ]

> 

>}

> 

>]

> 

>..

> 

>..

> 

>Client-classes is exactly as I want but I would like to give the IP address

>according to the client-classes evaluation without sticking to reservation

>obligations.

 

I solved this problem with below configuration. But it is work on KEA 1.1.0, it does not work on KEA 1.3.0. When I restart service on KEA 1.3.0, I see failed log “unexpected keyword "client-class" in pools map”. When I gave wrong information in client-classes (example; true circuit-id:0x012E0105 but I gave false circuid-id:0x00070108), it still gets IP. So it does not care about evaluation. Why?

 

  "client-classes": [

   {"name": "opt82", "test": "substring(relay4[1].hex,2,4) == 0x012E0105 and substring(relay4[2].hex,2,6) == 0x44656e656d65"}],

 

  "subnet4": [

    {

       "subnet": "10.0.100.0/24",

       "pools": [

       {

        "client-class": “opt82",

        "pool": "10.0.100.220 - 10.0.100.220"

       }

      ]

   }

]

 

Except that, I want to add a new client-class but when I add the new client-class, it does not evaluate as I want. Same situation as above. If first discover comes from second client, kea giving first IP (10.0.100.220)  although client-class (opt82try) is not match. In this case, I am writing client-classes for nothing.

 

  "client-classes": [

   {"name": "opt82", "test": "substring(relay4[1].hex,2,4) == 0x012E0105 and substring(relay4[2].hex,2,6) == 0x44656e656d65"},

   {“name”: “opt82try”, “test”: “substring(relay4[1].hex,2,4) == 0x012E0105 and substring(relay4[2].hex,2,7) == 0x6f707438327377}

],

 

  "subnet4": [

    {

       "subnet": "10.0.100.0/24",

       "pools": [

       {

        "client-class": “opt82",

        "pool": "10.0.100.220 - 10.0.100.220"

       },

       {

        "client-class": “opt82try",

        "pool": "10.0.100.221 - 10.0.100.221"

       }

      ]

   }

]

 

 

 


_______________________________________________
Kea-users mailing list
[hidden email]
https://lists.isc.org/mailman/listinfo/kea-users