IPv4 subnet/CIDR table from OccupytheWeb on Twitter: “Network Basics for Hackers: Subnetting, Subnet Masks and CIDR Notation …”
I wrote about programs and scripts doing IPv4 subnet calculation, but sometimes it is easier to have a table at hand, so here is the one I found at [Wayback/Archive] OccupytheWeb on Twitter: “Network Basics for Hackers: Subnetting, Subnet Masks and CIDR Notation #networks #networkbasics #subnetting #infosec #networks4hackers #cyberwarrior #cyberwarrior #networkbasics #networkbasics subnet”
Notes:
Some earlier related posts:
And another example where the same table was used: [Wayback/Archive] tcpip – How to understand the “A subnet Example”? – Server Fault.
Since this one from Classless Inter-Domain Routing: IPv4 CIDR blocks – Wikipedia is much better, I copied it in full then colourised it using the above scheme and added the mask octet and binary mask columns, then added the “(max hosts)” to the “Decimal” columns:
IPv4 CIDR blocks
Address
formatDifference
to last addressMaskMask
octetBinary mask
in octetAddressesRelative
to class
A, B, CRestrictions
on a, b, c and d
(0..255 unless noted)Typical useDecimal
(max hosts)2na.b.c.d/32+0.0.0.0255.255.255.2554111111111201⁄256 CHost routea.b.c.d/31+0.0.0.1255.255.255.2544111111102211⁄128 Cd = 0 … (2n) … 254Point-to-point links (RFC 3021)a.b.c.d/30+0.0.0.3255.255.255.2524111111004221⁄64 Cd = 0 … (4n) … 252Point-to-point links (glue network)a.b.c.d/29+0.0.0.7255.255.255.2484111110008231⁄32 Cd = 0 … (8n) … 248Smallest multi-host networka.b.c.d/28+0.0.0.15255.255.255.24041111000016241⁄16 Cd = 0 … (16n) … 240Small LANa.b.c.d/27+0.0.0.31255.255.255.2244111000003225⅛ Cd = 0 … (32n) … 224a.b.c.d/26+0.0.0.63255.255.255.1924110000006426¼ Cd = 0, 64, 128, 192a.b.c.d/25+0.0.0.127255.255.255.12841000000012827½ Cd = 0, 128Large LANa.b.c.0/24+0.0.0.255255.255.255.0311111111256281 Ca.b.c.0/23+0.0.1.255255.255.254.0311111110512292 Cc = 0 … (2n) … 254a.b.c.0/22+0.0.3.255255.255.252.03111111001,0242104 Cc = 0 … (4n) … 252Small businessa.b.c.0/21+0.0.7.255255.255.248.03111110002,0482118 Cc = 0 … (8n) … 248Small ISP/ large businessa.b.c.0/20+0.0.15.255255.255.240.03111100004,09621216 Cc = 0 … (16n) … 240a.b.c.0/19+0.0.31.255255.255.224.03111000008,19221332 Cc = 0 … (32n) … 224ISP/ large businessa.b.c.0/18+0.0.63.255255.255.192.031100000016,38421464 Cc = 0, 64, 128, 192a.b.c.0/17+0.0.127.255255.255.128.031000000032,768215128 Cc = 0, 128a.b.0.0/16+0.0.255.255255.255.0.021111111165,536216256 C = Ba.b.0.0/15+0.1.255.255255.254.0.0211111110131,0722172 Bb = 0 … (2n) … 254a.b.0.0/14+0.3.255.255255.252.0.0211111100262,1442184 Bb = 0 … (4n) … 252a.b.0.0/13+0.7.255.255255.248.0.0211111000524,2882198 Bb = 0 … (8n) … 248a.b.0.0/12+0.15.255.255255.240.0.02111100001,048,57622016 Bb = 0 … (16n) … 240a.b.0.0/11+0.31.255.255255.224.0.02111000002,097,15222132 Bb = 0 … (32n) … 224a.b.0.0/10+0.63.255.255255.192.0.02110000004,194,30422264 Bb = 0, 64, 128, 192a.b.0.0/9+0.127.255.255255.128.0.02100000008,388,608223128 Bb = 0, 128a.0.0.0/8+0.255.255.255255.0.0.011111111116,777,216224256 B = ALargest IANA block allocationa.0.0.0/7+1.255.255.255254.0.0.011111111033,554,4322252 Aa = 0 … (2n) … 254a.0.0.0/6+3.255.255.255252.0.0.011111110067,108,8642264 Aa = 0 … (4n) … 252a.0.0.0/5+7.255.255.255248.0.0.0111111000134,217,7282278 Aa = 0 … (8n) … 248a.0.0.0/4+15.255.255.255240.0.0.0111110000268,435,45622816 Aa = 0 … (16n) … 240a.0.0.0/3+31.255.255.255224.0.0.0111100000536,870,91222932 Aa = 0 … (32n) … 224a.0.0.0/2+63.255.255.255192.0.0.01110000001,073,741,82423064 Aa = 0, 64, 128, 192a.0.0.0/1+127.255.255.255128.0.0.01100000002,147,483,648231128 Aa = 0, 1280.0.0.0/0+255.255.255.2550.0.0.00000000004,294,967,296232256 AEntire IPv4 Internet, default route.
If you want to modify the table even further, please fork https://gist.github.com/jpluimers/d2665ef16ed20ec9b8266bf154c56830
For now it is hosted as HTML page at https://gist.githack.com/jpluimers/d2665ef16ed20ec9b8266bf154c56830/raw/27cd4c0583771198c65e68f21ee9968c1af64827/IPv4-CIDR-blocks.html
I posted a bitmap of it at [Wayback/Archive] Jeroen Wiert Pluimers on Twitter: “@three_cube For now the HTML is served at …”
–jeroen
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Show hidden characters
<html xmlns="
http://www.w3.org/1999/xhtml" lang="en" class="wf-inactive"><head profile="
http://gmpg.org/xfn/11"><body><h1><span id="IPv4_CIDR_blocks" class="mw-headline">IPv4 CIDR blocks</span></h1><table class="wikitable" rules="all"><tbody><tr><th rowspan="2">Address<br>format</th><th rowspan="2">Difference<br>to last address</th><th rowspan="2">Mask</th><th rowspan="2">Mask<br>octet</th><th rowspan="2">Binary mask<br>in octet</th><th colspan="2">Addresses</th><th rowspan="2">Relative<br>to class<br>A, B, C</th><th rowspan="2">Restrictions<br>on <i>a</i>, <i>b</i>, <i>c</i> and <i>d</i><br><small>(0..255 unless noted)</small></th><th rowspan="2">Typical use</th></tr><tr><th>Decimal<br>(max hosts)</th><th bgcolor="lightgreen">2<sup><i>n</i></sup></th></tr><tr bgcolor="lightyellow"><td><i><span class="ipaddr">a.b.c.d/32</span></i></td><td>+<i><span class="ipaddr">0.0.0.0</span></i></td><td><i><span class="ipaddr">255.255.255.<span style="color:red;">255</span></span></i></td><td>4</td><td><span style="color:#ff0000;">11111111</span></td><td>1</td><td>2<sup>0</sup></td><td><span class="frac" role="math"><span class="num">1</span>⁄<span class="den">256</span></span> C</td><td></td><td>Host route</td></tr><tr><td><i><span class="ipaddr">a.b.c.d/31</span></i></td><td>+<i><span class="ipaddr">0.0.0.1</span></i></td><td><i><span class="ipaddr">255.255.255.<span style="color:red;">254</span></span></i></td><td>4</td><td><span style="color:red;">11111110</span></td><td>2</td><td bgcolor="lightgreen">2<sup>1</sup></td><td><span class="frac" role="math"><span class="num">1</span>⁄<span class="den">128</span></span> C</td><td><i>d</i> = 0 … (2<i>n</i>) … 254</td><td>Point-to-point links (<a class="mw-redirect" title="RFC (identifier)" href="
https://en.wikipedia.org/wiki/RFC_(identifier)">RFC</a> <a class="external text" href="
https://datatracker.ietf.org/doc/html/rfc3021" rel="nofollow">3021</a>)</td></tr><tr><td><i><span class="ipaddr">a.b.c.d/30</span></i></td><td>+<i><span class="ipaddr">0.0.0.3</span></i></td><td><i><span class="ipaddr">255.255.255.<span style="color:red;">252</span></span></i></td><td>4</td><td><span style="color:red;">11111100</span></td><td>4</td><td bgcolor="lightgreen">2<sup>2</sup></td><td><span class="frac" role="math"><span class="num">1</span>⁄<span class="den">64</span></span> C</td><td><i>d</i> = 0 … (4<i>n</i>) … 252</td><td><span class="nowrap">Point-to-point links (glue network)</span></td></tr><tr><td><i><span class="ipaddr">a.b.c.d/29</span></i></td><td>+<i><span class="ipaddr">0.0.0.7</span></i></td><td><i><span class="ipaddr">255.255.255.<span style="color:red;">248</span></span></i></td><td>4</td><td><span style="color:red;">11111000</span></td><td>8</td><td bgcolor="lightgreen">2<sup>3</sup></td><td><span class="frac" role="math"><span class="num">1</span>⁄<span class="den">32</span></span> C</td><td><i>d</i> = 0 … (8<i>n</i>) … 248</td><td>Smallest multi-host network</td></tr><tr><td><i><span class="ipaddr">a.b.c.d/28</span></i></td><td>+<i><span class="ipaddr">0.0.0.15</span></i></td><td><i><span class="ipaddr">255.255.255.<span style="color:red;">240</span></span></i></td><td>4</td><td><span style="color:red;">11110000</span></td><td>16</td><td bgcolor="lightgreen">2<sup>4</sup></td><td><span class="frac" role="math"><span class="num">1</span>⁄<span class="den">16</span></span> C</td><td><i>d</i> = 0 … (16<i>n</i>) … 240</td><td rowspan="3">Small <a class="mw-redirect" title="LAN" href="
https://en.wikipedia.org/wiki/LAN">LAN</a></td></tr><tr><td><i><span class="ipaddr">a.b.c.d/27</span></i></td><td>+<i><span class="ipaddr">0.0.0.31</span></i></td><td><i><span class="ipaddr">255.255.255.<span style="color:red;">224</span></span></i></td><td>4</td><td><span style="color:red;">11100000</span></td><td>32</td><td bgcolor="lightgreen">2<sup>5</sup></td><td>⅛ C</td><td><i>d</i> = 0 … (32<i>n</i>) … 224</td></tr><tr><td><i><span class="ipaddr">a.b.c.d/26</span></i></td><td>+<i><span class="ipaddr">0.0.0.63</span></i></td><td><i><span class="ipaddr">255.255.255.<span style="color:red;">192</span></span></i></td><td>4</td><td><span style="color:red;">11000000</span></td><td>64</td><td bgcolor="lightgreen">2<sup>6</sup></td><td>¼ C</td><td><i>d</i> = 0, 64, 128, 192</td></tr><tr><td><i><span class="ipaddr">a.b.c.d/25</span></i></td><td>+<i><span class="ipaddr">0.0.0.127</span></i></td><td><i><span class="ipaddr">255.255.255.<span style="color:red;">128</span></span></i></td><td>4</td><td><span style="color:red;">10000000</span></td><td>128</td><td bgcolor="lightgreen">2<sup>7</sup></td><td>½ C</td><td><i>d</i> = 0, 128</td><td rowspan="2">Large <a class="mw-redirect" title="LAN" href="
https://en.wikipedia.org/wiki/LAN">LAN</a></td></tr><tr bgcolor="lightyellow"><td><i><span class="ipaddr">a.b.c.0/24</span></i></td><td>+<i><span class="ipaddr">0.0.0.255</span></i></td><td><i><span class="ipaddr">255.255.<span style="color:red;">255</span>.0</span></i></td><td>3</td><td><span style="color:red;">11111111</span></td><td>256</td><td>2<sup>8</sup></td><td>1 C</td><td></td></tr><tr><td><i><span class="ipaddr">a.b.c.0/23</span></i></td><td>+<i><span class="ipaddr">0.0.1.255</span></i></td><td><i><span class="ipaddr">255.255.<span style="color:red;">254</span>.0</span></i></td><td>3</td><td><span style="color:red;">11111110</span></td><td>512</td><td bgcolor="lightgreen">2<sup>9</sup></td><td>2 C</td><td><i>c</i> = 0 … (2<i>n</i>) … 254</td><td></td></tr><tr><td><i><span class="ipaddr">a.b.c.0/22</span></i></td><td>+<i><span class="ipaddr">0.0.3.255</span></i></td><td><i><span class="ipaddr">255.255.<span style="color:red;">252</span>.0</span></i></td><td>3</td><td><span style="color:red;">11111100</span></td><td>1,024</td><td bgcolor="lightgreen">2<sup>10</sup></td><td>4 C</td><td><i>c</i> = 0 … (4<i>n</i>) … 252</td><td>Small business</td></tr><tr><td><i><span class="ipaddr">a.b.c.0/21</span></i></td><td>+<i><span class="ipaddr">0.0.7.255</span></i></td><td><i><span class="ipaddr">255.255.<span style="color:red;">248</span>.0</span></i></td><td>3</td><td><span style="color:red;">11111000</span></td><td>2,048</td><td bgcolor="lightgreen">2<sup>11</sup></td><td>8 C</td><td><i>c</i> = 0 … (8<i>n</i>) … 248</td><td rowspan="2">Small <a class="mw-redirect" title="ISP" href="
https://en.wikipedia.org/wiki/ISP">ISP</a>/ large business</td></tr><tr><td><i><span class="ipaddr">a.b.c.0/20</span></i></td><td>+<i><span class="ipaddr">0.0.15.255</span></i></td><td><i><span class="ipaddr">255.255.<span style="color:red;">240</span>.0</span></i></td><td>3</td><td><span style="color:red;">11110000</span></td><td>4,096</td><td bgcolor="lightgreen">2<sup>12</sup></td><td>16 C</td><td><i>c</i> = 0 … (16<i>n</i>) … 240</td></tr><tr><td><i><span class="ipaddr">a.b.c.0/19</span></i></td><td>+<i><span class="ipaddr">0.0.31.255</span></i></td><td><i><span class="ipaddr">255.255.<span style="color:red;">224</span>.0</span></i></td><td>3</td><td><span style="color:red;">11100000</span></td><td>8,192</td><td bgcolor="lightgreen">2<sup>13</sup></td><td>32 C</td><td><i>c</i> = 0 … (32<i>n</i>) … 224</td><td rowspan="3"><a class="mw-redirect" title="ISP" href="
https://en.wikipedia.org/wiki/ISP">ISP</a>/ large business</td></tr><tr><td><i><span class="ipaddr">a.b.c.0/18</span></i></td><td>+<i><span class="ipaddr">0.0.63.255</span></i></td><td><i><span class="ipaddr">255.255.<span style="color:red;">192</span>.0</span></i></td><td>3</td><td><span style="color:red;">11000000</span></td><td>16,384</td><td bgcolor="lightgreen">2<sup>14</sup></td><td>64 C</td><td><i>c</i> = 0, 64, 128, 192</td></tr><tr><td><i><span class="ipaddr">a.b.c.0/17</span></i></td><td>+<i><span class="ipaddr">0.0.127.255</span></i></td><td><i><span class="ipaddr">255.255.<span style="color:red;">128</span>.0</span></i></td><td>3</td><td><span style="color:red;">10000000</span></td><td>32,768</td><td bgcolor="lightgreen">2<sup>15</sup></td><td>128 C</td><td><i>c</i> = 0, 128</td></tr><tr bgcolor="lightyellow"><td><i><span class="ipaddr">a.b.0.0/16</span></i></td><td>+<i><span class="ipaddr">0.0.255.255</span></i></td><td><i><span class="ipaddr">255.<span style="color:red;">255</span>.0.0</span></i></td><td>2</td><td><span style="color:red;">11111111</span></td><td>65,536</td><td>2<sup>16</sup></td><td>256 C = B</td><td></td><td></td></tr><tr><td><i><span class="ipaddr">a.b.0.0/15</span></i></td><td>+<i><span class="ipaddr">0.1.255.255</span></i></td><td><i><span class="ipaddr">255.<span style="color:red;">254</span>.0.0</span></i></td><td>2</td><td><span style="color:red;">11111110</span></td><td>131,072</td><td bgcolor="lightgreen">2<sup>17</sup></td><td>2 B</td><td><i>b</i> = 0 … (2<i>n</i>) … 254</td><td></td></tr><tr><td><i><span class="ipaddr">a.b.0.0/14</span></i></td><td>+<i><span class="ipaddr">0.3.255.255</span></i></td><td><i><span class="ipaddr">255.<span style="color:red;">252</span>.0.0</span></i></td><td>2</td><td><span style="color:red;">11111100</span></td><td>262,144</td><td bgcolor="lightgreen">2<sup>18</sup></td><td>4 B</td><td><i>b</i> = 0 … (4<i>n</i>) … 252</td><td></td></tr><tr><td><i><span class="ipaddr">a.b.0.0/13</span></i></td><td>+<i><span class="ipaddr">0.7.255.255</span></i></td><td><i><span class="ipaddr">255.<span style="color:red;">248</span>.0.0</span></i></td><td>2</td><td><span style="color:red;">11111000</span></td><td>524,288</td><td bgcolor="lightgreen">2<sup>19</sup></td><td>8 B</td><td><i>b</i> = 0 … (8<i>n</i>) … 248</td><td></td></tr><tr><td><i><span class="ipaddr">a.b.0.0/12</span></i></td><td>+<i><span class="ipaddr">0.15.255.255</span></i></td><td><i><span class="ipaddr">255.<span style="color:red;">240</span>.0.0</span></i></td><td>2</td><td><span style="color:red;">11110000</span></td><td>1,048,576</td><td bgcolor="lightgreen">2<sup>20</sup></td><td>16 B</td><td><i>b</i> = 0 … (16<i>n</i>) … 240</td><td></td></tr><tr><td><i><span class="ipaddr">a.b.0.0/11</span></i></td><td>+<i><span class="ipaddr">0.31.255.255</span></i></td><td><i><span class="ipaddr">255.<span style="color:red;">224</span>.0.0</span></i></td><td>2</td><td><span style="color:red;">11100000</span></td><td>2,097,152</td><td bgcolor="lightgreen">2<sup>21</sup></td><td>32 B</td><td><i>b</i> = 0 … (32<i>n</i>) … 224</td><td></td></tr><tr><td><i><span class="ipaddr">a.b.0.0/10</span></i></td><td>+<i><span class="ipaddr">0.63.255.255</span></i></td><td><i><span class="ipaddr">255.<span style="color:red;">192</span>.0.0</span></i></td><td>2</td><td><span style="color:red;">11000000</span></td><td>4,194,304</td><td bgcolor="lightgreen">2<sup>22</sup></td><td>64 B</td><td><i>b</i> = 0, 64, 128, 192</td><td></td></tr><tr><td><i><span class="ipaddr">a.b.0.0/9</span></i></td><td>+<i><span class="ipaddr">0.127.255.255</span></i></td><td><i><span class="ipaddr">255.<span style="color:red;">128</span>.0.0</span></i></td><td>2</td><td><span style="color:red;">10000000</span></td><td>8,388,608</td><td bgcolor="lightgreen">2<sup>23</sup></td><td>128 B</td><td><i>b</i> = 0, 128</td><td></td></tr><tr bgcolor="lightyellow"><td><i><span class="ipaddr">a.0.0.0/8</span></i></td><td>+<i><span class="ipaddr">0.255.255.255</span></i></td><td><i><span class="ipaddr"><span style="color:red;">255</span>.0.0.0</span></i></td><td>1</td><td><span style="color:red;">11111111</span></td><td>16,777,216</td><td>2<sup>24</sup></td><td>256 B = A</td><td></td><td>Largest <a title="Internet Assigned Numbers Authority" href="
https://en.wikipedia.org/wiki/Internet_Assigned_Numbers_Authority">IANA</a> block allocation</td></tr><tr><td><i><span class="ipaddr">a.0.0.0/7</span></i></td><td>+<i><span class="ipaddr">1.255.255.255</span></i></td><td><i><span class="ipaddr"><span style="color:red;">254</span>.0.0.0</span></i></td><td>1</td><td><span style="color:red;">11111110</span></td><td>33,554,432</td><td bgcolor="lightgreen">2<sup>25</sup></td><td>2 A</td><td><i>a</i> = 0 … (2<i>n</i>) … 254</td><td></td></tr><tr><td><i><span class="ipaddr">a.0.0.0/6</span></i></td><td>+<i><span class="ipaddr">3.255.255.255</span></i></td><td><i><span class="ipaddr"><span style="color:red;">252</span>.0.0.0</span></i></td><td>1</td><td><span style="color:red;">11111100</span></td><td>67,108,864</td><td bgcolor="lightgreen">2<sup>26</sup></td><td>4 A</td><td><i>a</i> = 0 … (4<i>n</i>) … 252</td><td></td></tr><tr><td><i><span class="ipaddr">a.0.0.0/5</span></i></td><td>+<i><span class="ipaddr">7.255.255.255</span></i></td><td><i><span class="ipaddr"><span style="color:red;">248</span>.0.0.0</span></i></td><td>1</td><td><span style="color:red;">11111000</span></td><td>134,217,728</td><td bgcolor="lightgreen">2<sup>27</sup></td><td>8 A</td><td><i>a</i> = 0 … (8<i>n</i>) … 248</td><td></td></tr><tr><td><i><span class="ipaddr">a.0.0.0/4</span></i></td><td>+<i><span class="ipaddr">15.255.255.255</span></i></td><td><i><span class="ipaddr"><span style="color:red;">240</span>.0.0.0</span></i></td><td>1</td><td><span style="color:red;">11110000</span></td><td>268,435,456</td><td bgcolor="lightgreen">2<sup>28</sup></td><td>16 A</td><td><i>a</i> = 0 … (16<i>n</i>) … 240</td><td></td></tr><tr><td><i><span class="ipaddr">a.0.0.0/3</span></i></td><td>+<i><span class="ipaddr">31.255.255.255</span></i></td><td><i><span class="ipaddr"><span style="color:red;">224</span>.0.0.0</span></i></td><td>1</td><td><span style="color:red;">11100000</span></td><td>536,870,912</td><td bgcolor="lightgreen">2<sup>29</sup></td><td>32 A</td><td><i>a</i> = 0 … (32<i>n</i>) … 224</td><td></td></tr><tr><td><i><span class="ipaddr">a.0.0.0/2</span></i></td><td>+<i><span class="ipaddr">63.255.255.255</span></i></td><td><i><span class="ipaddr"><span style="color:red;">192</span>.0.0.0</span></i></td><td>1</td><td><span style="color:red;">11000000</span></td><td>1,073,741,824</td><td bgcolor="lightgreen">2<sup>30</sup></td><td>64 A</td><td><i>a</i> = 0, 64, 128, 192</td><td></td></tr><tr><td><i><span class="ipaddr">a.0.0.0/1</span></i></td><td>+<i><span class="ipaddr">127.255.255.255</span></i></td><td><i><span class="ipaddr"><span style="color:red;">128</span>.0.0.0</span></i></td><td>1</td><td><span style="color:red;">10000000</span></td><td>2,147,483,648</td><td bgcolor="lightgreen">2<sup>31</sup></td><td>128 A</td><td><i>a</i> = 0, 128</td><td></td></tr><tr bgcolor="lightyellow"><td><i><span class="ipaddr">0.0.0.0/0</span></i></td><td>+<i><span class="ipaddr">255.255.255.255</span></i></td><td><i><span class="ipaddr">0.0.0.0</span></i></td><td>0</td><td>00000000</td><td>4,294,967,296</td><td>2<sup>32</sup></td><td>256 A</td><td></td><td>Entire IPv4 Internet, <a title="Default route" href="
https://en.wikipedia.org/wiki/Default_route">default route</a>.</td></tr></tbody></table></body></html>
view raw
IPv4-CIDR-blocks.html
hosted with ❤ by
GitHub
#cyberwarrior #infosec #networkbasics #networks #networks4hackers #subnetting