Jump to content
roobieroo

Client can be added via direct IP but not Multicast

Recommended Posts

I have a few clients running 9.0.2.102 that seem to randomly go missing from Retrospect. The server is running 10.7.3 and Retrospect 9.0.2. I can test the address and add them using the direct IP address but multicast shows nothing. There is no firewall running on the client but it does run Parallels on occasion. Needless to say with computer that obtain an address via DHCP this is a real problem since they don't get backed up. Any tips or advice on how to get multicast working properly with my clients or do I have to statically assign all clients I want to use with Retrospect?

 

It looks like multicast is broadcasting on the loopback address but not the primary ethernet port. Does this give any clues?

 

Here's the /var/log/retroclient.log contents

 

1336662409: Client version is 9.0.2.102

1336662412: sopsFileLoad: gotBytes=1792 stateSig=53436667 firstVers=201 curVers=201

1336662412: NetStart: starting interface thread

1336662412: netCheckNewInterfaces: found new address 127.0.0.1:0

1336662412: ConnStartListen: starting thread ConnStartListen for 127.0.0.1:0

1336662417: netCheckNewInterfaces: found new address 192.168.123.103:0

1336662417: Turning client initiated discovery on

1336662417: ipludAddMembership: adding membership for 192.168.123.103

1336662417: iplud: multicast advertising on address 127.0.0.1

1336662427: IPNSRegister(0): registered: "Clerical","91c861ed1cb9d982","0.0.0.0:0"

1336662427: ConnStartListen: starting thread ConnStartListen for 192.168.123.103:0

1336662429: notifyServerList: Client discovery packet sent to 192.168.123.50

1336662430: bindToValidBootPort: gServerPID has been initialized to 54

1336662431: SopsSetCurrentIPAddress: 192.168.123.103

1336662431: --- UpdateClientStateWithMonitorEntered: clientState:10

1336662436: netCheckNewInterfaces: found new address 10.211.55.2:0

1336662436: iplud: bind() failed with error 48

1336662440: bindToValidBootPort: task_set_special_port succeeded

1336662444: IPNSRegister(0): registered: "Clerical","91c861ed1cb9d982","0.0.0.0:0"

1336662444: ConnStartListen: starting thread ConnStartListen for 10.211.55.2:0

1336662444: netCheckNewInterfaces: found new address 10.37.129.2:0

1336662444: iplud: bind() failed with error 48

1336662450: IPNSRegister(0): registered: "Clerical","91c861ed1cb9d982","0.0.0.0:0"

1336662450: ConnStartListen: starting thread ConnStartListen for 10.37.129.2:0

1336663027: notifyServerList: Client discovery packet sent to 192.168.123.50

1336671869: connTCPConnection: non-stream packet too large: 101517849

1336671869: ServicePurge: serviceID 0 not found

1336672027: notifyServerList: Client discovery packet sent to 192.168.123.50

1336672060: ServicePurge: serviceID 0 not found

1336672070: ServicePurge: serviceID 0 not found

1336672411: ServicePurge: serviceID 0 not found

1336672417: NetGetMacAddr: This system's built-in MAC address is 3c:07:54:52:86:91

1336672418: SopsSetOnDemandServer: Setting to 192.168.123.50

1336672419: SopsSetFlags: theServer.parms.clientflags = 8602

1336672627: notifyServerList: Client discovery packet sent to 192.168.123.50

Share this post


Link to post
Share on other sites

FWIW... I have never been able to find/add clients via Multicast. I have always had to add directly.

 

What do you do about laptops that use DHCP so their IP is frequently changing?

Share this post


Link to post
Share on other sites

What do you do about laptops that use DHCP so their IP is frequently changing?

If the IP is frequently changing then you have a too small range of IP addresses available. If the range allows at least one address for every possible computer then the address would rarely change. Our laptops have kept their address for years and we use DHCP.

Share this post


Link to post
Share on other sites

If the IP is frequently changing then you have a too small range of IP addresses available. If the range allows at least one address for every possible computer then the address would rarely change. Our laptops have kept their address for years and we use DHCP.

 

