[Kea-users] pefdhcp help

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

[Kea-users] pefdhcp help

Nicolas Javier Pantazis

First of all I would like to thank you as a citizen of the world for offering such professional open source software.

Now my issue I have 2 pc's connected with a cross cable, with connectivity between them using ipv6 both have installed kea 1.2.0 with log4cplus-2.0.0 and openssl writing the leases to a mem file. One of these pc's is designed to be the dhcp server (alias mozo 2001:db8:beef:55::2 or 10.0.0.2) and the other only uses the perfdhcp tool to stress test the dhcp server (alias geek 2001:db8:beef:55::3 or 10.0.0.3). My goal is to establish a statefull dhcpv6 environment.

I successfully completed the stress test using perfdhcp with ipv4, but for some reason when i start the ipv6 stress test i get the following result:

[root@geek njp]# /opt/kea/sbin/perfdhcp -6 -e address-only -L 546 2001:db8:beef:55::2
Running: perfdhcp -6 -e address-only -L 546 2001:db8:beef:55::2
***Rate statistics***
Rate: 0 4-way exchanges/second
***Statistics for: SOLICIT-ADVERTISE***
sent packets: 404679
received packets: 0
drops: 404679

Delay summary unavailable! No packets received.

***Statistics for: REQUEST-REPLY***
sent packets:
received packets: 0
drops: 0

Delay summary unavailable! No packets received.

Server side I ran a dhcpdump and found out that the client (geek) sent the packages and that the server (mozo) is receiving them but the dhcp server does not respond to the clients multiple solicits, example of dhcpdump server side:
19:11:48.300472 IP6 2001:db8:beef:55::3 > ff02::1:ff00:2: ICMP6, neighbor solicitation, who has 2001:db8:beef:55::2, length 32
19:11:48.300531 IP6 2001:db8:beef:55::2 > 2001:db8:beef:55::3: ICMP6, neighbor advertisement, tgt is 2001:db8:beef:55::2, length 32
19:11:48.300621 IP6 2001:db8:beef:55::3.dhcpv6-client > 2001:db8:beef:55::2.dhcpv6-server: dhcp6 solicit
19:11:48.300635 IP6 2001:db8:beef:55::3.dhcpv6-client > 2001:db8:beef:55::2.dhcpv6-server: dhcp6 solicit
19:11:48.300645 IP6 2001:db8:beef:55::3.dhcpv6-client > 2001:db8:beef:55::2.dhcpv6-server: dhcp6 solicit
The leases file is empty and the same issue occurs with isc-dhcp-server (dhcpd6). Just in case i disabled ip6tables in both machines and SELinux. Both pc's are running centos 6.9 and the server acts as a RA.

I am currently finishing college and this is a crucial part of my thesis, any help in this mater would be greatly appreciated. I can provide the config files via email if you wish.

Thank you for everything


