SubnetKit › /30 and /31 Subnets for Point-to-Point Links
/30 and /31 Subnets for Point-to-Point Links: how it works
A link between two routers needs exactly two addresses. The traditional answer is a /30, which reserves four addresses to deliver two. The modern answer, standardised in RFC 3021, is a /31, which uses both addresses and wastes none.
SubnetKit handles both correctly: it reports 2 usable hosts for /30 and 2 for /31 rather than the naive 0. The tool is free and runs entirely in your browser, so you can plan dozens of links without any account.
Worked example: 10.0.0.0/30
- Subnet mask: 255.255.255.252 (wildcard 0.0.0.3)
- Network address: 10.0.0.0
- Usable hosts: 10.0.0.1 and 10.0.0.2 (one per router)
- Broadcast: 10.0.0.3
- Next /30: 10.0.0.4/30, then 10.0.0.8/30, 10.0.0.12/30 and so on in steps of 4
Because the block size is 4, a valid /30 always starts at a multiple of 4 in the last octet. 10.0.0.6/30 is a host inside 10.0.0.4/30, not a network address, and SubnetKit normalises it for you and shows the real network.
/31 links and why they are allowed
RFC 3021 permits a /31 on point-to-point interfaces because such links have no need for a broadcast address: there is only one other endpoint. 10.0.0.0/31 therefore assigns 10.0.0.0 to one router and 10.0.0.1 to the other, with mask 255.255.255.254.
The saving is significant at scale. A single /24 provides 64 /30 links (128 usable addresses) but 128 /31 links (256 usable addresses). Cisco IOS, IOS-XE, Junos, Arista EOS and Linux all support /31 on routed interfaces; older access switches and some firewalls do not, so check before deploying. For a loopback, use a /32: one address, no waste.
In SubnetKit's VLSM tab, the Use /31 for 2-host links switch applies this rule automatically to every requirement of 2 hosts.
Frequently asked questions
How many usable IP addresses are in a /30?
Two. The block has four addresses: network, two hosts and broadcast.
How many usable addresses are in a /31?
Two, under RFC 3021. Both addresses in the block are assigned to the endpoints because a point-to-point link has no broadcast address.
Should I use /30 or /31 for router links?
Use /31 where both devices support it to halve address consumption. Use /30 for compatibility with legacy equipment or where the vendor documentation does not list /31 support.
What is the subnet mask for /30?
255.255.255.252. For /31 it is 255.255.255.254 and for a /32 host route it is 255.255.255.255.
Looking for the full guide, tips and the complete FAQ? Read the main SubnetKit page.