7

Am I correct, that first address of the subnet is a valid addresses to configure in hosts/routers in case of IPv4 and IPv6 point to point networks? For example, in case of 192.0.2.0/31 one of the hosts would get 192.0.2.0/31 and the other would get 192.0.2.1/31. Or in case of 2001:db8::/127, one of the devices would get the address 2001:db8::/127 and the other would get the 2001:db8::1/127. In other words, the 192.0.2.0 or 2001:db8:: is a completely normal address?

1

1 Answer 1

8

Yes, that is correct.

IPv4:

RFC 3021, Using 31-Bit Prefixes on IPv4 Point-to-Point Links explains it for IPv4, but be aware that not all vendors, in particular Microsoft, support /31 networks:

2. Considerations of 31-Bit Prefixes

This section discusses the possible effects, on Internet routing and operations, of using 31-bit prefixes on point-to-point links. The considerations made here are also reflected in Section 3.

For the length of this document, an IP address will be interpreted as:

   <Network-number><Host-number>

where the <Host-number> represents the unmasked portion of the address and it SHOULD be at least 1 bit wide. The "-1" notation is used to mean that the field has all 1 bits. For purposes of this discussion, the routing system is considered capable of classless, or CIDR [RFC1519], routing.

2.1. Addressing

If a 31-bit subnet mask is assigned to a point-to-point link, it leaves the <Host-number> with only 1 bit. Consequently, only two possible addresses may result:

   {<Network-number>, 0} and {<Network-number>, -1}

These addresses have historically been associated with network and broadcast addresses (see Section 2.2). In a point-to-point link with a 31-bit subnet mask, the two addresses above MUST be interpreted as host addresses.

2.2. Broadcast and Network Addresses

There are several historically recognized broadcast addresses [RFC1812] on IP segments:

  (a) the directed broadcast

       {<Network-number>, -1}

       {<Network-number>, 0}

     The network address itself {<Network-number>, 0} is an
     obsolete form of directed broadcast, but it may still be used
     by older hosts.

  (b) the link local (or limited) broadcast

       {-1, -1}

       {0, 0}

     The {0, 0} form of a limited broadcast is obsolete, but may
     still be present in a network.

Using a 31-bit prefix length leaves only two numbering possibilities (see Section 2.1), eliminating the use of a directed broadcast to the link (see Section 2.2.1). The limited broadcast MUST be used for all broadcast traffic on a point-to-point link with a 31-bit subnet mask assigned to it.

The <Network-number> is assigned by the network administrator as unique to the local routing domain. The decision as to whether a destination IP address should be a directed broadcast or not is made by the router directly connected to the destination segment. Current forwarding schemes and algorithms are not affected in remote routers.

The intent of this document is to discuss the applicability and operation of 31-bit prefixes on point-to-point links. The effects (if any) on other types of interfaces are not considered.

2.2.1. Directed Broadcast

When a device wants to reach all the hosts on a given (remote, rather than directly connected) subnet, it may set the packet's destination address to the link's subnet broadcast address. This operation is not possible for point-to-point links with a 31-bit prefix.

As discussed in Section 6, the loss of functionality of a directed broadcast may actually be seen as a beneficial side effect, as it slightly enhances the network's resistance to a certain class of DoS Attacks[RFC2644, SMURF].

2.3. Impact on Current Routing Protocols

Networks with 31-bit prefixes have no impact on current routing protocols. Most of the currently deployed routing protocols have been designed to provide classless routing. Furthermore, the communication between peers is done using multicast, limited broadcast or unicast addresses (all on the local network), none of which are affected with the use of 31-bit subnet masks.

Think of it this way for IPv4, every packet sent on a /31 network is actually destined for every other host (there is only one) on the network, which is the definition of a broadcast, so the broadcast doesn't matter on such a network.


IPv6:

IPv6 never had broadcast, so, unlike IPv4, all the addresses in an IPv6 network are available as host addresses, including the all-zeroes and all-ones addresses. IPv6 makes heavy use of multicast.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.