rsync protocol incompatibility

Solution 1:

The FreeBSD box has a six-year-old version of rsync which uses an older protocol version. You can force the new version of rsync to use the old protocol by adding --protocol=29 to your rsync command.

Solution 2:

Interestingly, putting an intermediary machine between origin and destination machine achieves the desired result:

ie.

machine 1 (origin) >> machine 2 (intermediary) >> machine 3 (destination)

machine 1: rsync  version 2.6.8  protocol version 29
machine 2: rsync  version 3.0.3  protocol version 30
machine 3: rsync  version 3.0.7  protocol version 30