Amritpal Bains
2017-06-22 20:59:04 UTC
Hi all,
We had issue where multiple devices running ptp4l were not synchronizing
their clocks (in fact they were not talking to each other at all).
The problem did NOT occur when the IP addresses were static or we were
using a dhcp server. It only occurred when we were connected using ZeroConf.
The exact command that we were running on each device was "ptp4l -i eth0 -f
/etc/ptp.conf"
We had a look at the ptp packets through wireshark and noticed that the
source ip address was for the wrong interface (eth1).
The code change in the attached patch file resolved the problem. We simply
declare the ip-address in the imr_address structure since the ip(7) manpage
says leaving it as 0.0.0.0leaves the system to determine the appropriate
interface.
Can you tell us whether our solution is correct, and whether it is a
problem in the code?
Thanks,
Amrit
We had issue where multiple devices running ptp4l were not synchronizing
their clocks (in fact they were not talking to each other at all).
The problem did NOT occur when the IP addresses were static or we were
using a dhcp server. It only occurred when we were connected using ZeroConf.
The exact command that we were running on each device was "ptp4l -i eth0 -f
/etc/ptp.conf"
We had a look at the ptp packets through wireshark and noticed that the
source ip address was for the wrong interface (eth1).
The code change in the attached patch file resolved the problem. We simply
declare the ip-address in the imr_address structure since the ip(7) manpage
says leaving it as 0.0.0.0leaves the system to determine the appropriate
interface.
Can you tell us whether our solution is correct, and whether it is a
problem in the code?
Thanks,
Amrit