RFC 1712

DNS Encoding of Geographical Location

πŸ“… published November 1994, from ietf

RFC 1712: DNS Encoding of Geographical Location ✨

Part 1 of 2 πŸ’–

  • Network Working Group πŸŽ€ (Request for Comments: 1712)
  • Authors: C. Farrell, M. Schulze, S. Pleitner, and D. Baldoni, all from Curtin University of Technology πŸ§‘β€πŸ’»
  • Category: Experimental πŸ§ͺ
  • Date: November 1994 πŸ“…
  • Obsoletes: nothing listed 🌸
  • Updates: nothing listed 🌸

Status of This Memo πŸ’…

Okay so this memo defines an Experimental Protocol for the Internet community πŸ¦‹. It does not specify an Internet standard of any kind, so it's not a standard, it's more of a vibe check πŸ’€. They're literally asking for discussion and suggestions for improvement 🫢. Distribution of this memo is unlimited 🌈.

Abstract πŸŽ€

This document defines the format of a brand new Resource Record (RR) for the Domain Naming System (DNS), and reserves a matching DNS type mnemonic and numerical code πŸ”₯. It's all about linking geographical host location mappings to host names inside a domain 🌸. Quick disclaimer: the data in this document is fictitious and does not necessarily reflect the real Internet πŸ™ˆ.

1. Introduction πŸ¦‹

It's been a long-standing problem to relate IP numbers to geographical locations 😭. Geographical location info is super useful for network management ✨. It can supplement the data that tools like whois [Har85], traceroute [VJ89], and nslookup [UCB89] already provide. These tools are already widely used, and reliable geographical location info would make them way more powerful πŸ’….

The ideal way to manage and maintain a database of info, like the geographical location of internet hosts, is to delegate responsibility to local domain administrators πŸ‘‘. A large distributed database could be built with a simple mechanism for updating the local info 🧚. There also has to be a query mechanism for checking local entries, as well as for asking about data from non-local domains 🫢.

2. Background 🌈

The Internet keeps growing at an ever increasing rate, with IP numbers handed out on a first-come-first-serve basis πŸ“ˆ. When it came to setting up a database of geographical info about internet hosts, there were a bunch of options πŸ€”. The uumap project [UU85] was the first serious attempt to collect geographical location data from sites and store it centrally πŸ“. It met with limited success, because maintaining and updating a large central database is hard 😩. Another problem was the lack of tools for checking the data supplied, so some erroneous data got into the database πŸ’€.

2.1 SNMP ✨

Using an SNMP get request on the sysLocation MIB (Management Information Base) variable was also an option 🧐. However, that would require the host to be running an appropriate agent with public read access πŸ™ˆ. It was also felt that MIB data should reflect local management data (e.g., "this" host is on level 5 room 74) rather than a host's geographical position 🏒. This view is supported by the examples given in the literature in this area [ROSE91] πŸ“š.

2.2 X500 πŸŽ€

The X.500 Directory service [X.500.88], defined as part of the ISO standards, also looked like a potential provider of geographical location data 🌟. However, because this service has limited implementations, it was decided to defer it until it gains wider use and acceptance within the Internet community 🫠.

2.3 BIND πŸ’–

The DNS [Mock87a][Mock87b] is an existing system that's ideally suited to providing host specific information πŸ’œ. It's a widely used, well-understood mechanism for providing a distributed database of this kind of info, and its extensible nature means it can disseminate virtually any information πŸ¦‹. The most commonly used DNS implementation is the Berkeley Internet Name Domain server, BIND [UCB89] πŸ“. The info they wanted to share needed to be updated locally but available globally, which is a perfect match for the services the DNS provides 🫢. Current DNS servers offer a variety of useful info about hosts in their domain, but they lack the ability to report a host's geographical location 😭.

3. RDATA Format 🧚

Here's the layout, bestie πŸ“

        MSB                                        LSB
        +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
        /                 LONGITUDE                  /
        +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
        /                  LATITUDE                  /
        +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
        /                  ALTITUDE                  /
        +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+

Where:

  • LONGITUDE 🌍 The real number describing the longitude, encoded as a printable string. The precision is limited by 256 characters within the range -90..90 degrees. Positive numbers indicate locations north of the equator.
  • LATITUDE 🌏 The real number describing the latitude, encoded as a printable string. The precision is limited by 256 characters within the range -180..180 degrees. Positive numbers indicate locations east of the prime meridian.
  • ALTITUDE ⛰️ The real number describing the altitude (in meters) from mean sea-level, encoded as a printable string. The precision is limited by 256 characters. Positive numbers indicate locations above mean sea-level.

Latitude, Longitude, and Altitude values are encoded as strings so as to avoid the precision limitations imposed by encoding as unsigned integers. Although this might not be considered optimal, it allows for a very high degree of precision with an acceptable average encoded record length 🌸.

9. Authors' Addresses πŸ’…

Meet the squad who wrote this, bestie 🫢 Each of them sits in the Department of Computer Science at Curtin University of technology πŸŽ€

Craig Farrell 🌸

Craig Farrell
Department of Computer Science
Curtin University of technology
GPO Box U1987 Perth,
Western Australia

EMail: craig@cs.curtin.edu.au

Mike Schulze πŸ¦‹

Mike Schulze
Department of Computer Science
Curtin University of technology
GPO Box U1987 Perth,
Western Australia

EMail: mike@cs.curtin.edu.au

Scott Pleitner 🧚

Scott Pleitner
Department of Computer Science
Curtin University of technology
GPO Box U1987 Perth,
Western Australia

EMail: pleitner@cs.curtin.edu.au

Daniel Baldoni πŸ‘‘

Daniel Baldoni
Department of Computer Science
Curtin University of technology
GPO Box U1987 Perth,
Western Australia

EMail: flint@cs.curtin.edu.au
πŸ“¦ where this page comes from