Network interface getting DHCP address while configures as static

I have a Linux server running Debian 9 with a single network interface. I have configured it to have a static ip address which worked for about a year. After a recent reboot however, it received a dhcp address instead of the static address. I can manually change it using an ifconfig command, but I cannot find how to stop this from happening at every reboot.

Server: Debian GNU/Linux 9 (stretch) 4.9.0-3-amd64 The folder /etc/NetworkManager/ is empty and the NetworkManager service isn't running.

My /etc/network/interfaces looks like this:

auto lo
iface lo inet loopback

auto enp0s31f6
iface enp0s31f6 inet static
address 10.0.0.2
netmask 255.255.255.0
gateway 10.0.0.1

dns-nameservers 10.0.0.2
dns-nameservers 10.0.0.1
dns-search bvb

Output of ifconfig:

enp0s31f6: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
    inet 10.0.0.41  netmask 255.255.255.0  broadcast 10.0.0.255
    inet6 fe80::867b:ebff:fece:2efa  prefixlen 64  scopeid 0x20<link>
    ether 84:7b:eb:ce:2e:fa  txqueuelen 1000  (Ethernet)
    RX packets 1825  bytes 380891 (371.9 KiB)
    RX errors 0  dropped 1  overruns 0  frame 0
    TX packets 1803  bytes 244044 (238.3 KiB)
    TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
    device interrupt 19  memory 0xf7000000-f7020000  

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
    inet 127.0.0.1  netmask 255.0.0.0
    inet6 ::1  prefixlen 128  scopeid 0x10<host>
    loop  txqueuelen 1  (Local Loopback)
    RX packets 1395  bytes 122094 (119.2 KiB)
    RX errors 0  dropped 0  overruns 0  frame 0
    TX packets 1395  bytes 122094 (119.2 KiB)
    TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

In the syslog I see the following messages generated during bootup:

Jun 14 14:57:18 casa named[481]: listening on IPv6 interfaces, port 53
Jun 14 14:57:18 casa ntpd[533]: Listen and drop on 0 v6wildcard [::]:123
Jun 14 14:57:18 casa ntpd[533]: Listen and drop on 1 v4wildcard 0.0.0.0:123
Jun 14 14:57:18 casa ntpd[533]: Listen normally on 2 lo 127.0.0.1:123
Jun 14 14:57:18 casa ntpd[533]: Listen normally on 3 enp0s31f6 10.0.0.41:123
Jun 14 14:57:18 casa ntpd[533]: Listen normally on 4 enp0s31f6 10.0.0.2:123
Jun 14 14:57:18 casa ntpd[533]: Listen normally on 5 lo [::1]:123
Jun 14 14:57:18 casa ntpd[533]: Listen normally on 6 enp0s31f6 [fe80::867b:ebff:fece:2efa%2]:123
Jun 14 14:57:18 casa ntpd[533]: Listening on routing socket on fd #23 for interface updates
Jun 14 14:57:18 casa named[481]: listening on IPv4 interface lo, 127.0.0.1#53
Jun 14 14:57:18 casa named[481]: listening on IPv4 interface enp0s31f6, 10.0.0.41#53
Jun 14 14:57:18 casa named[481]: listening on IPv4 interface enp0s31f6, 10.0.0.2#53
Jun 14 14:57:18 casa named[481]: generating session key for dynamic DNS

This might imply that the interface has 2 addresses or that the dhcp address is overwriting the static address at some point but I can't find out what's doing that and why.

Does anyone have an idea how to fix this?