web-dev-qa-db-ja.com

dhcpを通じて提供されたntp情報を使用するようにLinuxクライアントをどのように設定しますか?

dhcpクライアントへのntp提案の提供に関連してdhcpdサーバーをセットアップする方法を説明するチュートリアルは非常に多く、私は常にntp構成が自動的に実行されると思っていました。最近、ローカルネットワークでクロックドリフトが発生し始めたので、これは間違った仮定であったと思います。したがって、dhcpdを介してntp-serverの提案を設定するための取り組みを実行した場合、ntpクライアント構成を最小化する方法を確認することにしました。

私は、このUbuntu固有のヘルプチュートリアル https://help.ubuntu.com/community/UbuntuTime 以外はあまり見つけることができませんでした。ここでも(「トラブルシューティング->使用している構成ファイル」の段落を参照)情報は不足していますが、/etc/ntp.conf.dhcpファイルが見つかった場合は、そのファイルが代わりに使用されると記載されています。まず最初に、ライターがここで意味する実際の場所は/var/lib/ntp/ntp.conf.dhcpであり、/etc/init.d/ntpで観察されますが、このファイルの存在は、ntpがdhclientからサーバーを要求することを保証しません。その結果、ローカルのntpサーバーのntp.conf.dhcpserver句を明示的に追加する必要があります。しかし、その場合、なぜdhcpdサーバーでntp設定をセットアップするのですか?

これは直感に反するようです。つまり、NTP設定を一度(つまりサーバー上で)セットアップし、dhcpdサーバーに情報をクライアントに委任させます。どうすればntpのクライアント構成を最小限に抑えることができます(完全に回避しない場合)。または、ntpを介してdhclientの情報を取得するにはどうすればよいですか。

すべてのLinuxディストリビューションに適合するCLIソリューションはありますか?

すべてのクライアントがntpdの実行可能ファイルを持っている必要があると思いますが、そこから先に進む方法がわかりません。

ありがとうございました

編集:手動で実行したときのubuntuクライアントの詳細出力dhclient

Sudo dhclient -1 -d -pf /run/dhclient.eth0.pid -lf /var/lib/dhcp/dhclient.eth0.leases eth0
Internet Systems Consortium DHCP Client 4.2.4
Copyright 2004-2012 Internet Systems Consortium.
All rights reserved.
For info, please visit https://www.isc.org/software/dhcp/

Listening on LPF/eth0/20:cf:30:0e:6c:12
Sending on   LPF/eth0/20:cf:30:0e:6c:12
Sending on   Socket/fallback
DHCPREQUEST of 192.168.112.150 on eth0 to 255.255.255.255 port 67 (xid=0x2e844b8f)
DHCPACK of 192.168.112.150 from 192.168.112.112
reload: Unknown instance: 
invoke-rc.d: initscript smbd, action "reload" failed.
RTNETLINK answers: File exists
 * Stopping NTP server ntpd
   ...done.
 * Starting NTP server ntpd
   ...done.
bound to 192.168.112.150 -- renewal in 41963 seconds.

Ntpdサービスが再起動されましたが、その後ntpq -cpe -casを実行していますが、ntpサーバーのリストにローカルのntpサーバーが表示されません。

もちろん、dhcpdサーバーにはoption ntp-serversがあります

subnet 192.168.112.0 netmask 255.255.255.0 {
        max-lease-time 604800;
        default-lease-time 86400;
        authoritative;
        ignore client-updates;

        option ntp-servers 192.168.112.112; #self

        ... (many other options)
}
19
nass

使用しているdhcpサーバーがntp-serversオプションを提供するように構成されている場合は、ntp-serversdhclient.confのデフォルトの要求行に追加することにより、dhclientがntp-serversを要求するように構成できます。 Ubuntu Linuxからのこの例の最後に(19.04現在、ただし12.04以降に存在):

request subnet-mask, broadcast-address, time-offset, routers,
        domain-name, domain-name-servers, domain-search, Host-name,
        dhcp6.name-servers, dhcp6.domain-search, dhcp6.fqdn, dhcp6.sntp-servers,
        netbios-name-servers, netbios-scope, interface-mtu,
        rfc3442-classless-static-routes, ntp-servers;

/etc/ntp.confおよびDHCPからの情報を使用して/etc/ntp.conf.dhcpが作成されます。

Ntpdが存在する場合は、/ etc/ntp.conf.dhcpを使用するように指示する必要があります。私が使用しているUbuntuのバージョンでは、これは/etc/dhcp/dhclient-exit-hooks.d/ntpを介して行われます。 <-これは、存在する場合は/etc/ntp.conf.dhcpを使用し、存在しない場合は/etc/ntp.confを使用するようにNTPdに指示するファイルです。

11
Tim Kennedy
0
Abdullah