I double checked my iDRAC network settings, the gateway was proper (192.168.1.254). I also searched for and verified that the iDRAC can ping the gateway (racadmin ping 192.168.1.254
when I logged into the iDRAC web GUI on the intranet). I also checked the port pinhole configuration of the router, which seemed also fine. I tried to access the Web GUI remotely a few times and I verified that the router's firewall logs didn't yeet those packets and recognized as pinhole access.
Not sure what changed, but maybe my browser tries http protocol by default when it sees an IP address (I'm accessing the iDRAc remotely only with a static IP address, no DNS name), when I manually put https protocol, I got to an error message instead of a timeout:
Bad Request
Your browser sent a request that this server could not understand
Additionally, a 400 Bad Request error was encountered while trying to use an ErrorDocument to handle file request.
This was both with Firefox and Chromium based browsers. Then I search for this specific error message and in a Knowledge Base article I found a solution which helped: HTTP/HTTPS FQDN Connection Failures On iDRAC9 firmware version 5.10.00.000
Cause
The webserver in iDRAC9 firmware version 5.10.00.00 enforces an HTTP / HTTPS Host Header check by default.
Resolution
By default, iDRAC9 will check the HTTP / HTTPS Host Header and compare to the defined 'DNSRacName' and 'DNSDomainName'. When the values do not match, the iDRAC will refuse the HTTP / HTTPS connection. In iDRAC9 5.10.00.00, this Host Header enforcement can be disabled with the following RACADM command.
#Disable host header check
racadm set idrac.webserver.HostHeaderCheck 0
Now I wonder if this poses any security risk. We access the iDRAC from not fixed IPs and address it with an IP address. I can only think of a REST Client only which would inject required HTTP Headers. But at least I can access the iDRAC web GUI now.