ISC DHCP 4.4.1_CentOS7_DHCPv6_Relay_server: issue related with Class matching option along with condition.

classic Classic list List threaded Threaded
9 messages Options
Reply | Threaded
Open this post in threaded view
|

ISC DHCP 4.4.1_CentOS7_DHCPv6_Relay_server: issue related with Class matching option along with condition.

PaviGuru Pavithragurumurthy

Hello Team,

 

I am working on a problem with my ISC DCHP Version 4.4 server for IPv6 from last few days, But I could not found a solution or root cause. So I hope someone could help me.

 

Problem : server not responding with IP details for relay request with selection of class option [ option 18].

It works fine when we comment out on class condition.

From wireshark print, This interface id will inserted by an relay agent [ “TESTING;”].

 

Please guide us how to collect debug logs with debug enable or any configuration error or installation steps. Platform is Centos7.  

 

Configuration file

[root@localhost dhcp]# cat dhcpd6.conf

#

# DHCPv6 Server Configuration file.

#   see /usr/share/doc/dhcp*/dhcpd6.conf.example

#   see dhcpd.conf(5) man page

 

authoritative;

 

default-lease-time 86400;

max-lease-time 86400;

 

allow leasequery;

log-facility local7;

 

class "team" {

         match if substring (option dhcp6.interface-id, 0, 8) = "TESTING;";

}

 

subnet6 3001:db8:100:f101::0/64 {

  pool6 {

    log(info, option dhcp6.interface-id);

    range6 3001:db8:100:f101::0:100 3001:db8:100:f101::0:1FF;

    allow members of "team";

  }

}

 

[root@localhost dhcp]#

 

[root@localhost /]# /usr/local/sbin/dhcpd -6 -d -lf /var/db/dhcp.leases -cf /etc/dhcp/dhcpd6.conf eno1

Internet Systems Consortium DHCP Server 4.4.1

Copyright 2004-2018 Internet Systems Consortium.

All rights reserved.

For info, please visit https://www.isc.org/software/dhcp/

Config file: /etc/dhcp/dhcpd6.conf

Database file: /var/db/dhcp.leases

PID file: /var/run/dhcpd6.pid

Wrote 0 class decls to leases file.

Wrote 0 NA, 0 TA, 0 PD leases to lease file.

Bound to *:547

Listening on Socket/5/eno1/3001:db8:100:f101::/64

Sending on   Socket/5/eno1/3001:db8:100:f101::/64

Server starting service.

Relay-forward message from 3001:db8:100:f101:62a8:feff:feab:5500 port 547, link address 3001:db8:100:f101:62a8:feff:feab:5500, peer address fe80::208:2ff:fe01:1

Unable to pick client address: no addresses available  - shared network 3001:db8:100:f101::/64: 0 total, 0 active,  0 abandoned

Sending Relay-reply to 3001:db8:100:f101:62a8:feff:feab:5500 port 547

Relay-forward message from 3001:db8:100:f101:62a8:feff:feab:5500 port 547, link address 3001:db8:100:f101:62a8:feff:feab:5500, peer address fe80::208:2ff:fe01:1

Unable to pick client address: no addresses available  - shared network 3001:db8:100:f101::/64: 0 total, 0 active,  0 abandoned

Sending Relay-reply to 3001:db8:100:f101:62a8:feff:feab:5500 port 547

 

Wireshark Logs attached:

 

Let us know any further information required, we are doing first time with IPv6. IPv4 is fine and class options are working.

 

Thanks

Guru


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

