Hi, I'm not sure where this message best fits; TUHS, COFF, or Internet History, so please forgive me if this list is not the best location. I'm discussing the hosts file with someone and was wondering if there's any historical documentation around it's format and what should and should not be entered in the file. I've read the current man page on Gentoo Linux, but suspect that it's far from authoritative. I'm hoping that someone can point me to something more authoritative to the hosts file's format, guidelines around entering data, and how it's supposed to function. A couple of sticking points in the other discussion revolve around how many entries a host is supposed to have in the hosts file and any ramifications for having a host appear as an alias on multiple lines / entries. To whit, how correct / incorrect is the following: 192.0.2.1 host.example.net host 127.0.0.1 localhost host.example.net host -- Grant. . . . unix || die -------------- next part -------------- A non-text attachment was scrubbed... Name: smime.p7s Type: application/pkcs7-signature Size: 4013 bytes Desc: S/MIME Cryptographic Signature URL: <http://minnie.tuhs.org/pipermail/coff/attachments/20210311/979ec8d0/attachment.bin>
Grant Taylor wrote in <02d10a8e-2f39-4f88-f4c9-ecb295e0f01e at spamtrap.tnetconsulting.net>: |Hi, | |I'm not sure where this message best fits; TUHS, COFF, or Internet |History, so please forgive me if this list is not the best location. | |I'm discussing the hosts file with someone and was wondering if there's |any historical documentation around it's format and what should and |should not be entered in the file. | |I've read the current man page on Gentoo Linux, but suspect that it's |far from authoritative. I'm hoping that someone can point me to |something more authoritative to the hosts file's format, guidelines |around entering data, and how it's supposed to function. | |A couple of sticking points in the other discussion revolve around how |many entries a host is supposed to have in the hosts file and any |ramifications for having a host appear as an alias on multiple lines / |entries. To whit, how correct / incorrect is the following: | |192.0.2.1 host.example.net host |127.0.0.1 localhost host.example.net host Address, "official name", aliases. And as many as you want i'd say. It is just that an alias might be hidden and never be found (if actually hidden). This is at least how i interpreted it. --steffen | |Der Kragenbaer, The moon bear, |der holt sich munter he cheerfully and one by one |einen nach dem anderen runter wa.ks himself off |(By Robert Gernhardt)
[-- Warning: decoded text below may be mangled, UTF-8 assumed --] [-- Attachment #1: Type: text/plain, Size: 1776 bytes --] Grant, are you asking about a multi-homed host? IIRC the original BSD code did the first hit and stop, when looking something up. What we sometimes did was give the host an alias : host-en for the ethernet and host-pro proteon HW. Host would be on both lines, so you wanted to make the first 'host' to be the default. ᐧ On Thu, Mar 11, 2021 at 12:13 PM Grant Taylor via COFF <coff at minnie.tuhs.org> wrote: > Hi, > > I'm not sure where this message best fits; TUHS, COFF, or Internet > History, so please forgive me if this list is not the best location. > > I'm discussing the hosts file with someone and was wondering if there's > any historical documentation around it's format and what should and > should not be entered in the file. > > I've read the current man page on Gentoo Linux, but suspect that it's > far from authoritative. I'm hoping that someone can point me to > something more authoritative to the hosts file's format, guidelines > around entering data, and how it's supposed to function. > > A couple of sticking points in the other discussion revolve around how > many entries a host is supposed to have in the hosts file and any > ramifications for having a host appear as an alias on multiple lines / > entries. To whit, how correct / incorrect is the following: > > 192.0.2.1 host.example.net host > 127.0.0.1 localhost host.example.net host > > > > -- > Grant. . . . > unix || die > > _______________________________________________ > COFF mailing list > COFF at minnie.tuhs.org > https://minnie.tuhs.org/cgi-bin/mailman/listinfo/coff > -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://minnie.tuhs.org/pipermail/coff/attachments/20210311/305b2414/attachment-0001.htm>
[-- Warning: decoded text below may be mangled, UTF-8 assumed --] [-- Attachment #1: Type: text/plain, Size: 2042 bytes --] On Thu, Mar 11, 2021 at 10:40 AM Bakul Shah <bakul at iitbombay.org> wrote: > From https://www.freebsd.org/cgi/man.cgi?hosts(5) > > For each host a single line should be present with the following information: > > Internet address > official host name > aliases > > *HISTORY* <https://www.freebsd.org/cgi/man.cgi?hosts(5)#end> > The *hosts* file format appeared in 4.2BSD. > > While this is true wrt the history of FreeBSD/Unix, I'm almost positive that BSD didn't invent it. I'm pretty sure it was picked up from the existing host file that was published by sri-nic.arpa before DNS. Warner > On Mar 11, 2021, at 9:14 AM, Grant Taylor via TUHS <tuhs at minnie.tuhs.org> > wrote: > > Hi, > > I'm not sure where this message best fits; TUHS, COFF, or Internet > History, so please forgive me if this list is not the best location. > > I'm discussing the hosts file with someone and was wondering if there's > any historical documentation around it's format and what should and should > not be entered in the file. > > I've read the current man page on Gentoo Linux, but suspect that it's far > from authoritative. I'm hoping that someone can point me to something more > authoritative to the hosts file's format, guidelines around entering data, > and how it's supposed to function. > > A couple of sticking points in the other discussion revolve around how > many entries a host is supposed to have in the hosts file and any > ramifications for having a host appear as an alias on multiple lines / > entries. To whit, how correct / incorrect is the following: > > 192.0.2.1 host.example.net host > 127.0.0.1 localhost host.example.net host > > > > -- > Grant. . . . > unix || die > > _______________________________________________ > COFF mailing list > COFF at minnie.tuhs.org > https://minnie.tuhs.org/cgi-bin/mailman/listinfo/coff > -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://minnie.tuhs.org/pipermail/coff/attachments/20210311/a5d2f615/attachment.htm>
[-- Warning: decoded text below may be mangled, UTF-8 assumed --] [-- Attachment #1: Type: text/plain, Size: 2353 bytes --] The SRI file was different format. There was a tool that fetched and converted from the PDP-10 scheme to the UNIX scheme - gethtable(8) or something like that. ᐧ ᐧ On Thu, Mar 11, 2021 at 1:08 PM Warner Losh <imp at bsdimp.com> wrote: > > > On Thu, Mar 11, 2021 at 10:40 AM Bakul Shah <bakul at iitbombay.org> wrote: > >> From https://www.freebsd.org/cgi/man.cgi?hosts(5) >> >> For each host a single line should be present with the following information: >> >> Internet address >> official host name >> aliases >> >> *HISTORY* <https://www.freebsd.org/cgi/man.cgi?hosts(5)#end> >> The *hosts* file format appeared in 4.2BSD. >> >> > While this is true wrt the history of FreeBSD/Unix, I'm almost positive > that BSD didn't invent it. I'm pretty sure it was picked up from the > existing host file that was published by sri-nic.arpa before DNS. > > Warner > > >> On Mar 11, 2021, at 9:14 AM, Grant Taylor via TUHS <tuhs at minnie.tuhs.org> >> wrote: >> >> Hi, >> >> I'm not sure where this message best fits; TUHS, COFF, or Internet >> History, so please forgive me if this list is not the best location. >> >> I'm discussing the hosts file with someone and was wondering if there's >> any historical documentation around it's format and what should and should >> not be entered in the file. >> >> I've read the current man page on Gentoo Linux, but suspect that it's far >> from authoritative. I'm hoping that someone can point me to something more >> authoritative to the hosts file's format, guidelines around entering data, >> and how it's supposed to function. >> >> A couple of sticking points in the other discussion revolve around how >> many entries a host is supposed to have in the hosts file and any >> ramifications for having a host appear as an alias on multiple lines / >> entries. To whit, how correct / incorrect is the following: >> >> 192.0.2.1 host.example.net host >> 127.0.0.1 localhost host.example.net host >> >> >> >> -- >> Grant. . . . >> unix || die >> >> _______________________________________________ >> COFF mailing list >> COFF at minnie.tuhs.org >> https://minnie.tuhs.org/cgi-bin/mailman/listinfo/coff >> > -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://minnie.tuhs.org/pipermail/coff/attachments/20210311/f3337c06/attachment.htm>
While this is true wrt the history of FreeBSD/Unix, I'm almost positive > that BSD didn't invent it. I'm pretty sure it was picked up from the > existing host file that was published by sri-nic.arpa before DNS. > > Warner > The CSRG history doesn't seem to have saved the full SCCS history of the hosts manpage, but it must have appeared sometime around the addition of ARP support to 4.1BSD - it's not in the 4.1C sources without ARP, but it is in the sources with it. That version does indeed mention its origins: HOSTS(5) File Formats Manual HOSTS(5) NAME hosts - host name data base DESCRIPTION The hosts file contains information regarding the known hosts on the DARPA Internet. For each host a single line should be present with the following information: official host name Internet address aliases Items are separated by any number of blanks and/or tab characters. A ``#'' indicates the beginning of a comment; characters up to the end of the line are not interpreted by routines which search the file. This file is normally created from the official host data base maintained at the Network Information Control Center (NIC), though local changes may be required to bring it up to date regarding unofficial aliases and/or unknown hosts. Network addresses are specified in the conventional ``.'' notation us- ing the inet_addr() routine from the Internet address manipulation li- brary, inet(3). Host names may contain any printable character other than a field delimiter, newline, or comment character. FILES /etc/hosts SEE ALSO gethostent(3N) BUGS A name server should be used instead of a static file. A binary in- dexed file format should be available for fast access. 15 January 1983 HOSTS(5) -Henry -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://minnie.tuhs.org/pipermail/coff/attachments/20210311/79017fce/attachment-0001.htm>
[-- Warning: decoded text below may be mangled, UTF-8 assumed --] [-- Attachment #1: Type: text/plain, Size: 3128 bytes --] The "new" host table format is described in RFC 810 <https://tools.ietf.org/html/rfc810 <https://tools.ietf.org/html/rfc810> (mentions UNIX) but it goes back to RFC 608 (1974) or so. jaap > On Mar 11, 2021, at 19:12, Clem Cole <clemc at ccc.com> wrote: > > The SRI file was different format. There was a tool that fetched and converted from the PDP-10 scheme to the UNIX scheme - gethtable(8) or something like that. > ᐧ > ᐧ > > On Thu, Mar 11, 2021 at 1:08 PM Warner Losh <imp at bsdimp.com <mailto:imp at bsdimp.com>> wrote: > > > On Thu, Mar 11, 2021 at 10:40 AM Bakul Shah <bakul at iitbombay.org <mailto:bakul at iitbombay.org>> wrote: > From https://www.freebsd.org/cgi/man.cgi?hosts(5) <https://www.freebsd.org/cgi/man.cgi?hosts(5)> > For each host a single line should be present with the following information: > Internet address > official host name > aliases > HISTORY <https://www.freebsd.org/cgi/man.cgi?hosts(5)#end> > The hosts file format appeared in 4.2BSD. > > While this is true wrt the history of FreeBSD/Unix, I'm almost positive that BSD didn't invent it. I'm pretty sure it was picked up from the existing host file that was published by sri-nic.arpa before DNS. > > Warner > >> On Mar 11, 2021, at 9:14 AM, Grant Taylor via TUHS <tuhs at minnie.tuhs.org <mailto:tuhs at minnie.tuhs.org>> wrote: >> >> Hi, >> >> I'm not sure where this message best fits; TUHS, COFF, or Internet History, so please forgive me if this list is not the best location. >> >> I'm discussing the hosts file with someone and was wondering if there's any historical documentation around it's format and what should and should not be entered in the file. >> >> I've read the current man page on Gentoo Linux, but suspect that it's far from authoritative. I'm hoping that someone can point me to something more authoritative to the hosts file's format, guidelines around entering data, and how it's supposed to function. >> >> A couple of sticking points in the other discussion revolve around how many entries a host is supposed to have in the hosts file and any ramifications for having a host appear as an alias on multiple lines / entries. To whit, how correct / incorrect is the following: >> >> 192.0.2.1 host.example.net <http://host.example.net/> host >> 127.0.0.1 localhost host.example.net <http://host.example.net/> host >> >> >> >> -- >> Grant. . . . >> unix || die >> > _______________________________________________ > COFF mailing list > COFF at minnie.tuhs.org <mailto:COFF at minnie.tuhs.org> > https://minnie.tuhs.org/cgi-bin/mailman/listinfo/coff <https://minnie.tuhs.org/cgi-bin/mailman/listinfo/coff> -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://minnie.tuhs.org/pipermail/coff/attachments/20210311/ee786176/attachment-0001.htm> -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 267 bytes Desc: Message signed with OpenPGP URL: <http://minnie.tuhs.org/pipermail/coff/attachments/20210311/ee786176/attachment-0001.sig>
The hosts file format definition appears in RFC 752: Universal host table RFC 810: DoD Internet host table specification RFC 952: DoD Internet host table specification A 1986 hosts.txt file in my PDP-10 archives notes: ; The format for entries is: ; ; NET : NET-ADDR : NETNAME : ; GATEWAY : ADDR, ADDR : NAME : CPUTYPE : OPSYS : PROTOCOLS : ; HOST : ADDR, ALTERNATE-ADDR (if any): HOSTNAME,NICKNAME : CPUTYPE : ; OPSYS : PROTOCOLS : ; ; Where: ;; ADDR = internet address in decimal, e.g., 26.0.0.73 ;; CPUTYPE = machine type (PDP-11/70, VAX-11/780, FOONLY-F3, C/30, etc.) ;; OPSYS = operating system (UNIX, TOPS20, TENEX, ITS, etc.) ;; PROTOCOLS = transport/service (TCP/TELNET,TCP/FTP, etc.) ;; : (colon) = field delimiter ;; :: (2 colons) = null field ------------------------------------------------------------------------------- - Nelson H. F. Beebe Tel: +1 801 581 5254 - - University of Utah FAX: +1 801 581 4148 - - Department of Mathematics, 110 LCB Internet e-mail: beebe at math.utah.edu - - 155 S 1400 E RM 233 beebe at acm.org beebe at computer.org - - Salt Lake City, UT 84112-0090, USA URL: http://www.math.utah.edu/~beebe/ - -------------------------------------------------------------------------------
[-- Warning: decoded text below may be mangled, UTF-8 assumed --] [-- Attachment #1: Type: text/plain, Size: 2836 bytes --] On Thu, 11 Mar 2021 at 13:14, Clem Cole <clemc at ccc.com> wrote: > The SRI file was different format. There was a tool that fetched and > converted from the PDP-10 scheme to the UNIX scheme - gethtable(8) or > something like that. > ᐧ > ᐧ > gettable(8) and htable(8): GETTABLE(8C) GETTABLE(8C) NAME gettable - get NIC format host tables from a host SYNOPSIS /etc/gettable host DESCRIPTION Gettable is a simple program used to obtain the NIC standard host tables from a ``nicname'' server. The indicated host is queried for the tables. The tables, if retrieved, are placed in the file hosts.txt. Gettable operates by opening a TCP connection to the port indicated in the service specification for ``nicname''. A request is then made for ``ALL'' names and the resultant information is placed in the output file. Gettable is best used in conjunction with the htable(8) program which converts the NIC standard file format to that used by the network library lookup routines. SEE ALSO intro(3N), htable(8) BUGS Should allow requests for only part of the database. 4th Berkeley Distribution 4 March 1983 GETTABLE(8C) HTABLE(8) System Manager's Manual HTABLE(8) NAME htable - convert NIC standard format host tables SYNOPSIS /etc/htable file DESCRIPTION Htable is used to convert host files in the format specified in Inter- net RFC 810 to the format used by the network library routines. Three files are created as a result of running htable: hosts, networks, and gateways. The hosts file is used by the gethostent(3N) routines in mapping host names to addresses. The networks file is used by the get- netent(3N) routines in mapping network names to numbers. The gateways file is used by the routing daemon in identifying ``passive'' Internet gateways; see routed(8C) for an explanation. If any of the files localhosts, localnetworks, or localgateways are present in the current directory, the file's contents is prepended to the output file without interpretation. This allows sites to maintain local aliases and entries which are not normally present in the master database. Htable is best used in conjunction with the gettable(8C) program which retrieves the NIC database from a host. SEE ALSO intro(3N), gettable(8C) BUGS Does not properly calculate the gateways file. 4th Berkeley Distribution 4 March 1983 HTABLE(8) -Henry -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://minnie.tuhs.org/pipermail/coff/attachments/20210311/fa66b6d0/attachment-0001.htm>
[-- Warning: decoded text below may be mangled, UTF-8 assumed --] [-- Attachment #1: Type: text/plain, Size: 2202 bytes --] On Mar 11, 2021, at 10:08 AM, Warner Losh <imp at bsdimp.com> wrote: > > On Thu, Mar 11, 2021 at 10:40 AM Bakul Shah <bakul at iitbombay.org> wrote: >> From https://www.freebsd.org/cgi/man.cgi?hosts(5) >> For each host a single line should be present with the following information: >> Internet address >> official host name >> aliases >> HISTORY >> The hosts file format appeared in 4.2BSD. > > While this is true wrt the history of FreeBSD/Unix, I'm almost positive that BSD didn't invent it. I'm pretty sure it was picked up from the existing host file that was published by sri-nic.arpa before DNS. A different and more verbose format. See RFCs 810 & 952. Possibly because it had to serve more purposes? > Warner > >>> On Mar 11, 2021, at 9:14 AM, Grant Taylor via TUHS <tuhs at minnie.tuhs.org> wrote: >>> Hi, >>> >>> I'm not sure where this message best fits; TUHS, COFF, or Internet History, so please forgive me if this list is not the best location. >>> >>> I'm discussing the hosts file with someone and was wondering if there's any historical documentation around it's format and what should and should not be entered in the file. >>> >>> I've read the current man page on Gentoo Linux, but suspect that it's far from authoritative. I'm hoping that someone can point me to something more authoritative to the hosts file's format, guidelines around entering data, and how it's supposed to function. >>> >>> A couple of sticking points in the other discussion revolve around how many entries a host is supposed to have in the hosts file and any ramifications for having a host appear as an alias on multiple lines / entries. To whit, how correct / incorrect is the following: >>> >>> 192.0.2.1 host.example.net host >>> 127.0.0.1 localhost host.example.net host >>> >>> >>> >>> -- >>> Grant. . . . >>> unix || die >> _______________________________________________ >> COFF mailing list >> COFF at minnie.tuhs.org >> https://minnie.tuhs.org/cgi-bin/mailman/listinfo/coff -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://minnie.tuhs.org/pipermail/coff/attachments/20210311/5ba7c753/attachment-0001.htm>
On 3/11/21 10:29 AM, Steffen Nurpmeso wrote: > Address, "official name", aliases. > And as many as you want i'd say. It is just that an alias might be > hidden and never be found (if actually hidden). This is at least > how i interpreted it. Please clarify what you mean by "And as many as you want". Do you man as many /aliases/ and / or as many /entries/ (lines) in the file? -- Grant. . . . unix || die -------------- next part -------------- A non-text attachment was scrubbed... Name: smime.p7s Type: application/pkcs7-signature Size: 4013 bytes Desc: S/MIME Cryptographic Signature URL: <http://minnie.tuhs.org/pipermail/coff/attachments/20210311/cde6f420/attachment.bin>
[-- Warning: decoded text below may be mangled, UTF-8 assumed --] [-- Attachment #1: Type: text/plain, Size: 1135 bytes --] On 3/11/21 11:02 AM, Clem Cole wrote: > Grant, are you asking about a multi-homed host? I had specifically elided multi-homing for simplicity. > IIRC the original BSD code did the first hit and stop, when looking > something up. *nod* That's my understanding. > What we sometimes did was give the host an alias : host-en for the > ethernet and host-pro proteon HW. If I understand what you're saying: 192.0.2.1 host.example.net host-en 198.51.100.1 host.example.net host-pro > Host would be on both lines, so you wanted to make the first 'host' > to be the default. I guess I shouldn't elide multi-homing and instead address it directly. Or at least clarify the paradigm. Should a given host name appear on more than one entry / line in the hosts file if it's only got one IP (other than 127.0.0.1 / ::1)? -- Grant. . . . unix || die -------------- next part -------------- A non-text attachment was scrubbed... Name: smime.p7s Type: application/pkcs7-signature Size: 4013 bytes Desc: S/MIME Cryptographic Signature URL: <http://minnie.tuhs.org/pipermail/coff/attachments/20210311/ba582657/attachment-0001.bin>
On Mar 11, 2021, at 1:03 PM, Grant Taylor via COFF <coff at minnie.tuhs.org> wrote:
>
> On 3/11/21 10:29 AM, Steffen Nurpmeso wrote:
>> Address, "official name", aliases.
>> And as many as you want i'd say. It is just that an alias might be hidden and never be found (if actually hidden). This is at least how i interpreted it.
>
> Please clarify what you mean by "And as many as you want".
>
> Do you man as many /aliases/ and / or as many /entries/ (lines) in the file?
The FreeBSD man page I quoted from (prob. orig. from 4.2BSD or so) shows no such
restriction so you can have as many aliases as you wnat as and many entries as you
want. But an implementation may have its own limits.
And if you have non-unique names or addresses, be prepared for surprises.
Grant Taylor wrote in <80d8f9bc-31d6-6bb8-03e6-ce53cc4a9cdb at spamtrap.tnetconsulting.net>: |On 3/11/21 10:29 AM, Steffen Nurpmeso wrote: |> Address, "official name", aliases. |> And as many as you want i'd say. It is just that an alias might be |> hidden and never be found (if actually hidden). This is at least |> how i interpreted it. | |Please clarify what you mean by "And as many as you want". | |Do you man as many /aliases/ and / or as many /entries/ (lines) in \ |the file? Both. Here, that is. The first generated AorAAAA, the latter were "system alias" names (not even cname or something) which were search in preference unless the query gave a conf_noaliases flag. And the reading was just readLine(). And one thing why i loved C++, writing something like "_line.trim().squeeze().data()" in C is terrible. --steffen | |Der Kragenbaer, The moon bear, |der holt sich munter he cheerfully and one by one |einen nach dem anderen runter wa.ks himself off |(By Robert Gernhardt)