Bind9 friert sporadisch rechner, 100% CPU

Einrichten des lokalen Netzes, Verbindung zu anderen Computern und Diensten.
Antworten
mauric

Bind9 friert sporadisch rechner, 100% CPU

Beitrag von mauric » 05.06.2019 16:52:35

Hallo Debianer

Komme mit einem anliegen ins Forum... und möchte dies gleich ansprechen.
Habe hier auf meinem ESXi eine Virtuelle Machine am laufen, mit einer wichtigen DNS-Server funktion.

VM_Rechner
2 CPU
10 Gb Memory
50 GB DiskSpace

Vmware-Tools sind installiert

Die VM war kürzlich ein Stretch... nun upgraded auf Buster 10.
>PRETTY_NAME="Debian GNU/Linux 10 (buster)"
>Linux srvcar012 4.19.0-5-amd64 #1 SMP Debian 4.19.37-3 (2019-05-15) x86_64 GNU/Linux

Mein Problem... der BIND9 Server aus dem Repository "BIND 9.11.5-P4-5-Debian (Extended Support Version) <id:998753c>"
Friert komplett meine Machine ein, als fix :-) Machine komplett Ausschalten/Einschalten.

Die Funktion DNS würde reibungslos funktionieren.... bitte kennt jemand dieses Problem.
Der Server lauft dann wieder eine Zeit.... ja, bis zum nächsten Crash .... Dieser lauft in Produktion!

Heute Morgen, Crash:
Ab 08:18:44 Uhr > CPU 100%

Jun 5 08:17:42 server012 named[2255]: resolver priming query complete
Jun 5 08:18:00 server012 named[2255]: client @0x7f6b5457d820 192.168.201.184#56483: update 'company.local/IN' denied
Jun 5 08:18:05 server012 named[2255]: resolver priming query complete
Jun 5 08:18:09 server012 named[2255]: resolver priming query complete
Jun 5 08:18:10 server012 named[2255]: resolver priming query complete
Jun 5 08:18:11 server012 named[2255]: resolver priming query complete
Jun 5 08:18:17 server012 named[2255]: resolver priming query complete
Jun 5 08:18:19 server012 named[2255]: resolver priming query complete
Jun 5 08:18:34 server012 named[2255]: resolver priming query complete
Jun 5 08:18:41 server012 named[2255]: resolver priming query complete
Jun 5 08:18:44 server012 named[2255]: resolver priming query complete
^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@Jun 5 09:23:29 server012 systemd-modules-load[354]: Inserted module 'lp'
Jun 5 09:23:29 server012 systemd-modules-load[354]: Inserted module 'ppdev'
Jun 5 09:23:29 server012 systemd-modules-load[354]: Inserted module 'parport_pc'
Jun 5 09:23:29 server012 systemd[1]: Starting Flush Journal to Persistent Storage...
Jun 5 09:23:29 server012 apparmor.systemd[381]: Restarting AppArmor
Jun 5 09:23:29 server012 apparmor.systemd[381]: Reloading AppArmor profiles
Jun 5 09:23:29 server012 systemd[1]: Started Load AppArmor profiles.
Jun 5 09:23:29 server012 systemd[1]: Starting Raise network interfaces...
Jun 5 09:23:29 server012 systemd[1]: Started Flush Journal to Persistent Storage.
Jun 5 09:23:29 server012 systemd[1]: Starting Create Volatile Files and Directories...
Jun 5 09:23:29 server012 systemd[1]: Started Create Volatile Files and Directories.
Jun 5 09:23:29 server012 systemd[1]: Started Authentication service for virtual machines hosted on VMware.
Jun 5 09:23:29 server012 systemd[1]: Starting Network Time Synchronization...
Jun 5 09:23:29 server012 systemd[1]: Started Service for virtual machines hosted on VMware.

--

named.conf.options
# cat /etc/bind/named.conf.options
options {
directory "/var/cache/bind";
managed-keys-directory "/var/cache/bind/dynamic";

// If there is a firewall between you and nameservers you want
// to talk to, you may need to fix the firewall to allow multiple
// ports to talk. See http://www.kb.cert.org/vuls/id/800113

// If your ISP provided one or more IP addresses for stable
// nameservers, you probably want to use them as forwarders.
// Uncomment the following block, and insert the addresses replacing
// the all-0's placeholder.

forwarders {
8.8.8.8;
};

//========================================================================
// If BIND logs error messages about the root key being expired,
// you will need to update your keys. See https://www.isc.org/bind-keys
//========================================================================
interface-interval 0;
cleaning-interval 720;

dnssec-enable yes;
dnssec-validation no;

max-cache-size 5000M;
recursion yes;

auth-nxdomain no;

listen-on-v6 { none; };
listen-on port 53 { any; };

allow-query { 192.168.201.0/24; 192.168.202.0/24; };
allow-transfer { 192.168.201.115; };
};
acl "acl_trusted_transfer" {
192.168.201.0/24;
192.168.202.0/24;

};
acl "acl_trusted_clients" {
// localhost (RFC 3330) - Loopback-Device addresses
127.0.0.0/8; // 127.0.0.0 - 127.255.255.255
192.168.201.0/24;
192.168.202.0/24;

// Private Network (RFC 1918) - LAN, WLAN etc.
192.168.201.0/24; // 192.168.2.0 - 192.168.2.255
192.168.202.0/24; // 192.168.2.0 - 192.168.2.255

// Private Network (RFC 1918) - VPN etc.
10.0.0.0/8; // 10.0.0.0 - 10.255.255.255
};

Danke
Mauri/

mauric

Re: Bind9 friert sporadisch rechner, 100% CPU

Beitrag von mauric » 07.06.2019 20:03:00

Hallo Zusammen

Habe nun zu meinen Zonen "allow_querry" eingefügt und habe seit 2 Tage keine Unterbrüche mehr.
--> Diese wurden aber schon im Named.conf.options defininiert!

--

Habe hier 3 Zonen am rennen :-)

Code: Alles auswählen

zone "MeinDomainname.local" {
        type master;
        file "/etc/bind/db.MeinDomainname.local";
};

// 192.169.239.
zone "239.169.192.in-addr.arpa" {
        type master;
        file "/etc/bind/db.reverse.MeinDomainname.local";
        allow-query { 192.169.239.0/23; 192.169.239.0/23; };
        allow-update { 192.168.239.0/23; };
};

Zone "lalalalala.local" {
usw.

Auch die Loggfiles füllen sich nun:

Code: Alles auswählen

# logging file
#
 logging {
     channel querylog{
             file "/var/cache/bind/Named-querylog";
             severity debug 10;
             print-category yes;
             print-time yes;
             print-severity yes;
             };
     category queries { querylog;};
 };

Antworten