Bug 40994 (reported at https://gitlab.torproject.org/tpo/core/tor/-/issues/40994) has become a fairly serious impediment to running relays. I generally obtain two ipv4 addresses on my machines and the ports I want to use for tor are not available on both addresses. So listening on 0.0.0.0 is not an option for me. And listening on a specific address incurs the serious problem where NoListen even when not specified seems to be assumed without recourse (see discussion at https://v236xhqtyullodhf26szyjepvkbv6iitrhjgrqj4avaoukebkk6n6syd.onion/t/rel...)
Thank-you for the private and forum replies with various suggestions. Suggesions were in two flavours: 1) Add OutboundBindAddress - no efect. I did not expect this to have an effect as it only addresses the outbound bind address. 2) Problem is with nyx pointing to https://github.com/torproject/nyx/issues/9 - I am highly skeptical. If the nyx connection list was lumping together inbound and outbound connections and simply labeling them all as outbound, it would still show the port number on my side as my ORPort and the port number on the other side as a random port. This is not the case. In my case for ALL connections my port is random and the other port is always an ORPort number.
I downloaded and installed stem, and ran the connection checking script from https://stem.torproject.org/tutorials/examples/relay_connections.html - whereas in issue #9 above there were actual incoming connections and nyx didn't report them, but the python relay connection script did. In this case, it shows only outbound connections:
# python3 ./rc.py 0.4.8.13 uptime: 34:36 flags: Fast, Running, V2Dir, Valid
+------------------------------+------+------+ | Type | IPv4 | IPv6 | +------------------------------+------+------+ | Outbound to a relay | 1807 | 0 | | Outbound uncategorized | 2588 | 1703 | +------------------------------+------+------+ | Total | 4395 | 1703 | +------------------------------+------+------+
More parsimonious explanation fitting the evidence is a bug on ORPort directive which causes it to enable NoListen.
Thank-you for all assistance. It still does not appear to be a bug in nyx, but it does appear to be a bug only in tor's reporting through its control port. As such it is, I'm sure, a low priority to fix in light of efforts to replace the c relay. I've updated the bug report.
tor-relays@lists.torproject.org