6.8. RFC 1464 Using the Domain Name System To Store
Arbitrary String Attributes . . . . . . . . . . . . . 37
6.9. RFC 1475 TP/IX: The Next Internet . . . . . . . . . . 37
6.10. RFC 1561 Use of ISO CLNP in TUBA Environments . . . . 37
6.11. RFC 1712 DNS Encoding of Geographical Location. . . . 37
6.12. RFC 1735 NBMA Address Resolution Protocol (NARP). . . 37
6.13. RFC 1768 Host Group Extensions for CLNP Multicasting. 38
6.14. RFC 1788 ICMP Domain Name Messages. . . . . . . . . . 38
6.15. RFC 1797 Class A Subnet Experiment. . . . . . . . . . 38
6.16. RFC 1819 Internet Stream Protocol Version 2 (ST2)
Protocol Specification - Version ST2+ . . . . . . . . 39
6.17. RFC 1868 ARP Extension - UNARP. . . . . . . . . . . . 39
6.18. RFC 1876 A Means for Expressing Location Information
in the Domain Name System . . . . . . . . . . . . . . 39
6.19. RFC 1888 OSI NSAPs and IPv6 . . . . . . . . . . . . . 39
6.20. RFC 2009 GPS-Based Addressin and Routing. . . . . . . 39
6.21. RFC 2143 Encapsulating IP with the SCSI . . . . . . . 39
6.22. RFC 2345 Domain Names and Company Name Retrieval. . . 40
6.23. RFC 2443 A Distributed MARS Service Using SCSP. . . . 40
6.24. RFC 2471 IPv6 Testing Address Allocation. . . . . . . 40
6.25. RFC 2520 NHRP with Mobile NHCs. . . . . . . . . . . . 40
6.26. RFC 2521 ICMP Security Failures Messages. . . . . . . 40
6.27. RFC 2540 Detached Domain Name System (DNS)
Information . . . . . . . . . . . . . . . . . . . . . 40
6.28. RFC 2823 PPP over Simple Data Link (SDL) using
SONET/SDH with ATM-like framing . . . . . . . . . . . 40
6.29. RFC 3123 A DNS RR Type for Lists of Address Prefixes. 40
6.30. RFC 3168 The Addition of Explicit Congestion
Notification (ECN) to IP . . . . . . . . . . . . . . 40
6.31. RFC 3180 GLOP Addressing in 233/8 . . . . . . . . . . 40
7. Summary of the Results . . . . . . . . . . . . . . . . . . . 41
7.1. Standards . . . . . . . . . . . . . . . . . . . . . . 41
7.1.1. RFC 791 Internet Protocol . . . . . . . . . . 41
7.1.2. RFC 792 Internet Control Message Protocol . . 41
7.1.3. RFC 891 DCN Networks. . . . . . . . . . . . . 41
7.1.4. RFC 894 IP over Ethernet. . . . . . . . . . . 41
7.1.5. RFC 895 IP over experimental Ethernets. . . . 41
7.1.6. RFC 922 Broadcasting Internet Datagrams in
the Presence of Subnets . . . . . . . . . . . 41
7.1.7. RFC 950 Internet Standard Subnetting
Procedure. . . . . . . . . . . . . . . . . . 42
7.1.8. RFC 1034 Domain Names: Concepts and
Facilities. . . . . . . . . . . . . . . . . . 42
7.1.9. RFC 1035 Domain Names: Implementation and
Specification . . . . . . . . . . . . . . . . 42
7.1.10. RFC 1042 IP over IEEE 802 . . . . . . . . . . 42
7.1.11. RFC 1044 IP over HyperChannel . . . . . . . . 42
7.1.12. RFC 1088 IP over NetBIOS. . . . . . . . . . . 42
7.1.13. RFC 1112 Host Extensions for IP Multicast . . 42
7.1.14. RFC 1122 Requirements for Internet Hosts. . . 42
7.1.15. RFC 1201 IP over ARCNET . . . . . . . . . . . 42
7.1.16. RFC 1209 IP over SMDS . . . . . . . . . . . . 43
7.1.17. RFC 1390 Transmission of IP and ARP over FDDI
Networks. . . . . . . . . . . . . . . . . . . 43
7.2. Draft Standards . . . . . . . . . . . . . . . . . . . 43
7.2.1. RFC 951 Bootstrap Protocol (BOOTP). . . . . . 43
7.2.2. RFC 1191 Path MTU Discovery . . . . . . . . . 43
7.2.3. RFC 1356 Multiprotocol Interconnect on X.25
and ISDN. . . . . . . . . . . . . . . . . . . 43
7.2.4. RFC 1990 The PPP Multilink Protocol (MP). . . 43
7.2.5. RFC 2067 IP over HIPPI. . . . . . . . . . . . 43
7.2.6. RFC 2131 DHCP . . . . . . . . . . . . . . . . 43
7.3. Proposed Standards. . . . . . . . . . . . . . . . . . 44
7.3.1. RFC 1234 Tunneling IPX over IP. . . . . . . . 44
7.3.2. RFC 1256 ICMP Router Discovery. . . . . . . . 44
7.3.3. RFC 1277 Encoding Net Addresses to Support
Operation Over Non OSI Lower Layers . . . . . 44
7.3.4. RFC 1332 PPP Internet Protocol Control
Protocol (IPCP) . . . . . . . . . . . . . . . 44
7.3.5. RFC 1469 IP Multicast over Token Ring . . . . 44
7.3.6. RFC 2003 IP Encapsulation within IP . . . . . 44
7.3.7. RFC 2004 Minimal Encapsulation within IP. . . 44
7.3.8. RFC 2022 Support for Multicast over UNI
3.0/3.1 based ATM Networks. . . . . . . . . . 44
7.3.9. RFC 2113 IP Router Alert Option . . . . . . . 45
7.3.10. RFC 2165 SLP. . . . . . . . . . . . . . . . . 45
7.3.11. RFC 2225 Classical IP & ARP over ATM. . . . . 45
7.3.12. RFC 2226 IP Broadcast over ATM. . . . . . . . 45
7.3.13. RFC 2371 Transaction IPv3 . . . . . . . . . . 45
7.3.14. RFC 2625 IP and ARP over Fibre Channel. . . . 45
7.3.15. RFC 2672 Non-Terminal DNS Redirection . . . . 45
7.3.16. RFC 2673 Binary Labels in DNS . . . . . . . . 45
7.3.17. IP over Vertical Blanking Interval of a TV
Signal (RFC 2728) . . . . . . . . . . . . . . 45
7.3.18. RFC 2734 IPv4 over IEEE 1394. . . . . . . . . 45
7.3.19. RFC 2834 ARP & IP Broadcasts Over HIPPI 800 . 46
7.3.20. RFC 2835 ARP & IP Broadcasts Over HIPPI 6400. 46
7.3.21. RFC 3344 Mobility Support for IPv4. . . . . . 46
7.3.22. RFC 3376 Internet Group Management Protocol,
Version 3 . . . . . . . . . . . . . . . . . . 46
7.4. Experimental RFCs . . . . . . . . . . . . . . . . . . 46
7.4.1. RFC 1307 Dynamically Switched Link Control
Protocol. . . . . . . . . . . . . . . . . . . 46
7.4.2. RFC 1393 Traceroute using an IP Option. . . . 46
7.4.3. RFC 1735 NBMA Address Resolution Protocol
(NARP). . . . . . . . . . . . . . . . . . . . 46
7.4.4. RFC 1788 ICMP Domain Name Messages. . . . . . 46
7.4.5. RFC 1868 ARP Extension - UNARP. . . . . . . . 47
7.4.6. RFC 2143 IP Over SCSI . . . . . . . . . . . . 47
7.4.7. RFC 3180 GLOP Addressing in 233/8 . . . . . . 47
8. Security Considerations . . . . . . . . . . . . . . . . . . 47
9. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 47
10. References . . . . . . . . . . . . . . . . . . . . . . . . . 47
10.1. Normative References. . . . . . . . . . . . . . . . . 47
10.2. Informative References . . . . . . . . . . . . . . . 48
11. Authors’ Addresses . . . . . . . . . . . . . . . . . . . . . 48
12. Full Copyright Statement . . . . . . . . . . . . . . . . . . 49
1. Introduction
This document is part of a document set aiming to document all usage
of IPv4 addresses in IETF standards. In an effort to have the
information in a manageable form, it has been broken into 7 documents
conforming to the current IETF areas (Application, Internet,
Management & Operations, Routing, Security, Sub-IP and Transport).
This specific document focuses on usage of IPv4 addresses within the
Internet area.
For a full introduction, please see the introduction [1] document.
2. Document Organization
The following sections 3, 4, 5, and 6 each describe the raw analysis
of Full, Draft, and Proposed Standards, and Experimental RFCs. Each
RFC is discussed in turn starting with RFC 1 and ending in (about)
RFC 3100. The comments for each RFC are "raw" in nature. That is,
each RFC is discussed in a vacuum and problems or issues discussed do
not "look ahead" to see if any of the issues raised have already been
fixed.
Section 7 is an analysis of the data presented in Sections 3, 4, 5,
and 6. It is here that all of the results are considered as a whole
and the problems that have been resolved in later RFCs are
correlated.
3. Full Standards
Full Internet Standards (most commonly simply referred to as
"Standards") are fully mature protocol specification that are widely
implemented and used throughout the Internet.
3.1. RFC 791 Internet Protocol
This specification defines IPv4; IPv6 has been specified in separate
documents.
3.2. RFC 792 Internet Control Message Protocol
This specification defines ICMP, and is inherently IPv4 dependent.
3.3. RFC 826 Ethernet Address Resolution Protocol
There are no IPv4 dependencies in this specification.
3.4. RFC 891 DCN Local-Network Protocols
There are many implicit assumptions about the use of IPv4 addresses
in this document.
3.5. RFC 894 Standard for the transmission of IP datagrams over
Ethernet networks
This specification specifically deals with the transmission of IPv4
packets over Ethernet.
3.6. RFC 895 Standard for the transmission of IP datagrams over
experimental Ethernet networks
This specification specifically deals with the transmission of IPv4
packets over experimental Ethernet.
3.7. RFC 903 Reverse Address Resolution Protocol
There are no IPv4 dependencies in this specification.
3.8. RFC 919 Broadcasting Internet Datagrams
This specification defines broadcasting for IPv4; IPv6 uses multicast
so this is not applicable.
3.9. RFC 922 Broadcasting Internet datagrams in the presence of subnets
This specification defines how broadcasts should be treated in the
presence of subnets. IPv6 uses multicast so this is not applicable.
3.10. RFC 950 Internet Standard Subnetting Procedure
This specification defines IPv4 subnetting; similar functionality is
part of IPv6 addressing architecture to begin with.
3.11. RFC 1034 Domain Names: Concepts and Facilities
In Section 3.6, "Resource Records", the definition of A record is:
RDATA which is the type and sometimes class dependent
data which describes the resource:
A For the IN class, a 32 bit IP address
And Section 5.2.1, "Typical functions" defines:
1. Host name to host address translation.
This function is often defined to mimic a previous HOSTS.TXT based
function. Given a character string, the caller wants one or more
32 bit IP addresses. Under the DNS, it translates into a request
for type A RRs. Since the DNS does not preserve the order of RRs,
this function may choose to sort the returned addresses or select
the "best" address if the service returns only one choice to the
client. Note that a multiple address return is recommended, but a
single address may be the only way to emulate prior HOSTS.TXT
services.
2. Host address to host name translation
This function will often follow the form of previous functions.
Given a 32 bit IP address, the caller wants a character string.
The octets of the IP address are reversed, used as name
components, and suffixed with "IN-ADDR.ARPA". A type PTR query is
used to get the RR with the primary name of the host. For
example, a request for the host name corresponding to IP address
1.2.3.4 looks for PTR RRs for domain name "4.3.2.1.IN-ADDR.ARPA".
There are, of course, numerous examples of IPv4 addresses scattered
throughout the document.
3.12. RFC 1035 Domain Names: Implementation and Specification
Section 3.4.1, "A RDATA format", defines the format for A records:
+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
| ADDRESS |
+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
where:
ADDRESS A 32 bit Internet address.
Hosts that have multiple Internet addresses will have multiple A
records.
A records cause no additional section processing. The RDATA section
of an A line in a master file is an Internet address expressed as
four decimal numbers separated by dots without any embedded spaces
(e.g.,"10.2.0.52" or "192.0.5.6").
And Section 3.4.2, "WKS RDATA", format is:
+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
| ADDRESS |
+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
| PROTOCOL | |
+--+--+--+--+--+--+--+--+ |
| |
/ <BIT MAP> /
/ /
+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
where:
ADDRESS An 32 bit Internet address
PROTOCOL An 8 bit IP protocol number
<BIT MAP> A variable length bit map. The bit map
must be a multiple of 8 bits long.
The WKS record is used to describe the well known services supported
by a particular protocol on a particular internet address. The
PROTOCOL field specifies an IP protocol number, and the bit map has
one bit per port of the specified protocol. The first bit
corresponds to port 0, the second to port 1, etc. If the bit map
does not include a bit for a protocol of interest, that bit is
assumed zero. The appropriate values and mnemonics for ports and
protocols are specified in RFC1010.
For example, if PROTOCOL=TCP (6), the 26th bit corresponds to TCP
port 25 (SMTP). If this bit is set, a SMTP server should be
listening on TCP port 25; if zero, SMTP service is not supported on
the specified address.
The purpose of WKS RRs is to provide availability information for
servers for TCP and UDP. If a server supports both TCP and UDP, or
has multiple Internet addresses, then multiple WKS RRs are used.
WKS RRs cause no additional section processing.
Section 3.5, "IN-ADDR.ARPA domain", describes reverse DNS lookups and
is clearly IPv4 dependent.
There are, of course, numerous examples of IPv4 addresses scattered
throughout the document.
3.13. RFC 1042 Standard for the transmission of IP datagrams over IEEE
802 networks
This specification specifically deals with the transmission of IPv4
packets over IEEE 802 networks.
3.14. RFC 1044 Internet Protocol on Network System’s HYPERchannel:
Protocol Specification
There are a variety of methods used in this standard to map IPv4
addresses to 32 bits fields in the HYPERchannel headers. This
specification does not support IPv6.
3.15. RFC 1055 Nonstandard for transmission of IP datagrams over serial
lines: SLIP
This specification is more of an analysis of the shortcomings of SLIP
which is unsurprising. The introduction of PPP as a general
replacement of SLIP has made this specification essentially unused.
No update need be considered.
3.16. RFC 1088 Standard for the transmission of IP datagrams over
NetBIOS networks
This specification documents a technique to encapsulate IP packets
inside NetBIOS packets.
The technique presented of using NetBIOS names of the form
IP.XX.XX.XX.XX will not work for IPv6 addresses since the length of
IPv6 addresses will not fit within the NetBIOS 15 octet name
limitation.
3.17. RFC 1112 Host Extensions for IP Multicasting
This specification defines IP multicast. Parts of the document are
IPv4 dependent.
3.18. RFC 1132 Standard for the transmission of 802.2 packets over IPX
networks
There are no IPv4 dependencies in this specification.
3.19. RFC 1201 Transmitting IP traffic over ARCNET networks
The major concerns of this specification with respect to IPv4
addresses occur in the resolution of ARCnet 8bit addresses to IPv4
addresses in an "ARPlike" method. This is incompatible with IPv6.
3.20. RFC 1209 The Transmission of IP Datagrams over the SMDS Service
This specification defines running IPv4 and ARP over SMDS. The
methods described could easily be extended to support IPv6 packets.
3.21. RFC 1390 Transmission of IP and ARP over FDDI Networks
This specification defines the use of IPv4 address on FDDI networks.
There are numerous IPv4 dependencies in the specification.
In particular the value of the Protocol Type Code (2048 for IPv4) and
a corresponding Protocol Address length (4 bytes for IPv4) needs to
be created. A discussion of broadcast and multicast addressing
techniques is also included, and similarly must be updated for IPv6
networks. The defined MTU limitation of 4096 octets of data (with
256 octets reserved header space) should remain sufficient for IPv6.
3.22. RFC 1661 The Point-to-Point Protocol (PPP)
There are no IPv4 dependencies in this specification.
3.23. RFC 1662 PPP in HDLC-like Framing
There are no IPv4 dependencies in this specification.
3.24. RFC 2427 Multiprotocol Interconnect over Frame Relay
There are no IPv4 dependencies in this specification.
4. Draft Standards
Draft Standards represent the penultimate standard level in the IETF.
A protocol can only achieve draft standard when there are multiple,
independent, interoperable implementations. Draft Standards are
usually quite mature and widely used.
4.1. RFC 951 Bootstrap Protocol (BOOTP)
This protocol is designed specifically for use with IPv4, for
example:
Section 3. Packet Format
All numbers shown are decimal, unless indicated otherwise. The
BOOTP packet is enclosed in a standard IP UDP datagram. For
simplicity it is assumed that the BOOTP packet is never fragmented.
Any numeric fields shown are packed in ’standard network byte
order’, i.e., high order bits are sent first.
In the IP header of a bootrequest, the client fills in its own IP
source address if known, otherwise zero. When the server address is
unknown, the IP destination address will be the ’broadcast address’
255.255.255.255. This address means ’broadcast on the local cable,
(I don’t know my net number)’.
FIELD BYTES DESCRIPTION
----- ----- ---
[...]
ciaddr 4 client IP address;
filled in by client in bootrequest if known.
yiaddr 4 ’your’ (client) IP address;
filled by server if client doesn’t
know its own address (ciaddr was 0).
siaddr 4 server IP address;
returned in bootreply by server.
giaddr 4 gateway IP address,
used in optional cross-gateway booting.
Since the packet format is a fixed 300 bytes in length, an updated
version of the specification could easily accommodate an additional
48 bytes (4 IPv6 fields of 16 bytes to replace the existing 4 IPv4
fields of 4 bytes).
4.2. RFC 1188 Proposed Standard for the Transmission of IP Datagrams
over FDDI Networks