Relay is picking itself(?) as its relay(!)

In our freshly minted “dev” instance, the relay is selecting itself as its own relay. That seems like a bad idea, yet it’s configured to select the “Main BigFix Server”. Any ideas what’s going on here? Or where to look to figure it out?

Watching the BES Client logs, it’s also trying to register with itself using the localhost IP address.

At 17:19:58 -0400 - 
   RegisterOnce: Attempting secure registration with 'https://127.0.0.1:52311/cgi-bin/bfenterprise/clientregister.exe?RequestType=RegisterMe60&ClientVersion=11.0.0.175...[snipped]
   Response:   Relay is temporarily rejecting registration requests as it updates its parent registration information.  
   RegisterOnce: Bad response format
At 17:20:01 -0400 - 
   RegisterOnce: Attempting secure registration with 'https://oit-bfrel-dap1.our.domain.here:52311/cgi-bin/bfenterprise/clientregister.exe?RequestType=RegisterMe60&ClientVersion=11.0.0.175...[snipped]
   Unrestricted mode
   Configuring listener without wake-on-lan
   Registered with url 'https://oit-bfrel-dap1.our.domain.here:52311/cgi-bin/bfenterprise/clientregister.exe?RequestType=RegisterMe60&ClientVersion=11.0.0.175...[snipped]
   Registration Server version 11.0.0.105 , Relay version 11.0.0.175
   Relay requires client authentication.
   Completed Client certificate update.
   Client has an AuthenticationCertificate
   Using localhost. Parent Relay selected: oit-bfrel-dap1.our.domain.here. at: 10.138.21.39:52311 on: IPV4 (Using setting IPV4ThenIPV6)

It all seems very weird and is not at all what we see on our production and test instances, where all of the relays point at the root server as their relay.

What is configured on the Registry (Client Settings)?

This is expected behavior - the client on a relay always reports to itself, and it’s up to the Relay component to pick a parent relay.
(well, the failure is not expected - but the client on a relay reports to itself)

Really? Because every one of 10 relays in our production instance show as selecting the root server as its relay…

image

They all also have the same “Assign Relays Manually” checked and “Main BigFix Server” selected for both Primary and Secondary, just like the dev relay pictured in the OP.

The client log on a Relay will show it choosing itself…in the Console, the definition of the “Relay” property takes into account whether or not the client itself is a relay…you can see this when you use the Tools->Manage Properties dialog in the Console

The Relay property is defined as follows - when the machine itself is a Relay, instead of reporting the ‘name of registration server’ it instead reports the Relay’s ParentRelayURL -

if ((it does not contain "127.0.0.1" and it does not contain "::1") of name of registration server) then (name of registration server) else if (exists setting "_BESRelay_PostResults_ParentRelayURL" of client and exists value of setting "_BESRelay_PostResults_ParentRelayURL" of client as string) then (preceding text of first "/" of (following text of first "//" of (value of setting "_BESRelay_PostResults_ParentRelayURL" of client))) else "BES Root Server"

(this definition is also what reflects “BES Root Server” for the root server itself)

2 Likes

In any case, to your original problem, it looks like the Relay process is not finding a parent relay, and is thus unable to service itself (or any other clients that might try to connect to it). To troubleshoot you can do a few things -

  • Check the logfile.txt in the BES Relay directory
  • Enable Debug Logging on the Relay
  • Stop the Relay service, and then restart the BESClient service. BESClient should then perform normal relay selection to choose a parent relay directly and may show useful messages in the client log. ( Once you start the Relay service, the local client will perform a new relay select and choose the localhost relay again)
1 Like

This. Is. Amazing. :open_mouth:

I spend a ridiculous amount of time in that dialog and I would have never considered looking up what “Relay” was actually showing me.

Thank you!

(I’ll take a look at the troubleshooting tomorrow…)

1 Like