Hey there 
1 + 2: Both are replaced before the first boot. So I write the Sdcard with etcher, re-insert it into the PC and replace the files before ever booting up the device with this card.
-
Just tested it with the latest RPi 4 64 Development Image. Yes, its the same as reported below on point 4. Makes no difference if using a production image and changing the config files before boot - or using a development image without changing anything.
-
Yes, a push does not work:
PS > balena push 192.168.4.5
Timeout submitting analytics event to balenaCloud/openBalena.
If you are using the balena CLI in an air-gapped environment with a filtered
internet connection, set the BALENARC_OFFLINE_MODE=1 environment variable
when using CLI commands that do not strictly require access to balenaCloud.
Retrying "Supervisor API (GET http://192.168.4.5:48484/ping)" after 2.0s (1 of 5) due to: Error: connect ETIMEDOUT 192.168.4.5:48484
Retrying "Supervisor API (GET http://192.168.4.5:48484/ping)" after 4.0s (2 of 5) due to: Error: connect ETIMEDOUT 192.168.4.5:48484
Retrying "Supervisor API (GET http://192.168.4.5:48484/ping)" after 4.0s (3 of 5) due to: Error: connect ETIMEDOUT 192.168.4.5:48484
Retrying "Supervisor API (GET http://192.168.4.5:48484/ping)" after 4.0s (4 of 5) due to: Error: connect ETIMEDOUT 192.168.4.5:48484
Retrying "Supervisor API (GET http://192.168.4.5:48484/ping)" after 4.0s (5 of 5) due to: Error: connect ETIMEDOUT 192.168.4.5:48484
Could not communicate with device supervisor at address 192.168.4.5:48484.
Device may not have local mode enabled. Check with:
balena device local-mode <device-uuid>
lsof:
root@loragw:~# lsof -iTCP -sTCP:LISTEN
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
systemd 1 root 70u IPv6 14664 0t0 TCP *:22222 (LISTEN)
balenad 1745 root 10u IPv6 14041 0t0 TCP *:2375 (LISTEN)
dnsmasq 2021 nobody 5u IPv4 16412 0t0 TCP loragw:domain (LISTEN)
dnsmasq 2021 nobody 7u IPv4 16414 0t0 TCP loragw:domain (LISTEN)
node 2368 root 21u IPv6 17794 0t0 TCP *:48484 (LISTEN)
As you can see, the process shows it is only listening via IPv6. I tried to curl 48484/ping via IPv6, however I get connection denied or timedout, as if the port is firewalled. Same with IPv4.
C:\Users\Nico Maas>curl -g -6 "http://[ipv6address]:48484/ping"
curl: (28) Failed to connect to ipv6address port 48484 after 21043 ms: Timed out
after a reboot, it still shows IPv6 useage…
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
systemd 1 root 70u IPv6 14800 0t0 TCP *:22222 (LISTEN)
balenad 1648 root 10u IPv6 16035 0t0 TCP *:2375 (LISTEN)
dnsmasq 1878 nobody 5u IPv4 12254 0t0 TCP loragw:domain (LISTEN)
dnsmasq 1878 nobody 7u IPv4 12256 0t0 TCP loragw:domain (LISTEN)
node 2310 root 21u IPv6 19792 0t0 TCP *:48484 (LISTEN)
however, this time it works
C:\Users\Nico Maas>curl -g -6 "http://[ipv6address]:48484/ping"
OK
C:\Users\Nico Maas>curl -g -4 "http://192.168.4.5:48484/ping"
OK
Also a reminder: I got a dual stack network, both going to WAN as well as in my LAN. So balenaOS gets both a IPv4 as well as an IPv6 address, however I tend to use the IPv4 only for deployment. In other locations I only got IPv4 (but the same issues).
Basically: Flash the RPi, boot it and reboot to make it work (or just pull the power after a first boot and repower)