So basically the the DietPi Pi-hole system looses its connectivity permanently when the internet drops, which then expectedly practically breaks internet access for all other devices which use Pi-hole for DNS, right? E.g. Windows uses a Microsoft/Windows hostname for its internet check which shows this yellow warning symbol in return, so it implies that DNS needs to function.
It is strange, all Ethernet connections/adapters I ever watched/tested in this regards, do automatically re-gain connectivity, when a cable gets disconnected and reconnected, or the router looses and regains internet connectivity. This is the case as the network interface does not get de-configured but keeps (static) IP, routes etc assigned, but only the carrier signal gets lost with the unplugged cable and is regained with the cable back, while everything else remains. If only the router looses internet connectivity, while the internal network/adapter connection remains, it is even stranger, as connected Linux systems won't even recognise at all that it was lost, unless one of the rare cases happens that an outgoing connection attempt is done (but there is no central connection flag or so).
In case of an unplugged cable, it is all different, if the IP is not static but gained via DHCP or IPv6 RA, as in this case it could time out during the missing connection and then either the next DHCP lease attempt or RA needs to re-set IP and routes. But again, when only the router looses connectivity, it shouldn't stop answering DHCP requests and/or sending RAs.
Do you have a change to attach a screen and keyboard to that Pi, in case of such an even, to check system and kernel logs? Else you may enable permanent system logs to check then after the hard reset/reboot:
dietpi-software uninstall 103
reboot
# after reboot
mkir /var/log/journal
Then you can check via journalctl
what was going on.
To revert, accordingly:
rm -R /var/log/journal
dietpi-software install 103
systemd-journald
writes system logs automatically to /var/log/journal
(assumed to be permanent), if that directory exists, else it uses /run/log/journal
for volatile system logs. So that is a light way to enable permanent system logs without the need to extra plain text files via rsyslog
.