[LEAPSECS] Bulletin C and all that
Rob Seaman
seaman at noao.edu
Tue Jan 27 08:44:34 EST 2015
I realized I hadn't updated the printed header:
Domain Name IPv4 Decoded Flags
--------------------------------------------------------------------------------
bulletin-c.leapsec.com -> 250.10.36.152 -> OK 2015 7 36 1 (1, 0)
latest.leapsec.com -> 250.10.36.152 -> OK 2015 7 36 1 (1, 0)
In case it wasn't clear, these addresses are live now (with a short TTL):
% dig +short bulletin-c.leapsec.com a
c49.leapsec.com.
250.10.36.152
% dig +short latest.leapsec.com a
c49.leapsec.com.
250.10.36.152
That is, TAI-UTC will equal 36s after 2015.5 where
2015.5 = 1972 + (10 + (250-248) * 256) / 12.
If we converge on a different consensus encoding I'll update the zone file. Or will delete the entries at the end of the experiment if the consensus is that DNS is insufficiently persuasive. (And the owner of any domain that later can't commit to maintaining an up-to-date replica should do likewise.)
Regarding usage the client code for retrieving an encoded address should be prepared for name resolution to fail, either because the network is inaccessible or the entry is missing / stale, e.g.:
def get_addr(host):
try:
for res in socket.getaddrinfo(host, 0, socket.AF_INET, socket.SOCK_STREAM, 0, 0):
af, socktype, proto, canonname, sa = res
addr, port = sa
break
except socket.gaierror:
addr = "0.0.0.0"
return addr
Decoding will then throw an error and the client does whatever is appropriate, e.g., read a locally cached value or try a different name / method.
Rob
More information about the LEAPSECS
mailing list