inverse-inc / packetfence

PacketFence is a fully supported, trusted, Free and Open Source network access control (NAC) solution. Boasting an impressive feature set including a captive-portal for registration and remediation, centralized wired and wireless management, powerful BYOD management options, 802.1X support, layer-2 isolation of problematic devices; PacketFence can be used to effectively secure networks small to very large heterogeneous networks.
https://packetfence.org
GNU General Public License v2.0
1.37k stars 287 forks source link

PFQueue pfdhcplistener very high cpu usage #1064

Closed djbdjb00djb closed 8 years ago

djbdjb00djb commented 8 years ago

Two days ago I upgraded packetfence 4.7.0 to 5.5.2 Applied all the upgrade procedure steps in the packetfence upgrade guide.

  1. The CPU load is very high at 70%-100%. I ran 'top' and pfqueue was responsible for the CPUload. In the admin interface there is a menu item PFQueue. The lists one metric: pfdhcplistener, and the count column is showing values between 5K and 8K.

and the error in logs/pfqueue.log

Dec 14 12:41:25 pfqueue(22037) INFO: [mac:f4:31:c3:65:5c:74] Instantiate a new iptables modification method. pf::ipset (pf::inline::get_technique)
Dec 14 12:41:25 pfqueue(22037) ERROR: [mac:f4:31:c3:65:5c:74] Use of uninitialized value $args in anonymous hash ({}) at /usr/local/pf/lib/pf/util/webapi.pm line 29.
 (pf::util::webapi::add_mac_to_log_context)
Dec 14 12:41:25 pfqueue(22039) INFO: [mac:fc:fc:48:d6:97:c0] Instantiate a new iptables modification method. pf::ipset (pf::inline::get_technique)
Dec 14 12:41:25 pfqueue(22034) ERROR: [mac:a4:5e:60:cd:d9:43] Use of uninitialized value in string eq at /usr/local/pf/lib/pf/dhcp/processor.pm line 287.
 (pf::dhcp::processor::parse_dhcp_request)
Dec 14 12:41:25 pfqueue(22039) ERROR: [mac:cc:3d:82:1f:b7:b5] Use of uninitialized value in string eq at /usr/local/pf/lib/pf/dhcp/processor.pm line 287.
 (pf::dhcp::processor::parse_dhcp_request)
Dec 14 12:41:25 pfqueue(22040) INFO: [mac:a4:5e:60:ed:71:55] Instantiate a new iptables modification method. pf::ipset (pf::inline::get_technique)
Dec 14 12:41:25 pfqueue(22033) INFO: [mac:f4:31:c3:65:5c:74] Instantiate a new iptables modification method. pf::ipset (pf::inline::get_technique)
Dec 14 12:41:25 pfqueue(22040) ERROR: [mac:a4:5e:60:ed:71:55] Use of uninitialized value $args in anonymous hash ({}) at /usr/local/pf/lib/pf/util/webapi.pm line 29.
 (pf::util::webapi::add_mac_to_log_context)
Dec 14 12:41:25 pfqueue(22034) ERROR: [mac:cc:3d:82:1f:b7:b5] Use of uninitialized value in string eq at /usr/local/pf/lib/pf/dhcp/processor.pm line 287.
 (pf::dhcp::processor::parse_dhcp_request)
Dec 14 12:41:25 pfqueue(22036) ERROR: [mac:fc:fc:48:d6:97:c0] Use of uninitialized value in string eq at /usr/local/pf/lib/pf/dhcp/processor.pm line 287.
 (pf::dhcp::processor::parse_dhcp_request)
Dec 14 12:41:25 pfqueue(22033) ERROR: [mac:a8:66:7f:e3:48:fb] Use of uninitialized value in string eq at /usr/local/pf/lib/pf/dhcp/processor.pm line 287.
 (pf::dhcp::processor::parse_dhcp_request)
Dec 14 12:41:25 pfqueue(22039) ERROR: [mac:10:4a:7d:b2:4f:b2] Use of uninitialized value in string eq at /usr/local/pf/lib/pf/dhcp/processor.pm line 287.
 (pf::dhcp::processor::parse_dhcp_request)
Dec 14 12:41:25 pfqueue(22034) ERROR: [mac:68:94:23:f6:56:d9] Use of uninitialized value in string eq at /usr/local/pf/lib/pf/dhcp/processor.pm line 287.
 (pf::dhcp::processor::parse_dhcp_request)
Dec 14 12:41:25 pfqueue(22040) ERROR: [mac:a8:66:7f:e3:48:fb] Use of uninitialized value in string eq at /usr/local/pf/lib/pf/dhcp/processor.pm line 287.
 (pf::dhcp::processor::parse_dhcp_request)
Dec 14 12:41:25 pfqueue(22041) ERROR: [mac:78:92:9c:23:56:6c] Use of uninitialized value in string eq at /usr/local/pf/lib/pf/dhcp/processor.pm line 287.
 (pf::dhcp::processor::parse_dhcp_request)
Dec 14 12:41:25 pfqueue(22040) ERROR: [mac:60:f8:1d:ba:6f:3e] Argument "" isn't numeric in int at /usr/local/pf/lib/fingerbank/Source/TCPFingerprinting.pm line 100.
 (fingerbank::Source::TCPFingerprinting::match)
Dec 14 12:41:25 pfqueue(22036) ERROR: [mac:7c:01:91:67:6f:0c] Use of uninitialized value in string eq at /usr/local/pf/lib/pf/dhcp/processor.pm line 287.
 (pf::dhcp::processor::parse_dhcp_request)
Dec 14 12:41:25 pfqueue(22033) ERROR: [mac:60:f8:1d:ba:6f:3e] Use of uninitialized value in string eq at /usr/local/pf/lib/pf/dhcp/processor.pm line 287.
 (pf::dhcp::processor::parse_dhcp_request)
Dec 14 12:41:25 pfqueue(22040) INFO: [mac:60:f8:1d:ba:6f:3e] Instantiate a new iptables modification method. pf::ipset (pf::inline::get_technique)
Dec 14 12:41:25 pfqueue(22040) ERROR: [mac:60:f8:1d:ba:6f:3e] Use of uninitialized value $args in anonymous hash ({}) at /usr/local/pf/lib/pf/util/webapi.pm line 29.
 (pf::util::webapi::add_mac_to_log_context)
Dec 14 12:41:25 pfqueue(22040) INFO: [mac:60:f8:1d:ba:6f:3e] stated changed, adapting firewall rules for proper enforcement (pf::inline::performInlineEnforcement)
Dec 14 12:41:26 pfqueue(22034) ERROR: [mac:10:4a:7d:95:9c:3c] Use of uninitialized value in string eq at /usr/local/pf/lib/pf/dhcp/processor.pm line 287.
 (pf::dhcp::processor::parse_dhcp_request)
Dec 14 12:41:26 pfqueue(22041) ERROR: [mac:10:4a:7d:51:78:9a] Use of uninitialized value in string eq at /usr/local/pf/lib/pf/dhcp/processor.pm line 287.
 (pf::dhcp::processor::parse_dhcp_request)
julsemaan commented 8 years ago

re-open if still relevant on the latest version