The current implementation of the NTP detector requires specify the IP address that must be used to validate the message returned by the NTP server.
This doesn't make any sense because that IP address must be taken from the class that uses the detector (which contains the information of the node that is being processed). Otherwise, when defining the detector on the foreign sources, it will work only on one specific node from the requisition even if the desired result is to discover the NTP server across several nodes from the requisition.
This information is actually inside the NtpClient class used by the NtpDetector, so the easiest way is to define a private variable of the NtpClient inside the NtpDetector and then use it on the validation procedure to verify the package returned by the server.
But, validate the IP is the only thing validated by the detector which in my opinion is not enough, we should verify that the package is a valid NTP package in order to be sure that we are talking with a real NTP server.