Question Unusual network behavior on Pi Zero W running Raspbian Buster 2020-02-27 release

Sep 13, 2020
2
0
10
Not sure if this is a hardware or software (OS) issue, but here goes...

I brought up a Pi Zero W last month running the then-current Raspberry Pi OS (Raspbian Buster) 20-02-27 release. It has updated itself to linux kernel 5.4.51+. This headless system is running 5 servers (of note): an RDP server (Xrdp), a VNC server (vnc), a DNS server (dnsmasq); an NTP server (ntpd), and a fifth specialty Python 3 server that accepts and responds to HTTP requests. The OS has been configured with a static IP, and static Gateway and DNS IPs. All is well and good with that configuration and the servers work fine and do their respective jobs...

That is... up to a point. As the system runs for hours, and then for days, what happens is that various client devices on my network attempting to access these servers find themselves unable to access the static IP of my Pi Zero W system. It is as if the IP is simply unaccessible (as if blocked by a firewall). The access seems to be lost to the various client devices in a pretty much random fashion over the period of a day or two until none of them can access my system. Once the Pi Zero W's IP becomes unaccessible to a given device, it stays that way...

UNTIL... I execute any sort of command such as ping or rsh that attempts an outgoing connection from the Pi Zero W system to the external device. Then, suddenly the device can again see the Pi Zero W's IP and can access the servers...

That is... for a while; then after hours to days, the ability for that device to connect breaks again. This is very frustrating.

My current workaround is to run a background shell script (on the Pi Zero W) that does a single ping (or for those devices that don't respond to ping, a single denied ssh) to each device once a minute. That mostly solves the problem, but because one of the client devices is an iPad and its WiFi shuts down when the cover is closed, I have to wait up to a minute after opening the cover (if it's been closed for a day or two) to regain access.

I will note that I also have an 2.5 year old Pi 3 Model B running the Raspbian OS from its day and running the same server configuration and external devices on my network NEVER lose the ability to communicate with it. However, the problem is not with the Pi Zero W hardware (I tried swapping in a new Pi Zero W), but rather with this version of Raspbian (and possibly its interaction with the Pi Zero W's WiFi chip). I am not aware of any firewall running in the OS (but there could be - that's why I'm asking).

So my question is: Given all of the above, can anyone help me find out how to stop this from happening other than my band-aid shell script solution? I'd settle for just an explanation of this unusual behavior even if it can't be fixed.
 
We were having similar issues a while back, and I found this discussion at that time. You might be hitting an edge case of this discussion?

https://www.raspberrypi.org/forums/viewtopic.php?t=237842

I think this went away as a problem as USB is always active in our embedded pi's, given we are using the geekworm x825 sata daughterboard, which is USB attached to the pi 4b motherboard... I'll check with a team mate of mine to see if there was something else he did to mitigate what we were seeing as well.
 
Nope, it's not WiFi power management. It was on but when I turned it off, that had no effect on the problem. Besides, notice that WiFi powering down could only make the Pi Zero W become inaccessible from all IPs or accessible from all IPs, while this problem is device specific (it doesn't matter what IP the device has - I can even change the IP and that does not fix things - so it must be blocking based on MAC address. And pinging one device to get it going again has no effect on other devices that are blocked; each must be pinged individually to give it access again.

If it's of any consequence, I might add that the Pi Zero W and the WiFi access point to which it's connected are only a foot apart. All of the client devices are further away from the access point but nonetheless have solid connections to WiFi for accessing other than this server.