Before introducing IPv6 addressing, this chapter first introduces some issues related to using IP addressing to identify and locate nodes on an IP network. For many years, IP addresses have been considered unique and persistent node identifiers on IP networks. In recent years, especially with the development of the next generation of IP technology, this idea of IP addresses is changing. If we still use the methods used in the past two years to allocate network and node addresses, it will be unnecessary and inefficient.
After introducing the IP Addressing Architecture described in RFC 2373 (IPv6 Addressing Architecture), this chapter first introduces some topics related to IP addressing. Next, we will introduce several possible address allocation methods. This chapter divides IPv6 addressing into the following parts: the structure and naming of 1 2 8-bit addresses and the different types of IPv6 addresses (unicast, multicast, and wildcard ). The designers of www.2cto.com IPv6 can simply expand the address space in the IPv4 addressing architecture. However, this will lead us to lose a huge opportunity to improve the IP address. The great opportunity brought about by the modification of the entire addressing architecture is not only in improving the efficiency of Address allocation, but also in improving the IP address routing performance. This chapter will introduce these improvements, and Chapter 8th will provide a more detailed introduction to IPv6 routing issues. Address Allocation, mobile network technology, and automatic configuration will be detailed later.
RFC 2373 was published in April 1884, and released as early as April, (IPv6 Addressing Architecture ). Most of the changes are considered necessary for clarification, correction, and modification within two and a half years after the initial release of r f c. The most obvious difference between an IPv4 address and an IPv6 address is the length: The IPv4 address is 3 to 2 characters, while the IPv6 address is 1 to 2 8 characters. RFC 2373 not only explains the expression of these addresses, but also introduces different address types and their structures. An IPv4 address can be divided into two to three different parts (network identifier, node identifier, and sometimes subnet identifier). An IPv6 address has a larger address space and supports more fields. There are three types of IPv6 addresses: unicast, multicast, and wildcard addresses. This topic is described in more detail in the next section. Unicast and multicast addresses are similar to IPv4 addresses. However, IPv6 does not support broadcast addresses in IPv4, but adds a wildcard address. This section describes IPv6 addressing models, address types, address expressions, and special cases of addresses.
Address expression: An IPv4 address is generally represented by a four-part intervernal. That is, four numbers are separated by vertices. For example, the following are some valid IPv4 addresses, expressed in decimal integers: the 10.5.3.1 127.0.0.1 201.199.244.101 IPv4 address is often expressed in a group of four two-digit hexadecimal integers or four eight-digit binary integers, but the latter is rare. The length of the IPv6 address www.2cto.com is 4 times that of the IPv4 address, and the complexity of the expression is 4 times that of the IPv4 address. The basic expression of an IPv6 address is X: X, where X is a 4-bit hexadecimal INTEGER (16 digits ). Each number contains four digits, each integer contains four digits, and each address contains eight integers, totaling 1 2 8 bits (4 × 4 × 8 = 128 ). For example, the following are some valid IPv6 addresses: CDCD: 910A: 2222: 5498: 8475: 1111: 3900 2020: 0: 0: 0: C9B4: FF12: 48AA: 1A2B 2000: 0: 0: 0: 0: 0: 0: 1
Note that these integers are hexadecimal integers, where A to F represents 1 0 to 1 5. Each integer in the address must be expressed, but the starting 0 does not need to be expressed. This is a standard IPv6 address expression, and there are two more clear and easy-to-use methods. Some IPv6 addresses may contain a long string of 0 (as in the second and third examples above ). In this case, the "gap" is allowed in the standard to indicate the 0 of this long string. In other words, the address 2000: 0: 0: 0: 0: 0: 1 can be expressed as: 2000 :: 1 The two colons indicate that the address can be extended to a complete 1 2 8-bit address. In this method, only when the first 6-digit group is 0 will the group be replaced by two colons, and the two colons can only appear once in the address.
There may be a third method in the hybrid environment of IPv4 and IPv6. The minimum 3-2 bits in an IPv6 address can be used to represent an IPv4 address, which can be expressed in a hybrid manner, that is, X: d. d. d. d, where X represents a 1 6-digit integer, and d represents an 8-digit decimal integer. For example, IP address 0: 0: 0: 0: 0: 10.0.0.1 www.2cto.com is a valid IPv4 address. The address can also be expressed as: 10.0.0.1 because the IPv6 address is divided into two parts: Subnet prefix and interface identifier, therefore, it is expected that an IP node address can be expressed as an address carrying an additional value in a way similar to a CIDR address, which indicates the number of bits in the address as a mask. That is, the IPv6 Node Address indicates the prefix length, which is differentiated from the IPv6 address by a slash, for example, 1030: 0: 0: 0: C9B4: FF12: 48AA: the prefix used for routing in 1A2B/60 is 6 0 characters in length.
The addressing model IPv6 addressing model is similar to IPv4. Each Unicast address identifies a separate network interface. An IP address is assigned to a network interface rather than a node. Therefore, a node with multiple network interfaces can have multiple IPv6 addresses, and any IPv6 address can represent the node. Although a network interface can be associated with multiple unicast addresses, one Unicast address can only be associated with one network interface. Each network interface must have at least one Unicast address. Here is a very important statement and a very important exception. This statement is related to the use of point-to-point links. In IPv4, all network interfaces, including point-to-point links connecting a node to a router (using many dial-up Internet connections), require a dedicated IP address. As many organizations start to use point-to-point links to connect their branches, each link requires its own subnet, which consumes a lot of address space. In IPv6, if any point-to-point link endpoint does not need to receive or send data from a non-neighbor node, they do not need a special address. That is, if the two nodes are mainly transmitting business flows, they do not need IPv6 addresses.
The requirement to assign a globally unique Unicast address to each network interface hinders the expansion of IPv4 addresses. A server that provides general services may crash in high demand. Therefore, an important exception is raised in the IPv6 address model: If the hardware can correctly share its network load on multiple network interfaces, then multiple network interfaces can share an IPv6 address. This makes it possible to expand from the server to the Server Load balancer cluster, instead of upgrading hardware when the demand for servers increases. The multicast and wildcard addresses to be discussed below are also related to network interfaces. A network interface can have multiple addresses of any type. Www.2cto.com address space RFC 2373 contains an IPv6 address space "Diagram", which shows how the address space is allocated. Different types of address space are allocated, the prefix (the first bit value in the Address Allocation) and the length of the address allocation as part of the whole address space.
Pay attention to the following points in IPv6 Address Allocation. First, in RFC 1884, 1/4 of the address space is used for two different types of addresses: 1/8 is a vendor-based unicast address, and 1/8 is a geo-location-based unicast address. It is expected that the address can be allocated based on the physical location of the network service provider or user's network. Supplier-based clustering, just as it was originally named, requires the network to obtain IP addresses that can be aggregated from providers that provide Internet access. However, this approach is not a perfect solution for large organizations with distant branches, because many of them may use different vendors. Supplier-based aggregation brings more IP address management problems to these large units.
Steve Deering proposed to use location-based address allocation as a method in SIP (the predecessor of SIPP, as described in chapter 4th. Different from Vendor-based addresses, these addresses are allocated in an IPv4-like way. These addresses are related to geographical locations, and the supplier will have to reserve additional routers to support networks outside the IPv6 address space that can be clustered. Www.2cto.com
ISP does not actually agree with this solution because managing location-based addressing significantly increases complexity (and cost ). On the other hand, it is difficult to configure and reconfigure supplier-based addresses, which also raises many objections to supplier-based allocation schemes. If the IPv4-based automatic configuration scheme (such as DHCP) is not widely used, the network of all organizations will have a huge management problem. Although IPv6 provides better support for the automatic configuration function, it does not integrate the geographic location allocation method. Note that most of the address space is not allocated, and the first part of the address allocation is retained.