hpr4623 :: A brief infodump on the Broadcast Address and Routing

Jon gives a little information on what the Broadcast address is and IPv4 Routing in general

Hosted by Jon The Nice Guy on Wednesday, 2026-04-22 is flagged as Clean and is released under a CC-BY-SA license.
IPv4, Routing, IP Networking. (Be the first).

Listen in ogg, opus, or mp3 format. Play now:

Duration: 00:05:46
Download the transcription and subtitles.

Networking.

This series will try and explain the basics of networking to the listener as well as introduce more detailed topics.

Hello Hacker Public Radio, this is JonTheNiceGuy.

On the HPR Community News for January 2025 , Ken, Kevie and Some Guy On The Internet were talking about network addresses. As this was part of my job for several years, I thought I might talk about this for a couple of minutes.

All IP Networks now use what we refer to as CIDR based addressing, so you'll often see these expressed as "/24", "/16" and so on. This is "how many '1s' are in the binary representation of the local portion of this network. Windows is one of the last remaining platforms to refer to these as Netmasks, and express them as the four octets in decimal representation of those 1s, so /24 is 24 1s in a row, or 255.255.255.0, /16 is 255.255.0.0 and so on.

But what does this have to do with networks and networking? There are two pieces to this, the first is for Broadcasts, or how a node with an IPv4 address asks all the local nodes in an IPv4 network address range how to find other things, and the other is for routing.

Let's talk about Broadcasts. Right, so back when IPv4 (or just TCP/IP as we knew it then) was being developed to integrate into operating systems, most developers read the Request for Comments document about this new IP protocol and put the address that the devices should contact to talk to all the hosts on the local network segment, or the "broadcast address" as it's better known, as the last available IP address in that subnet. In a /24, that would be the .255 address in the subnet. The engineers at, from memory, either Sun Microsystems or DEC, read the same document and called that address the "Network Address" and made it the first available IP address in the subnet, the .0.

In the end the "Broadcast" address won out in IPv4 networks, and the Network address was left to history, but there are still just enough of those legacy systems knocking around that it was always seen as a bit of a risk to allow the Network Address back into the pool of addresses...

This is most often currently seen in printer setups, or for ARP address requests, but has largely fallen out of favour, in favour of Multicasts. In fact, so much so, that IPv6 has dropped the broadcast address entirely, and uses multicast.

But why does the number of bits matter?

This now comes back to routing.

Routing is where a host works out what the most specific route is to get to a given IP address. On a typical home IPv4 network this is fairly binary - you have a default gateway, usually on either .1 or .254 in your /24, and most of the traffic goes to that. In networks which need a highly available, or HA, router setup, you may see up to three IP addresses being used by your router, with some method of mapping the "virtual" address of the next hop gateway to a physical device. That said, even on that simple home network, there are at least two other networks which are used, and that's your "local" or "loopback" interface, which is able to use all the addresses in the range 127.0.0.0/8, but typically only binds to 127.0.0.1, and the network you are connected to, which doesn't require routing. Most home routers use 192.168.0.0/24 or 192.168.1.0/24.

In order to work out how to get the next hop to the IP address you're trying to reach, the computer turns both the IP address you're trying to reach, and all the CIDR masks in the routing table into binary numbers, and then matches the one which is most specifically accurate to work out what to do with it.

So, for example, if you have an IP address of 10.0.0.1/8, then your network mask is 00001010. If you are trying to find another address in that network, you only need to match that first 8 bits. An address of 11.0.0.1 doesn't match, because the first 8 bits, 00001011 doesn't match the routed network. More specific routes will take longer to match, which is why some of the routing tables on the core networks dedicate whole CPU cores to matching parts of the routing table. It's also why in the pre-IPv4 exhaustion days, IP addresses were typically sold in large blocks, usually to single geographic regions, so that you only had to match a large supernet, or large block of subnets in one go, not lots of smaller subnets.

Once you understand this about IPv4, IPv6 works the same way for routing, except the address space is four times larger, with the number of bits in a network area being 128, as opposed to IPv4's 32 bits.

Thanks to the janitors for triggering this bit of an info dump, and I hope it's been of interest to you!

This is jontheniceguy, signing off from HPR.


Comments

Subscribe to the comments RSS feed.

Leave Comment

Note to Verbose Commenters
If you can't fit everything you want to say in the comment below then you really should record a response show instead.

Note to Spammers
All comments are moderated. All links are checked by humans. We strip out all html. Feel free to record a show about yourself, or your industry, or any other topic we may find interesting. We also check shows for spam :).

Provide feedback
Your Name/Handle:
Title:
Comment:
Anti Spam Question: What does the letter P in HPR stand for?