That is still relying on habit for that to work. Better to set up Static DHCP assignments (so they always are handed the same IP address), or to get Multicast working properly on the network (that being said, it's hard to tell if Multicast is failing due to a switch/router configuration issue, or if Retrospect is just not working properly).

Share this post


Link to post
Share on other sites

it's hard to tell if Multicast is failing due to a switch/router configuration issue, or if Retrospect is just not working properly).

It did not work in Retrospect 8.2, even for a small network of two Macs and a network printer. I don't know about Retroepct 9.
  • Like 1

Share this post


Link to post
Share on other sites

According to the team, Retrospect is asking to use UDP with Retrospect's reserved multicast address 224.1.0.38. But the OS is returning the loopback address just as you pointed out. Is there any special network or security setup on the client Mac or on your network?

 

Just taking a stab, not sure if this video about Retrospect advanced network settings would help or not:

http://www.youtube.com/watch?feature=player_embedded&v=bjAVvnuq7bM

Share this post


Link to post
Share on other sites

According to the team, Retrospect is asking to use UDP with Retrospect's reserved multicast address 224.1.0.38. But the OS is returning the loopback address just as you pointed out. Is there any special network or security setup on the client Mac or on your network?

 

Just taking a stab, not sure if this video about Retrospect advanced network settings would help or not:

http://www.youtube.com/watch?feature=player_embedded&v=bjAVvnuq7bM

 

No changes made with the advanced network settings ever made a difference. It's not clear why Retrospect sometimes would bind to the correct IP address and other times would grab the loopback but I gave up and set all the machines up with static IP addresses. Fortunately they're all desktops in the location. Hopefully this is fixed with the version 10 client since I have some larger installations that will be getting upgraded before long.

Share this post


Link to post
Share on other sites

Gee, I'm seeing about the same thing with the 6.0.x server.  Nice to see how on top of fixing things they are...  Makes me wonder why should really upgrade my server from from a G5 or not (just kidding, I know I have to eventually ... before it dies).

 

The log file (/private/var/log/rectroclient.log):

 

1388424135: Main: Client version is 6.2.234
1388424141: bindToValidBootPort: Unable to bind to valid boot port
<SNIP>
1388424159: bindToValidBootPort: Unable to bind to valid boot port
1388424160: netCheckNewInterfaces: found new address 169.254.15.221:0
1388424160: ipludAddMembership: adding membership for 169.254.15.221
1388424160: bindToValidBootPort: Unable to bind to valid boot port
<SNIP>
1388424180: bindToValidBootPort: Unable to bind to valid boot port
1388424181: netCheckNewInterfaces: found new address 192.168.1.7:0
1388424181: iplud: bind() failed with error 48
 

48 is EADDRINUSE.

 

I'm guessing, but it looks like they are messing up the parameters to the bind -- giving zero for the port number instead of the Danz port number AND not using SO_REUSEADDR.  It probably worked for a while until something else started opening UDP sockets with a port #0 and every interface IP address.  Actually, in this case, it looks like it worked when the machine first booted (presumably because it was first), but failed when DHCP finally finished and changed the IP address for the interface.

 

Oh, and as to the 9.x version, they should not be letting the OS pick the IP address for sending multi-casts:  It has no way to know what to use, the application MUST bind the IP address for the sending socket.  If the OS picks, the only time it is sure to be right is if there is only one interface (and in the cases that matter there are always at least two).  The proper way to do this is to get the list of interfaces from the system and bind to every one.  There can be more than one IP address for each interface, too -- that makes it "interesting" for sending non-multicast addresses.

Share this post


Link to post
Share on other sites

For what it's worth, I haven't had a problem with this for quite a while now. I guess it could still be happening but it hasn't been something where I've noticed clients not backing up.

Share this post


Link to post
Share on other sites

Sorry to dig up an old thread, but I'm having the same problem.  Can't add clients unless I know their IP.  Which with laptops, tends to change sometimes...

 

Any further advice on this topic?  Would love it if this worked.

 

Retrospect Multi Server 9.5.2.103

Windows Server 2012 R2

 

Thanks for any updates.

 

EDIT: Sorry, just realized this is in the Mac forum.  Thanks anyway.

Edited by backy

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×