dhcpを通じて提供されるntp情報を使用するようにLinuxクライアントを設定するにはどうすればよいですか?


18

dhcpddhcpクライアントへのntp提案の提供に関連して、サーバーのセットアップ方法を説明するチュートリアルが非常に多くあり、ntp構成は自動的に実行されると常に考えていました。最近、ローカルネットワークでクロックドリフトが見られるようになったので、これは間違った仮定であると思います。そこで、ntp-serverを介して提案をセットアップする努力を行った場合、ntpクライアント構成を最小化する方法を確認するために着手しましたdhcpd

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

1
私のDHCPDサーバでは、私はクライアントにで使用するNTPサーバ渡すoption ntp-servers x.x.x.x
ルイFリベイロ

@RuiFRibeiroこんにちは、はい、このオプションは確かに私のdhcpdサーバーの一部です。
ナス16

2
serverfault.com/questions/329596/…は、いくつかの手がかりを与えるかもしれません。おそらく/etc/dhcp/dhclient-exit-hooks.d/ntpを見て、使用されている実際のファイル名を見つけたいでしょう。dhclient.confファイルがntp-serversも要求するように設定されていることを確認してください。
イカール16

クライアントとしてUbuntuを使用していますか?どのバージョンですか?
ロアイマ

@roaimaクライアントはUbuntuかもしれませんが、より一般的なソリューションが役立ちます。それが物事を簡単にするなら、ubuntu 14.04 LTSがこの場合のクライアントであるとしましょう。
ナス

回答:


10

使用しているdhcpサーバーがntp-serversオプションを提供するように構成されている場合、Ubuntu Linuxのこの例の最後に示すようntp-serversdhclient.conf、デフォルトの要求行に追加することにより、dhclientを要求するようにdhclientを構成できます(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ます。<-これは、NTPdに/etc/ntp.conf.dhcp、存在する場合は使用し、存在/etc/ntp.confしない場合は使用するように指示するファイルです。


2
Ubuntu 18.04では、このファイルはにあり/run/ntp.conf.dhcp、どのイベントでもその場所を検索できます/etc/dhcp/dhclient-exit-hooks.d/ntp
DustWolf

最新のUbuntu 16.04 xenialはntp-optionsをサポートしなくなったようです。以前は正常に動作していました。これを行う:これ/usr/sbin/dhcpd -tを与える:/etc/dhcp/dhcpd.conf line 20: unknown option dhcp.ntp-server option ntp-server 10....それは夏にうまく働いていた。
リナス

0

1
こんにちはAbdullah、Chronyは知っておくと便利な代替手段ですが、DHCPサーバーが提供するNTP情報をDHCPクライアントが利用するためにどのように使用できるかについての答えは示していません。
アンソニーG-モニカの正義

@AnthonyGeogheganこんにちは、コメントとして追加した場合、私は私の答えを削除します
アブドラ

いくつかのリンクを投稿するだけでなく(これらは腐敗する傾向があります)、必要な情報を回答に含めてください。
モニカの復職-M.シュレーダー
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.