Specifying an `Internet Router' in the Routing Registry Tony Bates Document ID: ripe-122 ABSTRACT This paper describes a simple specification for defining an Internet router within a routing registry. 1. Introduction It has become apparent as routing registries evolve that there is a need to register details of an Internet router (1) within the rout- ing registry. By adding this kind of detailed information it adds functionality to information based on routing policies [1] facili- tating the ability to build operational tools [2],[3] such as confi- guration generators and diagnostic tools within increased local information. It also provides a direct method to find a contact for an important component of the Internet infrastructure. This can be extremely useful when resolving operational problems. The features described in this document will be usable in the RIPE database at a time specified in [17]. Please refer to this document for more details. 2. Acknowledgments This specification is based on a similar specification by Merit Inc. for a `route' object (2). All credit should go to them. This paper acts purely to clarify the original ideas set out in the Merit _________________________ (1) Here an Internet router means any IP [4] node ca- pable of running an IP routing protocol. Be that RIP, BGP or any other of the current IP based routing proto- cols found in the Internet today. This definition is intentionally looser than what might be found in the "Router requirements" Internet draft [5]. (2) This specification does not use `router' as the object name to avoid possible clashes with the `route' object which already exists within the routing regis- try. ripe-122.txt October, 1994 - 2 - paper. 3. Router Representation The representation must be capable of representing both ``interior'' and ``border'' routers within ones own autonomous system. This said, it should be noted that the original intention of this object is to document ones border routers but does preclude interior routers. Each object is uniquely identified by its object name. Here is a simple example of a router object: inet-rtr: Amsterdam.ripe.net localas: AS3333 ifaddr: 192.87.45.190 255.255.255.0 ifaddr: 192.87.4.28 255.255.255.0 ifaddr: 193.0.0.222 255.255.255.224 ifaddr: 193.0.0.158 255.255.255.224 peer: 192.87.45.6 AS3333 BGP4 peer: 193.0.0.219 AS2122 BGP peer: 193.0.0.221 AS1104 BGP peer: 192.87.4.18 AS1103 BGP4 peer: 192.87.4.24 AS1103 BGP4 peer: 192.87.4.20 AS286 BGP4 admin-c: Daniel Karrenberg tech-c: Tony Bates tech-c: Marten Terpstra notify: ops@ripe.net remarks: The router for the RIPE NCC changed: tony@ripe.net 940720 source: RIPE This object provides several key pieces of information. The exact syntax for each attribute is discussed in the next section. However, some general remarks about this example are worthy of note. From this you can see immediately that this router "Amsterdam.ripe.net" is in the autonomous system 3333 and has four configured interfaces. You also see that it has several exterior peers and one interior peer (192.87.45.6). Details of the actual routing protocol are given. This can be extremely useful. For example a BGP3 (denoted above by BGP) router is not CIDR [6] capable whereas a BGP4 capable router is. A tool could use this information when examining routing policy to see if a peer can make use of aggregation. Finally, we also see who we can contact when problems occur with this router. ripe-122.txt October, 1994 - 3 - 4. `inet-rtr' Syntax Definition Here is a summary of the tags associated with inet-rtr object itself and their status. The first column specifies the attribute, the second column whether this attribute is mandatory in the inet-rtr object, and the third column whether this specific attribute can occur only once per object [single], or one or more [multiple]. When specifying multiple lines per attribute, the attribute name must be repeated. inet-rtr: [mandatory] [single] localas: [mandatory] [single] ifaddr: [mandatory] [multiple] peer: [optional] [multiple] tech-c: [mandatory] [multiple] admin-c: [mandatory] [multiple] remarks: [optional] [multiple] notify: [optional] [multiple] mnt-by: [optional] [multiple] changed: [mandatory] [multiple] source: [mandatory] [single] Each attribute has the following syntax: inet-rtr: The fully qualified domain name of the router. Format: Fully qualified domain name without trailing "." (dot). This must be registered in the DNS. For routers with more than one DNS you should pick the one that seems most suit- able. It should be noted that it is commonly general prac- tice for a router to have single uniquely defined domain name. Example: inet-rtr: Amsterdam.ripe.net Status: mandatory, only one line allowed localas: The autonomous system in which this router belongs. Format: AS Example: localas: AS3333 Status: mandatory, only one line allowed ripe-122.txt October, 1994 - 4 - ifaddr: An interface address within the router. Format: must be a "dotted-quad" represented host address. must be the "dotted-quad" subnet mask of the interface address. It should be noted that at least ONE ifaddr must be con- figured for the inet-rtr object to be valid. This facili- tates the registering of route servers which may only have one interface address and are purely routing engines. Examples: ifaddr: 192.87.45.190 255.255.255.0 ifaddr: 192.87.4.99 255.255.255.0 Status: mandatory, multiple lines allowed peer: Details of any router peerings. These can be both interior or exterior. Format: [Local AS] is the interface address of the remote peer. This is same format as that used in the ``ifaddr'' attribute above. is the autonomous system number of the peer. Its format is AS. It should be noted that even interior peers should have their detailed. represents the routing protocol running between the router and the peer. This can be any one of a list of reserved routing protocol keywords as given in appendix A: [Local AS] is an optional piece of information which allows this peering to be configured as having the router in a DIFFERENT autonomous system. This is useful only when a router is configured to `fake' that it is another AS. The format of [Local AS] is "localas AS". The string `localas' must be present for this optional information to be valid. This is only useful with protocols that allow this feature. ripe-122.txt October, 1994 - 5 - Example: peer: 193.0.0.219 AS2122 BGP peer: 193.0.0.221 AS1104 BGP peer: 192.87.4.18 AS1103 BGP4 peer: 192.87.4.24 AS1103 BGP4 peer: 192.87.4.20 AS286 BGP4 peer: 192.87.4.6 AS2122 BGP4 localas AS2121 Status: optional, multiple lines allowed admin-c: Full name or uniquely assigned NIC-handle of an administrative contact person. Format: or Examples: admin-c: Joe T Bloggs admin-c: JTB1 Status: mandatory, multiple lines allowed tech-c: Full name or uniquely assigned NIC-handle of a technical con- tact person for this macro. This is someone to be contacted for technical problems such as misconfiguration. Format: or Examples: tech-c: John E Doe tech-c: JED31 Status: mandatory, multiple lines allowed notify: The notify attribute contains an email address to which notifi- cations of changes to this object should be send. See [11] for more details. Format: The should be in RFC822 domain syntax wherever possible. see Example: notify: Marten.Terpstra@ripe.net ripe-122.txt October, 1994 - 6 - Status: optional, multiple lines allowed mnt-by: The mnt-by attribute contains a registered maintainer name. See also [11]. Format: Example: mnt-by: RIPE-DBM Status: optional, multiple lines allowed remarks: Remarks/comments, to be used only for clarification. Format: free text Example: remarks: This is a router Status: optional, multiple lines allowed changed: Who changed this object last, and when was this change made. Format: YYMMDD should be the address of the person who made the last change. YYMMDD denotes the date this change was made. Example: changed: johndoe@terabit-labs.nn 900401 Status: mandatory, multiple lines allowed source: Source of the information. This is used to separate information from different sources kept by the same database software. For RIPE database entries the value is fixed to RIPE. Format: RIPE Status: mandatory, only one line allowed ripe-122.txt October, 1994 - 7 - 5. References [1] Bates, T., Gerich, E., Joncheray, L., Joanigot, J-M, Karren- berg, D., Terpstra, M, Yu, J., "Representation of IP Routing Policies in the RIPE Database", RIPE-181, Oct, 194. [2] PRIDE Tools Release 1. See ftp.ripe.net:pride/tools/pride-tools-1.tar.Z. [3] Merit Inc. RRDB Tools. See rrdb.merit.edu:pub/meritrr/* [4] J. Postel, "Internet Protocol", RFC 791, January 1981. [5] Kastenholz, F., draft-ietf-rreq-iprouters-require-01.txt, April, 1994, INTERNET DRAFT [6] V. Fuller, T. Li, J. Yu, K. Varadhan, "Classless Inter-Domain Routing (CIDR): an Address Assignment and Aggregation Stra- tegy", RFC1519, Sep., 1993. [7] Mills, D., "Exterior Gateway Protocol formal specification", RFC904, April 1984. [8] K. Lougheed, Y. Rekhter, "A Border Gateway Protocol 3 (BGP-3)", RFC1267, October 1991. [9] Y. Rekhter, T. Li, "A Border Gateway Protocol 4 (BGP-4)", RFC1654, January, 1994. [10] C. Kunzinger, "ISO/IEC 10747 - Protocol for the Exchange of Inter-Domain Routing Information among Intermediate Systems to Support Forwarding of ISO 8473 PDUs", , INTERNET DRAFT, April 1994. [11] Karrenberg, D., Terpstra, M. "Authorisation and Notification of Changes in the RIPE Database", RIPE-120, Oct, 1994. [12] Hedrick, C., "Routing Information Protocol", RFC1058, June, 1988. [13] Malkin, G., "RIP Version 2 Protocol Analysis", RFC1387, June, 1993. [14] Mills, D., "DCN local-network protocols", RFC891, December, 1983. [15] Moy, J., "OSPF Version 2", RFC1583, March, 1994. [16] Callon, R., "Use of OSI IS-IS for Routing in TCP/IP and Dual Environments", RFC1195, December, 1990. [17] Bates, T., Karrenberg, D., Terpstra, T., "RIPE Database Transi- tion Plan", RIPE-123, Oct, 1994. ripe-122.txt October, 1994 - 8 - 6. Appendix A - List of Routing Protocol Keywords This is a list of currently supported routing protocols supported in the "inter-rtr" object. This list will be updated regularly in the form of addenda to this document. Where a specification document exists it is referenced. EGP The routers are using the exterior gateway protocol, EGP [7]. BGP The routers are using the exterior gateway protocol, BGP, con- forming to [8]. This can mean either BGP version 2 or BGP ver- sion 3. BGP4 The routers are using the exterior gateway protocol, BGP, con- forming to BGP version 4 [9]. IDRP The routers are using the exterior gateway protocol, IDRP, con- forming to [10]. RIP The routers are using the interior routing protocol, RIP [12] RIP2 The routers are using the interior routing protocol, RIP2 [13] HELLO The routers are using the HELLO [14] protocol. IGRP The routers are using IGRP protocol from Cisco Systems Inc. EIGRP The routers are using EIGRP rotocol from Cisco Systems Inc. OSPF The routers are using the interior routing protocol, OSPF2 [15]. ISIS The routers are using the IS-IS routing protocol [16]. OTHER This peering is using a protocol not in one of the categories above. ripe-122.txt October, 1994