Re: [Linuxptp-devel] unknown option ntpshm_segment at line 8 in eno1 section
PTP IEEE 1588 stack for Linux
Brought to you by:
rcochran
From: Jiri B. <jb...@re...> - 2015-08-10 12:35:10
|
On Tue, 4 Aug 2015 10:34:17 +0200, Miroslav Lichvar wrote: > When I run "ptp4l -6 -S -i ens5 -m", ss reports only IPv6 sockets for > ptp4l: > > # ss -lup | grep ptp4l > UNCONN 0 0 ::%ens5:ptp-event :::* users:(("ptp4l",pid=5862,fd=10)) > UNCONN 0 0 ::%ens5:ptp-general :::* users:(("ptp4l",pid=5862,fd=11)) Sadly, ss does not report whether a given socket has IPV6_V6ONLY set or not. By default (unless /proc/sys/net/ipv6/bindv6only is set), the IPv6 socket listens for both IPv6 and IPv4 connections, returning the latter as v4-mapped IPv6 address. linuxptp does not seem to set IPV6_V6ONLY, thus creating an UDP6 socket indeed prevents creating an UDP4 one on the same UDP port. Whether or not ptp4l should set IPV6_V6ONLY unconditionally needs some more thinking, but my first impression is it would need to use IPv4 multicast addresses (v4-mapped to IPv6) to send the packets to the v4 hosts and not the IPv6 multicast addresses. This doesn't seem worth the complications and IPV6_V6ONLY looks like to be appropriate here. But somebody should think it through first :-) Jiri -- Jiri Benc |