--
Nicolas Javier Pantazis
---------- __o
-------- _`\<,_      "The bike wants to go fast!   and brakes are death!"
------- (*)/ (*)
~~~~~~~~~~~~~~~~



Virus-free. www.avast.com

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

Re: [Kea-users] pefdhcp help

Francis Dupont
Can you check solicits are sent to an address the server is listen to?
(you should have the destination address in your dump, for the server
lsof displays open file (including socket) details).
If not match, you should modify the perfdhcp argument or the Kea server
config (cf interface configuration in DHCPv4 server guide).

Regards

Francis Dupont <[hidden email]>
_______________________________________________
Kea-users mailing list
[hidden email]
https://lists.isc.org/mailman/listinfo/kea-users
Reply | Threaded
Open this post in threaded view
|

Re: [Kea-users] pefdhcp help

Nicolas Javier Pantazis
Hello Francis, good morning. Thank you for the reply, they do match here is the output of the dhcpdump:

(Consider that client is ::3 and server is ::2 )

19:11:48.300472 IP6 2001:db8:beef:55::3 > ff02::1:ff00:2: ICMP6, neighbor solicitation, who has 2001:db8:beef:55::2, length 32

19:11:48.300531 IP6 2001:db8:beef:55::2 > 2001:db8:beef:55::3: ICMP6, neighbor advertisement, tgt is 2001:db8:beef:55::2, length 32

19:11:48.300621 IP6 2001:db8:beef:55::3.dhcpv6-client > 2001:db8:beef:55::2.dhcpv6-server: dhcp6 solicit

19:11:48.300635 IP6 2001:db8:beef:55::3.dhcpv6-client > 2001:db8:beef:55::2.dhcpv6-server: dhcp6 solicit

19:11:48.300645 IP6 2001:db8:beef:55::3.dhcpv6-client > 2001:db8:beef:55::2.dhcpv6-server: dhcp6 solicit

19:11:48.300660 IP6 2001:db8:beef:55::3.dhcpv6-client > 2001:db8:beef:55::2.dhcpv6-server: dhcp6 solicit

19:11:48.300670 IP6 2001:db8:beef:55::3.dhcpv6-client > 2001:db8:beef:55::2.dhcpv6-server: dhcp6 solicit

19:11:48.300693 IP6 2001:db8:beef:55::3.dhcpv6-client > 2001:db8:beef:55::2.dhcpv6-server: dhcp6 solicit

19:11:48.300717 IP6 2001:db8:beef:55::3.dhcpv6-client > 2001:db8:beef:55::2.dhcpv6-server: dhcp6 solicit

19:11:48.300749 IP6 2001:db8:beef:55::3.dhcpv6-client > 2001:db8:beef:55::2.dhcpv6-server: dhcp6 solicit


The issue is very strange that is why I need your help. The strange thing is that perfdhcp worked perfectly for ipv4.

Thank you again



On Thu, Sep 7, 2017 at 9:13 PM, Francis Dupont <[hidden email]> wrote:
Can you check solicits are sent to an address the server is listen to?
(you should have the destination address in your dump, for the server
lsof displays open file (including socket) details).
If not match, you should modify the perfdhcp argument or the Kea server
config (cf interface configuration in DHCPv4 server guide).

Regards

Francis Dupont <[hidden email]>



--
Nicolas Javier Pantazis
---------- __o
-------- _`\<,_      "The bike wants to go fast!   and brakes are death!"
------- (*)/ (*)
~~~~~~~~~~~~~~~~



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

Re: [Kea-users] pefdhcp help

Francis Dupont
Nicolas Javier Pantazis writes:
> Hello Francis, good morning. Thank you for the reply, they do match here is
> the output of the dhcpdump:
>
> 19:11:48.300621 IP6 2001:db8:beef:55::3.dhcpv6-client >
> 2001:db8:beef:55::2.dhcpv6-server: dhcp6 solicit

=> and lsof? Kea won't listen on 2001:db8:beef:55::2 by default.

> The issue is very strange that is why I need your help. The strange thing
> is that perfdhcp worked perfectly for ipv4.

=> DHCPv4 uses (by default, you can change the service socket type)
a BPF/LPF/etc socket, DHCPv6 uses standard UDP.

Regards

Francis Dupont <[hidden email]>

> > Can you check solicits are sent to an address the server is listen to?
> > (you should have the destination address in your dump, for the server
> > lsof displays open file (including socket) details).
> > If not match, you should modify the perfdhcp argument or the Kea server
> > config (cf interface configuration in DHCPv4 server guide).

PS: you can have a kernel filter (ip6tables on Linux) which drops
incoming packets. Usually tcpdump/wireshark/etc can see them but
they are not delivered to the server.
_______________________________________________
Kea-users mailing list
[hidden email]
https://lists.isc.org/mailman/listinfo/kea-users
Reply | Threaded
Open this post in threaded view
|

Re: [Kea-users] pefdhcp help

Nicolas Javier Pantazis
Hello Francis, good morning. I have resolved the issue, scouring through the logs I found a legend that read something like "Kea dropped package because it is Unicast" so I investigated the options of perfdhcp and reformulated how I call the script.

Before: [root@geek njp]# /opt/kea/sbin/perfdhcp -6 -e address-only 2001:db8:beef:55:2
After:  [root@geek njp]# /opt/kea/sbin/perfdhcp -6 -l eth0

It works now but I still do not completely understand why the client was sending  packages on unicast to the server and not responding. 

Thank you for everything


On Fri, Sep 8, 2017 at 11:21 AM, Francis Dupont <[hidden email]> wrote:
Nicolas Javier Pantazis writes:
> Hello Francis, good morning. Thank you for the reply, they do match here is
> the output of the dhcpdump:
>
> 19:11:48.300621 IP6 2001:db8:beef:55::3.dhcpv6-client >
> 2001:db8:beef:55::2.dhcpv6-server: dhcp6 solicit

=> and lsof? Kea won't listen on 2001:db8:beef:55::2 by default.

