TL;DR Windows používá defaultně pro synchronizaci času přes NTP zdrojový port 123, což mnoho ISP blokuje (viz dále).
Ahoj,
před asi 2 lety jsem si všiml, že na všech Win počítačích doma se dost podstatně rozjíždí čas. Zkusil jsem tedy ručně synchronizovat a cca po 1 minutě čekání jsem se dočkal pouze obecné chybové hlášky, že se to nepovedlo. První přišla na přetřes defaultní služba Windows Time, u které jsem si myslel, že se nespouští správně. Pak jsem zjišťoval dostupnost default serveru time.windows.net (bez problému), pak jsem zkoušel i jiné servery. Nakonec jsem to vyřešil instalací historické (a možná už děravé jak řešeto) appky NetTime z dob WinXP. Ta problém do jisté míry na všech pc vyřešila.
Nicméně nedávno jsem se k tomu vrátil, vrtalo mi to pořád hlavou. Nastavil jsem zkusmo na MikroTiku (moje brána do Internetu) zapnout log paketů směřujících z iface LAN do ether1 po ANY portu 123 a ejhle! při ručním pokusu o sync přímo ve Win se cca co 15 sekund zkoušel prodrat paket se src portem 123 a cílovým (to je již správně) též 123.
Na paket z venku nepřišla odpověď (ze serveru time.windows.com), a tak jsem přemýšlel: u běžných zákazníků většinou bývá outbound komunikace se src portem 123 zablokovaná od ISP kvůli eliminaci jedné techniky z rodiny DDOS Amplification, která zneužívá toho, pokud někomu doma běží otevřený NTP server bez jakéhokoli zabezpečení. Tohle chování ISPíků do jisté míry chápu. Co ale ani trochu nechápu, je, proč mají Windows potřebu pro komunikaci klient -> server používat port 123, když ten se podle standardů má používat u symetrické komunikace a pro výše zmíněný model se má použít náhodný src port?
Řešíte někdo něco podobného? Mluvil jsem o tom s jedním známým, co spravuje poměrně dost pc okolo sebe, a ten se tváří, že na problém nenarazil (měl by mít stejného poskytovatele).
Lukyn