ipv4.md 4.6 KB


title: IPv4 Theory breadcrumbs:

  • title: Network --- {% include header.md %}

Special Prefixes and Addresses

| Prefix | Description | |-|-| | 0.0.0.0/8 | Current network | | 10.0.0.0/8 | Private network | | 100.64.0.0/10 | Shared address space for CGN | | 127.0.0.0/8 | Localhost | | 169.254.0.0/16 | Link-local autoconfiguration | | 172.16.0.0/12 | Private network | | 192.0.0.0/24 | IETF Protocol Assignments | | 192.0.2.0/24 | Documentation (TEST-NET-1) | | 192.18.0.0/15 | Inter-network benchmarking | | 192.51.100.0/24 | Documentation (TEST-NET-2) | | 192.88.99.0/24 | 6to4 anycast (deprecated) | | 192.168.0.0/16 | Private network | | 203.0.113.0/24 | Documentation (TEST-NET-3) | | 224.0.0.0/4 | Multicast (formerly Class D) | | 240.0.0.0/4 | Reserved (formerly class E) | | 255.255.255.255/32 | Limited broadcast |

Multicast (Main)

| Range | Description | |-|-| | 224.0.0.0/4 | Multicast range | | 224.0.0.0/24 | Local Network Control, for local router protocols, like OSPF, uses TTL=1 | | 224.0.1.0/24 | Internetwork Control, for global protocols, like NTP | | 224.0.2.0-224.0.255.255 | AD-HOC I, publicly routable and publicly assigned | | 224.1.0.0/16 | Reserved | | 224.2.0.0/16 | Session Description Protocol/Session Announcement Protocol (SDP/SAP) | | 224.3.0.0/15 | AD-HOC II, see block I | | 224.5.0.0-224.255.255.255 | Reserved | | 232.0.0.0/8 | SSM range, locally assigned | | 233.0.0.0-233.251.255.255 | GLOP, /24 blocks for 16-bit ASNs, experimental | | 233.252.0.0/14 | AD-HOC III, see block I | | 234.0.0.0-238.255.255.255 | Reserved | | 239.0.0.0/8 | Administratively scoped, for use within a private domain, like RFC 1918 |

Multicast (Special)

| Range | Description | |-|-| | 224.0.0.1 | All systems on this subnet | | 224.0.0.2 | All routers on this subnet | | 224.0.0.22 | IGMP | | 224.0.0.251 | mDNS | | 224.0.0.252 | LLMNR |

Special Addresses

  • The first address in a network is reserved for identifying the network and cannot be used by any hosts.
  • The last address in the network is reserved for directed broadcasts targeted at all hosts within the certain network. It it routable and frequently blocked by the last-hop router.

Addressing

Classful Routing

Originally the IPv4 address space was split into five classes with fixed, implicit subnet masks, as seen below:

| Class | Leading bits | First address | Network bits | Purpose | | - | - | - | | A | 0 | 0.0.0.0 | 8 | Unicast | | B | 10| 128.0.0.0 | 16 | Unicast | | C | 110 | 192.0.0.0 | 24 | Unicast | | D | 1110 | 224.0.0.0 | N/A | Multicast | | E | 1111 | 240.0.0.0 | N/A | Reserved |

VLSM and CIDR

Variable-length subnet masking (VLSM) allows splitting networks into multiple smaller networks (subnetting). It is the opposite of fixed-length subnet masking.

Classless inter-domain routing (CIDR) allows combining multiple smaller networks (with a common prefix) into a larger network (supernetting). It is the opposite of classful routing.

The terms are frequently interchanged and now typically used to refer to the same thing.

Protocols

Internet Group Messaging Protocol (IGMP)

  • For multicast cooordination between the host and the first-hop router.
  • Allows multicast listeners to join and leave multicast groups, and allows the router to query the listeners for group memberships.
  • IGMPv1 (RFC 1054):
    • Mostly replaced by ICMPv2 and ICMPv3, rarely used.
    • The querier queries all hosts at local address 224.0.0.1, and hosts respond.
    • Hosts have no mechanism for leaving a group, other than waiting for the timeout. This can lead to being a member of a very large number of groups while "channel surfing".
    • It has no querier election method, other than relying on PIM DR election.
  • IGMPv2 (RFC 2236):
    • Adds a leave process, group queries, querier election (separated from DR election) and a maximum response time (MRT) field.
    • Group queries are only sent to the specific groups and not all hosts.
    • The maximum response time (MRT) is used in queries to inform hosts about how long the router will wait for a report. Hosts will wait a random amount of time less than the MRT and then sends a report if no other host has sent one yet. This reduces the amount of reports in the local network. IGMPv1 uses a hardcoded value of 10 seconds instead. The maximum configurable value is 25 seconds (255s/10). If the timer runs out on the router and no reports have been received, it informs PIM that there are no more listeners.
  • Configuration and commands: See Multicast.

{% include footer.md %}