> The issue is very strange that is why I need your help. The strange thing
> is that perfdhcp worked perfectly for ipv4.

=> DHCPv4 uses (by default, you can change the service socket type)
a BPF/LPF/etc socket, DHCPv6 uses standard UDP.

Regards

Francis Dupont <[hidden email]>

> > Can you check solicits are sent to an address the server is listen to?
> > (you should have the destination address in your dump, for the server
> > lsof displays open file (including socket) details).
> > If not match, you should modify the perfdhcp argument or the Kea server
> > config (cf interface configuration in DHCPv4 server guide).

PS: you can have a kernel filter (ip6tables on Linux) which drops
incoming packets. Usually tcpdump/wireshark/etc can see them but
they are not delivered to the server.



--
Nicolas Javier Pantazis
---------- __o
-------- _`\<,_      "The bike wants to go fast!   and brakes are death!"
------- (*)/ (*)
~~~~~~~~~~~~~~~~



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

Re: [Kea-users] pefdhcp help

Nicolas Javier Pantazis
Hello Francis, good evening. Any news on my question??
Old
issue:
  1. I suppose it sends unicast
    ​ ​
    and I know it does NOT work: [root@geek njp]# /opt/kea/sbin/perfdhcp -6 -e address-only 2001:db8:beef:55:2
  2. I suppose it sends multicast
    ​ ​
    and works:  [root@geek njp]# /opt/kea/sbin/perfdhcp -6 -l eth0

Continuing with my thesis I came across a curious
​ ​
observation. Evaluating the
​ ​
physical
​ ​
resources of the server during a stress test using perfdhcp I noticed that kea-dhcp6 does not use any memory, but a lot of processing power
​ ​
(ran pidstat server side twice)!! Can this be ?? What is the explanation for this behavior??

Thank you so much for all the help


On Mon, Sep 11, 2017 at 12:07 PM, Nicolas Javier Pantazis <[hidden email]> wrote:

>
> Hello Francis, good morning. I have resolved the issue, scouring through the logs I found a legend that read something like "Kea dropped package because it is Unicast" so I investigated the options of perfdhcp and reformulated how I call the script.
>
> Before: [root@geek njp]# /opt/kea/sbin/perfdhcp -6 -e address-only 2001:db8:beef:55:2
> After:  [root@geek njp]# /opt/kea/sbin/perfdhcp -6 -l eth0
>
> It works now but I still do not completely understand why the client was sending  packages on unicast to the server and not responding.
>
> Thank you for everything
>
>
> On Fri, Sep 8, 2017 at 11:21 AM, Francis Dupont <[hidden email]> wrote:
>>
>> Nicolas Javier Pantazis writes:
>> > Hello Francis, good morning. Thank you for the reply, they do match here is
>> > the output of the dhcpdump:
>> >
>> > 19:11:48.300621 IP6 2001:db8:beef:55::3.dhcpv6-client >
>> > 2001:db8:beef:55::2.dhcpv6-server: dhcp6 solicit
>>
>> => and lsof? Kea won't listen on 2001:db8:beef:55::2 by default.
>>
>> > The issue is very strange that is why I need your help. The strange thing
>> > is that perfdhcp worked perfectly for ipv4.
>>
>> => DHCPv4 uses (by default, you can change the service socket type)
>> a BPF/LPF/etc socket, DHCPv6 uses standard UDP.
>>
>> Regards
>>
>> Francis Dupont <[hidden email]>
>>
>> > > Can you check solicits are sent to an address the server is listen to?
>> > > (you should have the destination address in your dump, for the server
>> > > lsof displays open file (including socket) details).
>> > > If not match, you should modify the perfdhcp argument or the Kea server
>> > > config (cf interface configuration in DHCPv4 server guide).
>>
>> PS: you can have a kernel filter (ip6tables on Linux) which drops
>> incoming packets. Usually tcpdump/wireshark/etc can see them but
>> they are not delivered to the server.
>
>
>
>
> --
> Nicolas Javier Pantazis
>
> ---------- __o
> -------- _`\<,_      "The bike wants to go fast!   and brakes are death!"
> ------- (*)/ (*)
> ~~~~~~~~~~~~~~~~
>
>



--
Nicolas Javier Pantazis

---------- __o
-------- _`\<,_      "The bike wants to go fast!   and brakes are death!"
------- (*)/ (*)
~~~~~~~~~~~~~~~~


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