Project

General

Profile

Actions

Bug #4603

closed

ntpd tries to bind to a link-local address

Added by Gary Mills over 8 years ago. Updated almost 8 years ago.

Status:
Closed
Priority:
Normal
Assignee:
Category:
OI-Userland
Target version:
-
Start date:
2014-02-15
Due date:
2015-03-16
% Done:

100%

Estimated time:
4.00 h
Difficulty:
Medium
Tags:
ntp

Description

Under oi_151a9, the NTP daemon tries periodically to bind to a link-local IPv6 address, logging these errors:

Feb 15 13:53:02 ati ntpd[345]: [ID 702911 daemon.error] bind(55) AF_INET6 fe80::ca60:ff:fe12:a83c%26%26#123 flags 0x11 failed: Cannot assign requested address
Feb 15 13:53:02 ati ntpd[345]: [ID 702911 daemon.error] unable to create socket on rge0 (4395) for fe80::ca60:ff:fe12:a83c%26#123

It should ignore that address. I understand that this bug has been fixed for Linux in the ntpd source, but probably not for Solaris-based systems.


Files

Makefile (2.41 KB) Makefile Ken Mays, 2014-07-07 03:41 PM
Actions #1

Updated by Ken Mays over 8 years ago

  • Due date set to 2015-03-16
  • Category set to 10
  • Assignee set to OI Userland
  • Estimated time set to 4.00 h
  • Tags changed from needs-triage to ntp

Are you using this package?: ,5.11-0.151.1.8.1:20140120T135446Z

Actions #2

Updated by Gary Mills over 8 years ago

No, I'm using 4.2.5.200,5.11-0.151.1.9:20140117T203248Z from the OI repository. Where did you find the newer one?
Does that fix the problem?

Actions #3

Updated by Gary Mills over 8 years ago

It seems to have gone backwards. I swear I saw 4.2.7p411on oi_151a9, but now it's back to 4.2.5p200 .

Actions #4

Updated by Gary Mills over 8 years ago

Okay, I see now why I was misled. The NTP package in oi_151a9 is labelled incorrectly. It looks like an older version:

$ pkg info ntp
Name: service/network/ntp
Summary: Network Time Protocol Daemon v4
Description: Network Time Protocol v4, NTP Daemon and Utilities (4.2.5)
Category: System/Services
State: Installed
Publisher: openindiana.org
Version: 4.2.5.200
Build Release: 5.11
Branch: 0.151.1.9
Packaging Date: 17 January, 2014 08:32:48 PM
Size: 3.91 MB
FMRI: pkg://openindiana.org/service/network/ntp@4.2.5.200,5.11-0.151.1.9:20140117T203248Z

but actually is the newer version:

$ /usr/lib/inet/ntpd -? 2>&1 | head
ntpd - NTP daemon program - Ver. 4.2.7p411
Usage: ntpd [ -<flag> [<val>] | --<name>[{=| }<val>] ]... \\
[ <server1> ... <serverN> ]
...

So, the real problem is still that ntpd version 4.2.7p411 tries to bind to a link-local address. It does this frequently, resulting in many errors like this one:
Feb 21 15:41:34 ati ntpd[345]: [ID 702911 daemon.error] bind(55) AF_INET6 fe80::ca60:ff:fe12:a83c%26%26#123 flags 0x11 failed: Cannot assign requested address
Feb 21 15:41:34 ati ntpd[345]: [ID 702911 daemon.error] unable to create socket on rge0 (6159) for fe80::ca60:ff:fe12:a83c%26#123

Actions #5

Updated by Gary Mills over 8 years ago

I found the solution. The Makefile.sfw in usr/src/cmd/ntpd contains this line:

CONFIGURE_OPTIONS += --disable-getifaddrs

Just delete that line, and the error messages all disappear, once you rebuild and reinstall. The ntpd daemon binds to all addresses, both IPv4 and IPv6, and responds to `ntpq' on all of them. It also keeps time correctly.

Actions #6

Updated by Ken Mays about 8 years ago

Tested for ntp 4.2.7p446.

Actions #7

Updated by Ken Mays almost 8 years ago

  • File Makefile Makefile added
  • Status changed from New to Closed
  • % Done changed from 0 to 100

This was fixed earlier, but I added the new Makefile to bump to NTP 4.2.7p447 in oi-userland.

Actions

Also available in: Atom PDF