DHCPv6_OPT_18.pcap (171K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: ISC DHCP 4.4.1_CentOS7_DHCPv6_Relay_server: issue related with Class matching option along with condition.

Christopher Barry
On Tue, 6 Nov 2018 21:32:32 +0530
PaviGuru Pavithragurumurthy <[hidden email]> wrote:

>"TESTING;";

Responding only because I see no one else has.

is that extra semicolon inside the quotes desired? I have never setup
an ipv6 dhcp server, so I'm likely no help to you, but sometimes it's
something that silly.

maybe do a substring 7 chars and match to "TESTING" to see if that
semicolon is somehow biting you?

Good Luck!

--
Regards,
Christopher
_______________________________________________
dhcp-users mailing list
[hidden email]
https://lists.isc.org/mailman/listinfo/dhcp-users
Reply | Threaded
Open this post in threaded view
|

Re: ISC DHCP 4.4.1_CentOS7_DHCPv6_Relay_server: issue related with Class matching option along with condition.

PaviGuru Pavithragurumurthy

Thanks for the response,

 

Could you check on config file, the configured parameter are correct and responseding text shows matching was not found. I’m bit concern on here. None of other matching not working. i have tested multiple combination of characters, but every time fail with same indication.


NOTE: We have tested DHCPv4 relay server with same relay agent with IPv4 working fine !!. with DHCPv6 has concern.


In our relay always ending with semicolon like "TESTING;", TETSING can change to any character.

 

Test#1: DHCPv6 relay sending with option 18 interface id with “TESTING;”

              

               Config file changes: relay sending with 8 ASCII character [TESTING;] , as from wireshark.  

 

class "team" {

         match if substring (option dhcp6.interface-id, 0, 7) = "TESTING";

}

 

subnet6 3001:db8:100:f101::0/64 {

  pool6 {

    log(info, option dhcp6.interface-id);

    range6 3001:db8:100:f101::0:100 3001:db8:100:f101::0:1FF;

    allow members of "team";

  }

}

Result : same indication as earlier.

Unable to pick client address: no addresses available  - shared network 3001:db8:100:f101::/64: 0 total, 0 active,  0 abandoned

 

Test#2: DHCPv6 relay sending with option 18 interface id with “GURU;”

              

               Config file changes: relay sending with 8 ASCII character [GURU;] , as from wireshark.  

 

class "team" {

         match if substring (option dhcp6.interface-id, 0, 5) = "GURU;";

}

 

subnet6 3001:db8:100:f101::0/64 {

  pool6 {

    log(info, option dhcp6.interface-id);

    range6 3001:db8:100:f101::0:100 3001:db8:100:f101::0:1FF;

    allow members of "team";

  }

}

Result : same indication as earlier.

Unable to pick client address: no addresses available  - shared network 3001:db8:100:f101::/64: 0 total, 0 active,  0 abandoned

 

Thanks

Guru

 


On Wed, Nov 7, 2018 at 7:39 AM Christopher Barry <[hidden email]> wrote:
On Tue, 6 Nov 2018 21:32:32 +0530
PaviGuru Pavithragurumurthy <[hidden email]> wrote:

>"TESTING;";

Responding only because I see no one else has.

is that extra semicolon inside the quotes desired? I have never setup
an ipv6 dhcp server, so I'm likely no help to you, but sometimes it's
something that silly.

maybe do a substring 7 chars and match to "TESTING" to see if that
semicolon is somehow biting you?

Good Luck!

--
Regards,
Christopher

_______________________________________________
dhcp-users mailing list
[hidden email]
https://lists.isc.org/mailman/listinfo/dhcp-users
Reply | Threaded
Open this post in threaded view
|

Re: ISC DHCP 4.4.1_CentOS7_DHCPv6_Relay_server: issue related with Class matching option along with condition.

yoshihiko fujita

Hello,

> match if substring (option dhcp6.interface-id, 0, 5) = "GURU;";

interface id option is relay-forw message type option.
but dhcp6.interface-id represents the Relay Message options in options.

if host-identifier can use v6relopt.

sample:
host {
        host-identifier v6relopt 1 dhcp6.interface-id 01:00:00:00;
        ...

but match if syntax does not seem to support.

Good luck!

2018年11月7日(水) 12:18 [hidden email] <[hidden email]>:

Thanks for the response,

 

Could you check on config file, the configured parameter are correct and responseding text shows matching was not found. I’m bit concern on here. None of other matching not working. i have tested multiple combination of characters, but every time fail with same indication.


NOTE: We have tested DHCPv4 relay server with same relay agent with IPv4 working fine !!. with DHCPv6 has concern.


In our relay always ending with semicolon like "TESTING;", TETSING can change to any character.

 

Test#1: DHCPv6 relay sending with option 18 interface id with “TESTING;”

              

               Config file changes: relay sending with 8 ASCII character [TESTING;] , as from wireshark.  

 

class "team" {

         match if substring (option dhcp6.interface-id, 0, 7) = "TESTING";

}

 

subnet6 3001:db8:100:f101::0/64 {

  pool6 {

    log(info, option dhcp6.interface-id);

    range6 3001:db8:100:f101::0:100 3001:db8:100:f101::0:1FF;

    allow members of "team";

  }

}

Result : same indication as earlier.

Unable to pick client address: no addresses available  - shared network 3001:db8:100:f101::/64: 0 total, 0 active,  0 abandoned

 

Test#2: DHCPv6 relay sending with option 18 interface id with “GURU;”

              

               Config file changes: relay sending with 8 ASCII character [GURU;] , as from wireshark.  

 

class "team" {

         match if substring (option dhcp6.interface-id, 0, 5) = "GURU;";

}

 

subnet6 3001:db8:100:f101::0/64 {

  pool6 {

    log(info, option dhcp6.interface-id);

    range6 3001:db8:100:f101::0:100 3001:db8:100:f101::0:1FF;

    allow members of "team";

  }

}

Result : same indication as earlier.

Unable to pick client address: no addresses available  - shared network 3001:db8:100:f101::/64: 0 total, 0 active,  0 abandoned

 

Thanks

Guru

 


On Wed, Nov 7, 2018 at 7:39 AM Christopher Barry <[hidden email]> wrote:
On Tue, 6 Nov 2018 21:32:32 +0530
PaviGuru Pavithragurumurthy <[hidden email]> wrote:

>"TESTING;";

Responding only because I see no one else has.

is that extra semicolon inside the quotes desired? I have never setup
an ipv6 dhcp server, so I'm likely no help to you, but sometimes it's
something that silly.

maybe do a substring 7 chars and match to "TESTING" to see if that
semicolon is somehow biting you?

Good Luck!

--
Regards,
Christopher
_______________________________________________
dhcp-users mailing list
[hidden email]
https://lists.isc.org/mailman/listinfo/dhcp-users


--
□■━━━━━━━━━━━━━━━━━
  藤田 善光 [hidden email]
  日本シー・エー・ディー株式会社 
  TEL:03-3565-3011
  FAX:03-3565-3611
  http://www.ncad.co.jp
 ━━━━━━━━━━━━━━━━━■□

_______________________________________________
dhcp-users mailing list
[hidden email]
https://lists.isc.org/mailman/listinfo/dhcp-users
Reply | Threaded
Open this post in threaded view
|

Re: ISC DHCP 4.4.1_CentOS7_DHCPv6_Relay_server: issue related with Class matching option along with condition.

PaviGuru Pavithragurumurthy

Hi,

 

Thanks for the response,

 

Yes, we need to match incoming values vs configured parameter on relay server, if both are matches allow these IP’s [ as per dhcpd6 configuration file]

 

We received message from relay agent : DHCPv6 Message type: Relay-forw (12) with Option: Interface-Id (18) [ with name “TESTING;”]

So we have configured class condition to meet these incoming requirement. i.e. matching with TESTING; [ using class option ]

 

could you share config file with v6relopt to match our need, attached pcap collected at relay server.

where we need to place this match. It helps me a lot !!!. first time looking with IPv6.

 

/etc/dhcp/dhcpd6.conf [ old configuration]

class "team" {

#         match if substring (option dhcp6.remote-id, 0, 8) = "TESTING;";

         match if substring (option dhcp6.interface-id, 0, 8) = "TESTING|";

}

 

subnet6 3001:db8:100:f101::0/64 {

  pool6 {

    allow members of "team";

    range6 3001:db8:100:f101::0:100 3001:db8:100:f101::0:1FF;

  }

}

NOTE:

Same Configuration type we used on DHCPv4 relay server and is working fine. So I used same format in DHCPv6 relay server.

[root@localhost dhcp]# cat DHCPv4_Relay_server

#

# DHCP Server Configuration file.

#   see /usr/share/doc/dhcp*/dhcpd.conf.example

#   see dhcpd.conf(5) man page

#

authoritative;

log-facility local7;

option ipaddress code 43 = ip-address;

default-lease-time 86400;

 

 

class "VLAN242" {

        match if(

        (substring (option agent.circuit-id,0,7) = "AC220m;")

);

}

 

shared-network "DHCPrelay" {

 

         subnet 10.43.45.0 netmask 255.255.255.0{

                option routers 10.43.45.1;

        }

               subnet 192.242.0.0 netmask 255.255.252.0{

                option routers 192.242.0.1;

        }

 

       pool {

                allow members of "VLAN242";

                range 192.242.0.11 192.242.3.254;

                option subnet-mask 255.255.252.0;

                option routers 192.242.0.1;

        }

}

[root@localhost dhcp]#

 

 

Thanks
Guru

On Wed, Nov 7, 2018 at 2:33 PM yoshihiko fujita <[hidden email]> wrote:

Hello,

> match if substring (option dhcp6.interface-id, 0, 5) = "GURU;";

interface id option is relay-forw message type option.
but dhcp6.interface-id represents the Relay Message options in options.

if host-identifier can use v6relopt.

sample:
host {
        host-identifier v6relopt 1 dhcp6.interface-id 01:00:00:00;
        ...

but match if syntax does not seem to support.

Good luck!

2018年11月7日(水) 12:18 [hidden email] <[hidden email]>:

Thanks for the response,

 

Could you check on config file, the configured parameter are correct and responseding text shows matching was not found. I’m bit concern on here. None of other matching not working. i have tested multiple combination of characters, but every time fail with same indication.


NOTE: We have tested DHCPv4 relay server with same relay agent with IPv4 working fine !!. with DHCPv6 has concern.


In our relay always ending with semicolon like "TESTING;", TETSING can change to any character.

 

Test#1: DHCPv6 relay sending with option 18 interface id with “TESTING;”

              

               Config file changes: relay sending with 8 ASCII character [TESTING;] , as from wireshark.  

 

class "team" {

         match if substring (option dhcp6.interface-id, 0, 7) = "TESTING";

}

 

subnet6 3001:db8:100:f101::0/64 {

  pool6 {

    log(info, option dhcp6.interface-id);

    range6 3001:db8:100:f101::0:100 3001:db8:100:f101::0:1FF;

    allow members of "team";

  }

}

Result : same indication as earlier.

Unable to pick client address: no addresses available  - shared network 3001:db8:100:f101::/64: 0 total, 0 active,  0 abandoned

 

Test#2: DHCPv6 relay sending with option 18 interface id with “GURU;”

              

               Config file changes: relay sending with 8 ASCII character [GURU;] , as from wireshark.  

 

class "team" {

         match if substring (option dhcp6.interface-id, 0, 5) = "GURU;";

}

 

subnet6 3001:db8:100:f101::0/64 {

  pool6 {

    log(info, option dhcp6.interface-id);

    range6 3001:db8:100:f101::0:100 3001:db8:100:f101::0:1FF;

    allow members of "team";

  }

}

Result : same indication as earlier.

Unable to pick client address: no addresses available  - shared network 3001:db8:100:f101::/64: 0 total, 0 active,  0 abandoned

 

Thanks

Guru

 


On Wed, Nov 7, 2018 at 7:39 AM Christopher Barry <[hidden email]> wrote:
On Tue, 6 Nov 2018 21:32:32 +0530
PaviGuru Pavithragurumurthy <[hidden email]> wrote:

>"TESTING;";

Responding only because I see no one else has.

is that extra semicolon inside the quotes desired? I have never setup
an ipv6 dhcp server, so I'm likely no help to you, but sometimes it's
something that silly.

maybe do a substring 7 chars and match to "TESTING" to see if that
semicolon is somehow biting you?

Good Luck!

--
Regards,
Christopher
_______________________________________________
dhcp-users mailing list
[hidden email]
https://lists.isc.org/mailman/listinfo/dhcp-users


--
□■━━━━━━━━━━━━━━━━━
  藤田 善光 [hidden email]
  日本シー・エー・ディー株式会社 
  TEL:03-3565-3011
  FAX:03-3565-3611
  http://www.ncad.co.jp
 ━━━━━━━━━━━━━━━━━■□
_______________________________________________
dhcp-users mailing list
[hidden email]
https://lists.isc.org/mailman/listinfo/dhcp-users

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

DHCPv6_relay.pcap (25K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: ISC DHCP 4.4.1_CentOS7_DHCPv6_Relay_server: issue related with Class matching option along with condition.

PaviGuru Pavithragurumurthy

Hello Team,

 

Looking for the solution, Please provide a dhcpd6.conf file to make our requirement work.

 

  1. Getting Relay forward message from relay agent with “interface-id = TESTING;”
  2. Server has to allocate IP pool based on “interface-id” from Relay forward message.
  3. Below conf used, but server indicates that matching was not found.
  4. Team suggested to add option         **host-identifier v6relopt 1 dhcp6.interface-id "TESTING;"; **
  5. But I’m not able place above  format in config file. Is possible to provide config file. I have tried it, but no susses.  

 

Same issue was reported.

https://lists.isc.org/pipermail/dhcp-users/2017-June/020645.html

 

Config file:

## where we need to add host-identifier v6relopt 1 dhcp6.interface-id "TESTING;";

 

class "team" {

#         match if substring (option dhcp6.remote-id, 0, 8) = "TESTING;";

         match if substring (option dhcp6.interface-id, 0, 8) = "TESTING|";

}

 

subnet6 3001:db8:100:f101::0/64 {

  pool6 {

    allow members of "team";

    range6 3001:db8:100:f101::0:100 3001:db8:100:f101::0:1FF;

  }

}

 

Thanks

Guru


On Wed, Nov 7, 2018 at 4:12 PM PaviGuru Pavithragurumurthy <[hidden email]> wrote:

Hi,

 

Thanks for the response,

 

Yes, we need to match incoming values vs configured parameter on relay server, if both are matches allow these IP’s [ as per dhcpd6 configuration file]

 

We received message from relay agent : DHCPv6 Message type: Relay-forw (12) with Option: Interface-Id (18) [ with name “TESTING;”]

So we have configured class condition to meet these incoming requirement. i.e. matching with TESTING; [ using class option ]

 

could you share config file with v6relopt to match our need, attached pcap collected at relay server.

where we need to place this match. It helps me a lot !!!. first time looking with IPv6.

 

/etc/dhcp/dhcpd6.conf [ old configuration]

class "team" {

#         match if substring (option dhcp6.remote-id, 0, 8) = "TESTING;";

         match if substring (option dhcp6.interface-id, 0, 8) = "TESTING|";

}

 

subnet6 3001:db8:100:f101::0/64 {

  pool6 {

    allow members of "team";

    range6 3001:db8:100:f101::0:100 3001:db8:100:f101::0:1FF;

  }

}

NOTE:

Same Configuration type we used on DHCPv4 relay server and is working fine. So I used same format in DHCPv6 relay server.

[root@localhost dhcp]# cat DHCPv4_Relay_server

#

# DHCP Server Configuration file.

#   see /usr/share/doc/dhcp*/dhcpd.conf.example

#   see dhcpd.conf(5) man page

#

authoritative;

log-facility local7;

option ipaddress code 43 = ip-address;

default-lease-time 86400;

 

 

class "VLAN242" {

        match if(

        (substring (option agent.circuit-id,0,7) = "AC220m;")

);

}

 

shared-network "DHCPrelay" {

 

         subnet 10.43.45.0 netmask 255.255.255.0{

                option routers 10.43.45.1;

        }

               subnet 192.242.0.0 netmask 255.255.252.0{

                option routers 192.242.0.1;

        }

 

       pool {

                allow members of "VLAN242";

                range 192.242.0.11 192.242.3.254;

                option subnet-mask 255.255.252.0;

                option routers 192.242.0.1;

        }

}

[root@localhost dhcp]#

 

 

Thanks
Guru

On Wed, Nov 7, 2018 at 2:33 PM yoshihiko fujita <[hidden email]> wrote:

Hello,

> match if substring (option dhcp6.interface-id, 0, 5) = "GURU;";

interface id option is relay-forw message type option.
but dhcp6.interface-id represents the Relay Message options in options.

if host-identifier can use v6relopt.

sample:
host {
        host-identifier v6relopt 1 dhcp6.interface-id 01:00:00:00;
        ...

but match if syntax does not seem to support.

Good luck!

2018年11月7日(水) 12:18 [hidden email] <[hidden email]>:

Thanks for the response,

 

Could you check on config file, the configured parameter are correct and responseding text shows matching was not found. I’m bit concern on here. None of other matching not working. i have tested multiple combination of characters, but every time fail with same indication.


NOTE: We have tested DHCPv4 relay server with same relay agent with IPv4 working fine !!. with DHCPv6 has concern.


In our relay always ending with semicolon like "TESTING;", TETSING can change to any character.

 

Test#1: DHCPv6 relay sending with option 18 interface id with “TESTING;”

              

               Config file changes: relay sending with 8 ASCII character [TESTING;] , as from wireshark.  

 

class "team" {

         match if substring (option dhcp6.interface-id, 0, 7) = "TESTING";

}

 

subnet6 3001:db8:100:f101::0/64 {

  pool6 {

    log(info, option dhcp6.interface-id);

    range6 3001:db8:100:f101::0:100 3001:db8:100:f101::0:1FF;

    allow members of "team";

  }

}

Result : same indication as earlier.

Unable to pick client address: no addresses available  - shared network 3001:db8:100:f101::/64: 0 total, 0 active,  0 abandoned

 

Test#2: DHCPv6 relay sending with option 18 interface id with “GURU;”

              

               Config file changes: relay sending with 8 ASCII character [GURU;] , as from wireshark.  

 

class "team" {

         match if substring (option dhcp6.interface-id, 0, 5) = "GURU;";

}

 

subnet6 3001:db8:100:f101::0/64 {

  pool6 {

    log(info, option dhcp6.interface-id);

    range6 3001:db8:100:f101::0:100 3001:db8:100:f101::0:1FF;

    allow members of "team";

  }

}

Result : same indication as earlier.

Unable to pick client address: no addresses available  - shared network 3001:db8:100:f101::/64: 0 total, 0 active,  0 abandoned

 

Thanks

Guru

 


On Wed, Nov 7, 2018 at 7:39 AM Christopher Barry <[hidden email]> wrote:
On Tue, 6 Nov 2018 21:32:32 +0530
PaviGuru Pavithragurumurthy <[hidden email]> wrote:

>"TESTING;";

Responding only because I see no one else has.

is that extra semicolon inside the quotes desired? I have never setup
an ipv6 dhcp server, so I'm likely no help to you, but sometimes it's
something that silly.

maybe do a substring 7 chars and match to "TESTING" to see if that
semicolon is somehow biting you?

Good Luck!

--
Regards,
Christopher
_______________________________________________
dhcp-users mailing list
[hidden email]
https://lists.isc.org/mailman/listinfo/dhcp-users


--
□■━━━━━━━━━━━━━━━━━
  藤田 善光 [hidden email]
  日本シー・エー・ディー株式会社 
  TEL:03-3565-3011
  FAX:03-3565-3611
  http://www.ncad.co.jp
 ━━━━━━━━━━━━━━━━━■□
_______________________________________________
dhcp-users mailing list
[hidden email]
https://lists.isc.org/mailman/listinfo/dhcp-users

_______________________________________________
dhcp-users mailing list
[hidden email]
https://lists.isc.org/mailman/listinfo/dhcp-users
Reply | Threaded
Open this post in threaded view
|

Re: ISC DHCP 4.4.1_CentOS7_DHCPv6_Relay_server: issue related with Class matching option along with condition.

yoshihiko fujita

Hi

I think that now can be solved
match if substring(v6relay(1, option dhcp6.interface-id), 0, 8) = "TESTING|”;

Good luck!

_______________________________________________
dhcp-users mailing list
[hidden email]
https://lists.isc.org/mailman/listinfo/dhcp-users
Reply | Threaded
Open this post in threaded view
|

Re: ISC DHCP 4.4.1_CentOS7_DHCPv6_Relay_server: issue related with Class matching option along with condition.

PaviGuru Pavithragurumurthy

Hello,

 

Thanks for your valuable input. DHCPv6 Option 18 Interface-id it worked.

 

IP allocation is working if match found, else no IP allocation.

 

 

Dhcpd6.conf

class "team" {

        match if(

         (substring (v6relay(1, option dhcp6.interface-id), 0, 8) = "TESTING|")

);

}

 

subnet6 3001:db8:100:f101::0/64 {

  pool6 {

    allow members of "team";

    range6 3001:db8:100:f101::0:100 3001:db8:100:f101::0:1FF;

  }

}

 

 

root@tester:/home/tester# dhcpd -6 -cf /etc/dhcp/dhcpd6.conf -lf /var/lib/dhcp/dhcpd6.leases eth0  -d

Internet Systems Consortium DHCP Server 4.4.1

Copyright 2004-2018 Internet Systems Consortium.

All rights reserved.

For info, please visit https://www.isc.org/software/dhcp/

Config file: /etc/dhcp/dhcpd6.conf

Database file: /var/lib/dhcp/dhcpd6.leases

PID file: /var/run/dhcpd6.pid

Wrote 0 class decls to leases file.

Wrote 4 NA, 0 TA, 0 PD leases to lease file.

Bound to *:547

Listening on Socket/5/eth0/3001:db8:100:f101::/64

Sending on   Socket/5/eth0/3001:db8:100:f101::/64

Server starting service.

Relay-forward message from 3001:db8:100:f101:62a8:feff:feab:5500 port 547, link address 3001:db8:100:f101:62a8:feff:feab:5500, peer address fe80::208:2ff:fe01:1

Advertise NA: address 3001:db8:100:f101::103 to client with duid 00:01:00:01:00:00:00:00:00:08:02:01:00:01 iaid = 141616593 valid for 86400 seconds

Sending Relay-reply to 3001:db8:100:f101:62a8:feff:feab:5500 port 547

Relay-forward message from 3001:db8:100:f101:62a8:feff:feab:5500 port 547, link address 3001:db8:100:f101:62a8:feff:feab:5500, peer address fe80::208:2ff:fe01:1

Reply NA: address 3001:db8:100:f101::103 to client with duid 00:01:00:01:00:00:00:00:00:08:02:01:00:01 iaid = 141616593 valid for 86400 seconds

Reusing lease for: 3001:db8:100:f101::103, age 19572 secs < 25%, sending shortened lifetimes - preferred: 34428, valid 66828

Sending Relay-reply to 3001:db8:100:f101:62a8:feff:feab:5500 port 547

 

For Option 37 _remote ID

IP allocation is not working, I used same way of interface-id. But match got failed. I assume there is no changes on config file. It should work !!. any clue ?

Attached pcap DHCPv6_Match_remote-ID.pcap

 

Dhcpd6.conf

class "team" {

        match if(

         (substring (v6relay(1, option dhcp6.remote-id), 0, 8) = "TESTING|")

);

}

 

subnet6 3001:db8:100:f101::0/64 {

  pool6 {

    allow members of "team";

    range6 3001:db8:100:f101::0:100 3001:db8:100:f101::0:1FF;

  }

}

 

 

root@tester:/home/tester# dhcpd -6 -cf /etc/dhcp/dhcpd6.conf -lf /var/lib/dhcp/dhcpd6.leases eth0  -d

Internet Systems Consortium DHCP Server 4.4.1

Copyright 2004-2018 Internet Systems Consortium.

All rights reserved.

For info, please visit https://www.isc.org/software/dhcp/

Config file: /etc/dhcp/dhcpd6.conf

Database file: /var/lib/dhcp/dhcpd6.leases

PID file: /var/run/dhcpd6.pid

Wrote 0 class decls to leases file.

Wrote 0 NA, 0 TA, 0 PD leases to lease file.

Bound to *:547

Listening on Socket/5/eth0/3001:db8:100:f101::/64

Sending on   Socket/5/eth0/3001:db8:100:f101::/64

Server starting service.

Relay-forward message from 3001:db8:100:f101:62a8:feff:feab:5500 port 547, link address 3001:db8:100:f101:62a8:feff:feab:5500, peer address fe80::208:2ff:fe01:1

Unable to pick client address: no addresses available  - shared network 3001:db8:100:f101::/64: 0 total, 0 active,  0 abandoned

Sending Relay-reply to 3001:db8:100:f101:62a8:feff:feab:5500 port 547

Relay-forward message from 3001:db8:100:f101:62a8:feff:feab:5500 port 547, link address 3001:db8:100:f101:62a8:feff:feab:5500, peer address fe80::208:2ff:fe01:1

Unable to pick client address: no addresses available  - shared network 3001:db8:100:f101::/64: 0 total, 0 active,  0 abandoned

Sending Relay-reply to 3001:db8:100:f101:62a8:feff:feab:5500 port 547

Relay-forward message from 3001:db8:100:f101:62a8:feff:feab:5500 port 547, link address 3001:db8:100:f101:62a8:feff:feab:5500, peer address fe80::208:2ff:fe01:1

Unable to pick client address: no addresses available  - shared network 3001:db8:100:f101::/64: 0 total, 0 active,  0 abandoned

Sending Relay-reply to 3001:db8:100:f101:62a8:feff:feab:5500 port 547

Relay-forward message from 3001:db8:100:f101:62a8:feff:feab:5500 port 547, link address 3001:db8:100:f101:62a8:feff:feab:5500, peer address fe80::208:2ff:fe01:1

Unable to pick client address: no addresses available  - shared network 3001:db8:100:f101::/64: 0 total, 0 active,  0 abandoned

Sending Relay-reply to 3001:db8:100:f101:62a8:feff:feab:5500 port 547




Thanks

Guru


On Thu, Nov 8, 2018 at 6:28 PM yoshihiko fujita <[hidden email]> wrote:

Hi

I think that now can be solved
match if substring(v6relay(1, option dhcp6.interface-id), 0, 8) = "TESTING|”;

Good luck!
_______________________________________________
dhcp-users mailing list
[hidden email]
https://lists.isc.org/mailman/listinfo/dhcp-users

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

DHCPv6_Match_Interface-ID.pcap (38K) Download Attachment
DHCPv6_Match_remote-ID.pcap (66K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: ISC DHCP 4.4.1_CentOS7_DHCPv6_Relay_server: issue related with Class matching option along with condition.

PaviGuru Pavithragurumurthy

Hello,

 

DHCPv6 relay with option 37 is working after modification of matching to the location number.

just after the Value Enterprise ID  with range of 4. So extended to 4th location. it worked!!.

 

 

Remote Identifier

        Option: Remote Identifier (37)

        Length: 36

        Value: 0000303a30383a30323a...

        Enterprise ID: <<< 4 >>>

        Remote-ID: 123454755...

 

The format of the DHCPv6 Relay Agent Remote-ID option is shown below:

 

0                   1                   2                   3

        0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1

       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

       |       OPTION_REMOTE_ID        |         option-len            |

       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

       |                       enterprise-number                       |

       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

       .                                                               .

       .                           remote-id                           .

       .                                                               .

       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

 

 Config File

class "team" {

        match if(

        (substring (v6relay(1, option dhcp6.remote-id), 4, 8) = "TESTING|")

);

}

 

subnet6 3001:db8:100:f101::0/64 {

  pool6 {

    allow members of "team";

    range6 3001:db8:100:f101::0:100 3001:db8:100:f101::0:1FF;

  }

}


Thanks
Guru

On Thu, Nov 8, 2018 at 8:29 PM PaviGuru Pavithragurumurthy <[hidden email]> wrote:

Hello,

 

Thanks for your valuable input. DHCPv6 Option 18 Interface-id it worked.

 

IP allocation is working if match found, else no IP allocation.

 

 

Dhcpd6.conf

class "team" {

        match if(

         (substring (v6relay(1, option dhcp6.interface-id), 0, 8) = "TESTING|")

);

}

 

subnet6 3001:db8:100:f101::0/64 {

  pool6 {

    allow members of "team";

    range6 3001:db8:100:f101::0:100 3001:db8:100:f101::0:1FF;

  }

}

 

 

root@tester:/home/tester# dhcpd -6 -cf /etc/dhcp/dhcpd6.conf -lf /var/lib/dhcp/dhcpd6.leases eth0  -d

Internet Systems Consortium DHCP Server 4.4.1

Copyright 2004-2018 Internet Systems Consortium.

All rights reserved.

For info, please visit https://www.isc.org/software/dhcp/

Config file: /etc/dhcp/dhcpd6.conf

Database file: /var/lib/dhcp/dhcpd6.leases

PID file: /var/run/dhcpd6.pid

Wrote 0 class decls to leases file.

Wrote 4 NA, 0 TA, 0 PD leases to lease file.

Bound to *:547

Listening on Socket/5/eth0/3001:db8:100:f101::/64

Sending on   Socket/5/eth0/3001:db8:100:f101::/64

Server starting service.

Relay-forward message from 3001:db8:100:f101:62a8:feff:feab:5500 port 547, link address 3001:db8:100:f101:62a8:feff:feab:5500, peer address fe80::208:2ff:fe01:1

Advertise NA: address 3001:db8:100:f101::103 to client with duid 00:01:00:01:00:00:00:00:00:08:02:01:00:01 iaid = 141616593 valid for 86400 seconds

Sending Relay-reply to 3001:db8:100:f101:62a8:feff:feab:5500 port 547

Relay-forward message from 3001:db8:100:f101:62a8:feff:feab:5500 port 547, link address 3001:db8:100:f101:62a8:feff:feab:5500, peer address fe80::208:2ff:fe01:1

Reply NA: address 3001:db8:100:f101::103 to client with duid 00:01:00:01:00:00:00:00:00:08:02:01:00:01 iaid = 141616593 valid for 86400 seconds

Reusing lease for: 3001:db8:100:f101::103, age 19572 secs < 25%, sending shortened lifetimes - preferred: 34428, valid 66828

Sending Relay-reply to 3001:db8:100:f101:62a8:feff:feab:5500 port 547

 

For Option 37 _remote ID

IP allocation is not working, I used same way of interface-id. But match got failed. I assume there is no changes on config file. It should work !!. any clue ?

Attached pcap DHCPv6_Match_remote-ID.pcap

 

Dhcpd6.conf

class "team" {

        match if(

         (substring (v6relay(1, option dhcp6.remote-id), 0, 8) = "TESTING|")

);

}

 

subnet6 3001:db8:100:f101::0/64 {

  pool6 {

    allow members of "team";

    range6 3001:db8:100:f101::0:100 3001:db8:100:f101::0:1FF;

  }

}

 

 

root@tester:/home/tester# dhcpd -6 -cf /etc/dhcp/dhcpd6.conf -lf /var/lib/dhcp/dhcpd6.leases eth0  -d

Internet Systems Consortium DHCP Server 4.4.1

Copyright 2004-2018 Internet Systems Consortium.

All rights reserved.

For info, please visit https://www.isc.org/software/dhcp/

Config file: /etc/dhcp/dhcpd6.conf

Database file: /var/lib/dhcp/dhcpd6.leases

PID file: /var/run/dhcpd6.pid

Wrote 0 class decls to leases file.

Wrote 0 NA, 0 TA, 0 PD leases to lease file.

Bound to *:547

Listening on Socket/5/eth0/3001:db8:100:f101::/64

Sending on   Socket/5/eth0/3001:db8:100:f101::/64

Server starting service.

Relay-forward message from 3001:db8:100:f101:62a8:feff:feab:5500 port 547, link address 3001:db8:100:f101:62a8:feff:feab:5500, peer address fe80::208:2ff:fe01:1

Unable to pick client address: no addresses available  - shared network 3001:db8:100:f101::/64: 0 total, 0 active,  0 abandoned

Sending Relay-reply to 3001:db8:100:f101:62a8:feff:feab:5500 port 547

Relay-forward message from 3001:db8:100:f101:62a8:feff:feab:5500 port 547, link address 3001:db8:100:f101:62a8:feff:feab:5500, peer address fe80::208:2ff:fe01:1

Unable to pick client address: no addresses available  - shared network 3001:db8:100:f101::/64: 0 total, 0 active,  0 abandoned

Sending Relay-reply to 3001:db8:100:f101:62a8:feff:feab:5500 port 547

Relay-forward message from 3001:db8:100:f101:62a8:feff:feab:5500 port 547, link address 3001:db8:100:f101:62a8:feff:feab:5500, peer address fe80::208:2ff:fe01:1

Unable to pick client address: no addresses available  - shared network 3001:db8:100:f101::/64: 0 total, 0 active,  0 abandoned

Sending Relay-reply to 3001:db8:100:f101:62a8:feff:feab:5500 port 547

Relay-forward message from 3001:db8:100:f101:62a8:feff:feab:5500 port 547, link address 3001:db8:100:f101:62a8:feff:feab:5500, peer address fe80::208:2ff:fe01:1

Unable to pick client address: no addresses available  - shared network 3001:db8:100:f101::/64: 0 total, 0 active,  0 abandoned

Sending Relay-reply to 3001:db8:100:f101:62a8:feff:feab:5500 port 547




Thanks

Guru


On Thu, Nov 8, 2018 at 6:28 PM yoshihiko fujita <[hidden email]> wrote:

Hi

I think that now can be solved
match if substring(v6relay(1, option dhcp6.interface-id), 0, 8) = "TESTING|”;

Good luck!
_______________________________________________
dhcp-users mailing list
[hidden email]
https://lists.isc.org/mailman/listinfo/dhcp-users

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