ntpがv6でしか同期できない

出張で中国へ行った際に、韓国と中国から自分のサーバにアクセスし、
掲示板に投稿しておいた。

後でそのログを見てみると、アクセスしたのと明らかに違う時刻が記録されていた。

あ、UTCなのか、と思いかけたがそんなはずはない。

試しに今投稿してみると、やっぱり時刻がずれている。

そして、そのズレはJSTになっていないとかではなく、単純に時刻があっていない。

ntpq -p

     remote           refid      st t when poll reach   delay   offset  jitter
==============================================================================
 ntp1.sakura.ad. .INIT.          16 u    -   64    0    0.000    0.000   0.000
 ntp1.jst.mfeed. .INIT.          16 u    -   64    0    0.000    0.000   0.000
 ntp2.jst.mfeed. .INIT.          16 u    -   64    0    0.000    0.000   0.000
 ntp3.jst.mfeed. .INIT.          16 u    -   64    0    0.000    0.000   0.000


同期できていない。

きっとよくある設定ミスだろうと検索してみるが特に間違いはなさそう。

何度か設定を変えてサービスを再起動するが、上記の表示が変わらない。

いったんサービスを止めて、

 ntpdate ntp.nict.jp
12 Nov 01:58:16 ntpdate[11677]: adjust time server 2001:df0:232:eea0::fff4 offset -0.000117 sec

で、同期された。

v6で同期している?

ntp.confの設定では -4 をつけているのだが...

ntpdate -d -4 ntp.nict.jp

でv4を強制すると、

ntpdate[11874]: no server suitable for synchronization found


...ええい、逆にv6を明示的に指定してやれ

(/etc/ntp.conf)
server -6 ntp1.sakura.ad.jp iburst


#ntpq -p
     remote           refid      st t when poll reach   delay   offset  jitter
==============================================================================
*2001:e42:0:1:21 10.84.87.146     2 u   53   64    7    0.510   -0.206   0.046
 ntp1.jst.mfeed. .INIT.          16 u    -   64    0    0.000    0.000   0.000
 ntp2.jst.mfeed. .INIT.          16 u    -   64    0    0.000    0.000   0.000
 ntp3.jst.mfeed. .INIT.          16 u    -   64    0    0.000    0.000   0.000


v6でしか同期できない、という状況である。