Řešení 1:
Není vůbec promiskuitní. Je to jen vazba na IP adresy rozhraní a localhost, a to jak na protokolech ipv4, tak ipv6. Pokud si myslíte, že by nemělo poslouchat některé z nich, stačí změnit listen
config, jak je vysvětleno v příručce (může být pro jinou verzi, kterou používáte):
listen on address
Specify a local IP address or a hostname the ntpd(8) daemon
should listen on. If it appears multiple times, ntpd(8) will
listen on each given address. If the exact string '*' is given as
an address, ntpd(8) will listen on all local addresses. Other-
wise, address can be followed by an asterisk ('*') and a UDP port
number to listen on instead of the default 123. ntpd(8) does not
listen on any address by default. For example:
listen on *
listen on 127.0.0.1
listen on ::1
V některých jiných verzích budete muset změnit možnosti na ntpd
samotného démona změnit na jaké protokoly/rozhraní naslouchat (možnosti jako -4
, -6
, -I
)
Řešení 2:
Z mého čtení této stránky se zdá, že ntp nepoužívá INADDR_ANY 0.0.0.0
adresu výhradně částečně z bezpečnostních důvodů a částečně z důvodů autentizace.
První port 123 je nižší než 1024, a proto je považován za privilegovaný port a na tento port se může vázat pouze uživatel root. Ntp je obvykle nastaven tak, aby po spuštění zrušil oprávnění. Z toho, co jsem pochopil z mail listů, a článek po zrušení oprávnění nemůže otevřít soket pro odpověď ze správného zdrojového portu 123, takže ntp otevře sokety pro každou přiřazenou adresu, než zruší oprávnění.
Z toho, co jsem četl, některé autentizační mechanismy pro ntp v podstatě vyžadují, aby zdrojový a cílový port byl 123 a nic jiného.
Věc není úplně jasná. Viz část o zástupné adrese 0.0.0.0
, je z nějakého důvodu otevřen ntpd, ale z komentářů by se ve skutečnosti nemělo nikdy použít, s výjimkou některých speciálních vzácných případů, kterými si vývojáři nejsou zcela jisti, ale nechtějí soket odstranit, jen pro případ, že by věci rozbili.
Všimněte si, že za normálních okolností by ntpd neměl přijímat pakety na zástupných adresách, protože pokud tak učiníte, existuje řada problémů, včetně odesílání zpětných paketů na jinou adresu, než je adresa požadovaná odesílatelem.DannyMayer - 27. dubna 2009
Myslím, že hlavní odpověď na vaši otázku je ve výše uvedeném komentáři zde.