When your wireless interface gets stuck negotiating a DHCP handshake with your wireless router there are times when the nuclear option of the shutdown buttons for everything does not work! You will know when it happens as ifconfig (or ipconfig for windows) keeps returning the pesky 169.254.x.x address meaning that the DHCP handshake has failed.
After half a day pfaffing around with a Raspberry Pi Zero (no wired option) I found a solution: try:
sudo dhclient -r wlan0
sudo dhclient wlan0
I have no idea why this problem started other than it coincided with an update – bah!
for some unknown reason the above worked while
sudo ifdown wlan0
sudo ifup wlan0
failed???