IP Addressing RST-2002 © 2003, Cisco Systems, Inc. All rights reserved. 2 IP Addressing • Basic Addressing • Working with Addresses • Summarization & Subnets • VLSM • Working with VLSM Networks • Classful Addressing • Working with Classful Addressing RST-2002 © 2003, Cisco Systems, Inc. All rights reserved. 3 Basic Addressing • IP addresses are written in dotted decimal format. • Four sections are separated by dots. • Each section contains a number between 0 and 255. RST-2002 © 2003, Cisco Systems, Inc. All rights reserved. Dots separate the sections 10.1.1.1 Each section contains a number between 0 and 255 4 Basic Addressing • Why is each section a number between 0 and 255? • Computers operate in binary, humans operate in decimal. • Computers treat IP addresses as a single large 32 digit binary number, but this is hard for people to do. • So, we split them up into four smaller sections so we can remember and work with them better! RST-2002 © 2003, Cisco Systems, Inc. All rights reserved. Dots separate the sections 10.1.1.1 Each section contains a number between 0 and 255 Why???? 5 Basic Addressing 10.1.1.1 • 32/4 == 8. • 28 = 256. • But, computers number starting at 0, so to make a space of 256 numbers, we number from 0 to 255. RST-2002 © 2003, Cisco Systems, Inc. All rights reserved. 00001010 00000001 00000001 00000001 8 8 8 8 32 Each 8 digit group represents a number between 0 and 255 6 Basic Addressing • Each device on a network is assigned an IP address. • Each IP address has two fundamental parts: Host • The host portion, which identifies the host on that wire. 00001010 00000001 00000001 00000001 Network • The network portion, which describes the physical wire the device is attached to. 10.1.1.1 • How can we tell the difference between the two sections? RST-2002 © 2003, Cisco Systems, Inc. All rights reserved. 7 Basic Addressing • The network mask shows us where to split the network and host sections. RST-2002 © 2003, Cisco Systems, Inc. All rights reserved. Host • Each place there is a 0 in the network mask, that binary digit belongs to the host portion of the address. 00001010 00000001 00000001 00000001 Network • Each place there is a 1 in the network mask, that binary digit belongs to the network portion of the address. 10.1.1.1 11111111 11111111 11111111 00000000 255.255.255.0 8 Basic Addressing 10.1.1.1 • An alternative set of terminology is: 00001010 00000001 00000001 00000001 • The host portion of the address is called the host. • The network mask is expressed as a prefix length, which is a count of the number of 1’s in the subnet mask. Host Prefix • The network portion of the address is called the prefix. 11111111 11111111 11111111 00000000 8 + 8 + 8 = 24 10.1.1.1/24 RST-2002 © 2003, Cisco Systems, Inc. All rights reserved. 9 Basic Addressing • The network address is the IP address with all 0’s in the host bits. • The broadcast address is the IP address with all 1’s in the host bits. • Packets sent to either address will be delivered to all the hosts connected to the wire. RST-2002 © 2003, Cisco Systems, Inc. All rights reserved. 10 00001010 1 1 000000011 00000001 prefix 0/24 00000000 host these bits are 0, so this is the network address 10 00001010 prefix 1 1 000000011 00000001 255/24 11111111 host these bits are 1, so this is the broadcast address 10 Working with Addresses • Two of the most common questions you are going to face when dealing with IP addresses are: 192.168.100.80/26 ???? • What’s the network? • What’s the host? • How dow we figure this out? RST-2002 © 2003, Cisco Systems, Inc. All rights reserved. 11 Working with Addresses (The Hard Way) • Divide by two, farm out the remainder on the side. • The bottom is the binary MSD, the top the binary LSD. 48 24 12 6 3 1 0 RST-2002 © 2003, Cisco Systems, Inc. All rights reserved. remainder 0 remainder 0 remainder 0 remainder 0 divide by 2 divide by 2 divide by 2 divide by 2 remainder divide by 2 remainder divide by 2 remainder divide by 2 remainder Right • Work with one octet at a time. 96 divide by 2 0 0 1 1 Left • First, convert the IP address into binary. This is easier than it looks. 192 12 Working with Addresses (The Hard Way) Write down the IP address. 11000000 10101000 01100100 01010000 192 168 100 80 If you have a prefix length, just wrote down the number of 1’s. If you have a network mask, computer the binary as with the IP address. 11111111 11111111 11111111 11000000 8 +8 +8 +2 == 26 AND these two. 11000000 10101000 01100100 01000000 Convert back to dotted decimal. This is the network address. 192 RST-2002 © 2003, Cisco Systems, Inc. All rights reserved. 168 100 64 13 Working with Addresses (The Hard Way) Write down the IP address. 11000000 10101000 01100100 01010000 192 168 100 80 If you have a prefix length, just wrote down the number of 1’s. If you have a network mask, computer the binary as with the IP address. 11111111 11111111 11111111 11000000 8 +8 +8 +2 == 26 NOR these two. 00000000 00000000 00000000 00010000 Convert back to dotted decimal. This is the host address. 0 RST-2002 © 2003, Cisco Systems, Inc. All rights reserved. 0 0 16 14 Working with Addresses (The Hard Way) 128 1 128 • To convert from binary to decimal, use a simple chart. 64 0 0 32 1 32 16 0 0 • Add the number indicated for each 1 set in the binary number. 8 1 8 4 0 0 2 0 0 1 0 0 168 RST-2002 © 2003, Cisco Systems, Inc. All rights reserved. 15 Working with Addresses (The Easy Way) • First, if you are using a network mask, convert it to a prefix length. 192 == 11000000 • For each octet in the network mask that is 255, add 8 to the prefix length. 255.255.255.192 8 +8 +8 +2 == 26 • For the one octet that isn’t 255, convert to binary and add the right number of bits--or use a chart! RST-2002 © 2003, Cisco Systems, Inc. All rights reserved. 16 Working with Addresses (The Easy Way) • Take the prefix length and divide by 8. • Take the resulting number, and ignore those octets out of the IP address-these are all part of the network address! • We’re going to use the remainder to find the fourth octet of the network address. RST-2002 © 2003, Cisco Systems, Inc. All rights reserved. 192.168.100.80/26 These three octets are part of the network 26/8 == 3 (remainder 2) The remainder tells us what the network address in the fourth octet is 17 Working with Addresses (The Easy Way) • Take the remainder, and find the corresponding “multiple” on the chart; in this case, 64. • The largest multiple of 64 that will fit into 80 is 64, so the network is 64. • Add the three octets we “set aside” earlier, and the network (prefix!) is 192.168.100.64/26. • 80 - 64 == 16, so the host address is 16. RST-2002 © 2003, Cisco Systems, Inc. All rights reserved. Remainder == 2 8 7 6 5 4 3 2 1 1 2 4 8 16 32 64 128 64 x 1 == 64 64 x 2 == 128 Network is 64! 192.168.100.64/26 80 - 64 == 16 16 Hosts! 18 Working with Addresses (The Easy Way) • How many hosts are in this network? The remainder tells us there are 64 addresses, minus the network and broadcast addresses, so 62 hosts. • To find the broadcast address, subtract 1 from the number of hosts, and add that number to the network address. • The key is to work in octets, rather than trying to work with the entire IP address at once! RST-2002 © 2003, Cisco Systems, Inc. All rights reserved. Remainder == 2 8 7 6 5 4 3 2 1 1 2 4 8 16 32 64 128 64 addresses 64 - 2 == 62 hosts 64 + (64 - 1) == 127 192.168.100.127 is the broadcast address 19 Working with Addresses (The Easy Way) • What if the prefix length is less than 24? • Take the prefix length and divide by 8. • Take the resulting number, and ignore those octets out of the IP address-these are all part of the network address! • We’re going to use the remainder to find the third octet of the network address. RST-2002 © 2003, Cisco Systems, Inc. All rights reserved. 192.168.100.80/22 These three octets are part of the network 22/8 == 2 (remainder 6) The remainder tells us what the network address in the third octet is 20 Working with Addresses (The Easy Way) • Take the remainder, and find the corresponding “multiple” on the chart; in this case, 4. • The largest multiple of 64 that will fit into 80 is 64, so the network is 64. • Add the two octets we “set aside” earlier, and make any octets after the network 0’s (the fourth octet). • The network (prefix!) is 192.168.100.0/22. RST-2002 © 2003, Cisco Systems, Inc. All rights reserved. Remainder == 6 8 7 6 5 4 3 2 1 1 2 4 8 16 32 64 128 4 x 25 == 100 4 x 26 == 104 Third octet is 100! Set the fourth octet to 0. 192.168.100.0/22 21 Working with Addresses (The Easy Way) • To find the number of hosts, take the number of octets set to 0, which is 1 in this case (the fourth octet), and multiply by 256. • Next, take the number relating to the remainder from the chart, and multiple this by the number we just found above. “0” octets == 1 1 x 256 == 256 Remainder == 6 8 7 6 5 4 3 2 1 1 2 4 8 16 32 64 128 4 x 256 == 1024 1024 – 2 == 1022 hosts • Subtract two. RST-2002 © 2003, Cisco Systems, Inc. All rights reserved. 22 Working with Addresses (The Easy Way) • The key is to work in octets, rather than trying to work with the entire IP address at once! RST-2002 © 2003, Cisco Systems, Inc. All rights reserved. 23 10.1.1.8 10.1.1.7 10.1.1.4 • A single network address (prefix!) represents a set of hosts attached to a wire. 10.1.1.2 Summarization & Subnets • We can abstract this, and simply say that a prefix represents a set of reachable addresses. • We can say that we’ve “summarized” information about the hosts attached to the physical wire by referring to the entire group as a single network. RST-2002 © 2003, Cisco Systems, Inc. All rights reserved. 10.1.1.0/26 24 Summarization & Subnets • In effect, we’ve shortened the network part of the address (prefix!), and lengthened the host portion of the address, in effect describing more hosts (destinations) in a single address. • If we can shorten the prefix length to describe multiple hosts with a single network address, why can’t we shorten the prefix length so a single network address describes two networks? • We can! It’s called address summarization, or just summarization. RST-2002 © 2003, Cisco Systems, Inc. All rights reserved. 10.1.1.2/32 10.1.1.4/32 10.1.1.7/32 10.1.1.8/32 10.1.1.0/26 10.1.1.64/26 10.1.1.0/25 These host addresses are described by this network These networks are described by this network 25 Summarization & Subnets 10.1.1.0 through 10.1.1.31. 10.1.1.32 through 10.1.1.63. 10.1.1.0 through 10.1.1.63, so it’s the same space! 00001010 10 11111111 00001010 10 11111111 00000001 1 11111111 00000001 1 11111111 00000001 1 11111111 00000001 1 11111111 00000000 0 11000000 01000000 64 11000000 00001010 00000001 00000001 00000000 10 1 1 0 11111111 11111111 11111111 10000000 Changing the mask bit from 1 to 0, which shortens the prefix length, means the bit in the two networks that distinguish them from one another are now considered host bits! RST-2002 © 2003, Cisco Systems, Inc. All rights reserved. 26 Summarization & Subnets • A network which is a part of another network is called a subnet. • There is another term, the supernet, but it’s definition depends on whether you are using VLSM subnetting, or calssful subnetting, so it will be defined in the next two sections. RST-2002 © 2003, Cisco Systems, Inc. All rights reserved. 10.1.1.2/32 10.1.1.4/32 10.1.1.7/32 10.1.1.8/32 10.1.1.0/26 10.1.1.64/26 10.1.1.0/25 These host addresses are subnets of this network These networks are subnets of this network 27 VLSM • VLSM: Variable Length Subnet Masking • It simply means that the entire IP address space is treated as one flat address space. • Any prefix length is allowed in the network at any point. RST-2002 © 2003, Cisco Systems, Inc. All rights reserved. 10.1.1.0/24 10.1.2.0/25 10.1.2.128/26 10.1.2.192/27 All of these are valid in the same network! 28 VLSM • At this point, you pretty much already know VLSM! You already know how to find the network address, broadcast address, and number of hosts in a network. • Two other common problems in working with VLSM networks remain: • Building summary addresses from groups of networks. We won’t cover this here (maybe later in routing). • Building network addressing schemes from a given number of hosts and networks. RST-2002 © 2003, Cisco Systems, Inc. All rights reserved. 29 Working with VLSM Networks • You have 5 subnets with the following numbers of hosts on them: 58, 14, 29, 49, 3 • You are given the address space 10.1.1.0/24. • Determine what subnets you could use to fit these hosts into it. • How to solve this: • Start with the chart! • Order the networks from the largest to the smallest. • Find the smallest number in the chart that will fit the number of the largest number of hosts + 2. • Continue through each space needed until you either run out of space, or you finish. RST-2002 © 2003, Cisco Systems, Inc. All rights reserved. 30 Working with VLSM Networks • 58, 14, 29, 49, 3: reorder to 58, 49, 29, 14, 3. Start with 58. • Smallest number larger than (58 + 2) is 64. 64 is 2 bits. • 24 bits of prefix length in the address space given, add 2 for 26. • First network is 10.1.1.0/26. • The next network is 10.1.1.0 + 64, so we start the next “round” at 10.1.1.64. RST-2002 © 2003, Cisco Systems, Inc. All rights reserved. 8 7 6 5 4 3 2 1 1 2 4 8 16 32 64 128 32 < (58 + 2) < 64 24 + 2 == 26 10.1.1.0/26 takes care of the first 58 hosts Start the next block at 10.1.1.64 31 Working with VLSM Networks • Next block is 49 hosts. • Smallest number larger than (49 + 2) is 64. 64 is 2 bits. • 24 bits of prefix length in the address space given, add 2 for 26. • We start this block at 10.1.1.64, so network is 10.1.1.64/26. • The next network is 10.1.1.64 + 64, so we start the next “round” at 10.1.1.128. RST-2002 © 2003, Cisco Systems, Inc. All rights reserved. 8 7 6 5 4 3 2 1 1 2 4 8 16 32 64 128 32 < (49 + 2) < 64 24 + 2 == 26 10.1.1.64/26 takes care of the next 49 hosts Start the next block at 10.1.1.128 32 Working with VLSM Networks • Next block is 29 hosts. • Smallest number larger than (29 + 2) is 32. 32 is 3 bits. • 24 bits of prefix length in the address space given, add 3 for 27. • We start this block at 10.1.1.128, so network is 10.1.1.128/27. • The next network is 10.1.1.128 + 32, so we start the next “round” at 10.1.1.160. RST-2002 © 2003, Cisco Systems, Inc. All rights reserved. 8 7 6 5 4 3 2 1 1 2 4 8 16 32 64 128 16 < (29 + 2) < 32 24 + 3 == 27 10.1.1.128/27 takes care of the next 29 hosts Start the next block at 10.1.1.160 33 Working with VLSM Networks • Next block is 14 hosts. • Smallest number larger than (14 + 2) is 16. 16 is 4 bits (actually equal, but it still works!). • 24 bits of prefix length in the address space given, add 4 for 28. • We start this block at 10.1.1.160, so network is 10.1.1.160/27. • The next network is 10.1.1.160 + 16, so we start the next “round” at 10.1.1.176. RST-2002 © 2003, Cisco Systems, Inc. All rights reserved. 8 7 6 5 4 3 2 1 1 2 4 8 16 32 64 128 (14 + 2) == 16 24 + 4 == 28 10.1.1.160/28 takes care of the next 14 hosts Start the next block at 10.1.1.176 34 Working with VLSM Networks • Last block is 3 hosts. • Smallest number larger than (3 + 2) is 8. 8 is 5 bits. • 24 bits of prefix length in the address space given, add 5 for 29. • We start this block at 10.1.1.176, so network is 10.1.1.176/29. • This is the last block of hosts, so we’re done! RST-2002 © 2003, Cisco Systems, Inc. All rights reserved. 8 7 6 5 4 3 2 1 1 2 4 8 16 32 64 128 4 < (5 + 2) < 8 24 + 5 == 29 10.1.1.176/29 takes care of the next 14 hosts 35 RST-2002 © 2003, Cisco Systems, Inc. All rights reserved. 10.1.2.0/25 10.1.2.128/25 10.1.2.128/26 subnets 10.1.1.0/24 10.1.2.0/24 subnets 10.1.0.0/23 subnet supernet • A supernet is any network which covers a larger space than a given network, including the space covered by the network. supernet • A subnet is any network which is “part of” a larger network space. supernet Working with VLSM Networks 36 Classful Addressing • Classful subnetting is similar to VLSM, with two more rules: • The IP address space is divided into “classes,” with each class having a specific “natural” prefix length. Each block of address space is called a “major net.” • You cannot have more than one prefix length within a major net. RST-2002 © 2003, Cisco Systems, Inc. All rights reserved. 37 Classful Addressing Network Class Beginning Digits in Binary Natural Range of Prefix Addresses Length Example Major Networks Class A 10XX 8 1.0.0.0/8 through 126.0.0.0/8 11.0.0.0/8 100.0.0.0/8 120.0.0.0/8 Class B 110X 16 128.0.0.0/16 through 191.0.0.0/16 130.1.0.0/16 148.45.0.0/16 190.100.0.0/16 Class C 1110 24 192.0.0.0/24 through 223.0.0.0/24 193.1.3.0/24 193.1.4.0/24 192.2.5.0/24 RST-2002 © 2003, Cisco Systems, Inc. All rights reserved. 38 Classful Addressing • It’s illegal to have multiple network masks within a single major network. • There cannot be a mix of /24’s and /25’s in the 10.0.0.0/8 major network. • There cannot be a mix of /25’s and /26’s in the 11.0.0.0/8 network. RST-2002 © 2003, Cisco Systems, Inc. All rights reserved. 10.1.1.0/24 10.1.2.0/24 10.1.3.0/25 10.1.3.128/25 two different prefix lengths in the same major network 11.1.1.0/25 11.1.1.128/26 39 Working with Classful Addressing • You can find the network address, broadcast address, and number of hosts as we described earlier. • You can find the number of networks by subtracting the network mask from the natural mask, and then using the chart. RST-2002 © 2003, Cisco Systems, Inc. All rights reserved. 40 Working with Classful Addressing • 10.1.1.0/25 is in the 10.0.0.0 class A major network. • The natural prefix length for a class A network is /8. • Subtract the natural prefix length from the actual prefix length. 10.1.1.0/25 10.0.0.0/8 is class A 25 – 8 == 17 17/8 == 2, 1 remaining • Divide by 8, holding the remainder on the side. RST-2002 © 2003, Cisco Systems, Inc. All rights reserved. 41 Working with Classful Addressing • Find the remainder in the power of two’s chart. • Multiply the result, 256, and the number from the power of two’s chart. 10.1.1.0/25 10.0.0.0/8 is class A 25 – 8 == 17 17/8 == 2, 1 remaining (256 x 2) x 128 == 65536 8 7 6 5 4 3 2 1 1 2 4 8 16 32 64 128 • Subtract 2. 65536 – 2 == 65534 networks RST-2002 © 2003, Cisco Systems, Inc. All rights reserved. 42 Working with Classful Addressing • Subnet 0 • The network with all the between the host and the natural major net set to 0. • This only exists in classful addressing schemes. 10 00001010 0 00000000 natural network natural host © 2003, Cisco Systems, Inc. All rights reserved. 0/24 00000000 configured these bits are 0, so this is subnet 0 network 10.0.0.0/16 Yes 10.0.1.0/16 No 172.31.0.0/24 Yes 172.31.1.0/24 No 192.168.100.0/25 RST-2002 0 00000000 Yes 43 Working with Classful Addressing • Broadcast Subnet • The network with all the bits between the host and the natural major network set to 1. • This only exists in calssful address schemes. 10 00001010 255 11111111 natural network natural host © 2003, Cisco Systems, Inc. All rights reserved. 0/24 00000000 configured these bits are 1, so this is the network broadcast network 10.255.0.0/16 Yes 10.255.0.0/24 No 172.31.255.0/24 Yes 172.31.255.0/25 No 192.168.100.128/25 RST-2002 255 11111111 Yes 44 Working with Classful Addressing • You have 5 subnets with the following numbers of hosts on them: 58, 14, 29, 49, 3 • You are given the address space 10.1.0.0/22. • Determine what subnets you could use to fit these hosts into it. • How to solve this: • Start with the chart! • Find the largest set of hosts. • Find the smallest number in the chart that will fit the number of the largest number of hosts + 2. • Use that prefix length for all the subnets (remember you cannot have different subnet masks within the same major network). RST-2002 © 2003, Cisco Systems, Inc. All rights reserved. 45 Working with Classful Addressing • A subnet is any prefix with a prefix length longer than the natural prefix length of the major network. • A supernet is any prefix with a prefix length shorter than the natural prefix length of the major network. RST-2002 © 2003, Cisco Systems, Inc. All rights reserved. 172.18.1.0/24 Subnet 10.2.0.0/9 Subnet 172.34.0.0/15 192.168.44.64/25 192.168.44.0/23 Supernet Subnet Supernet 46 Private & Special Address Space Address Space Range of Addresses 10.0.0.0/8 10.0.0.0 through 10.255.255.255 172.16.0.0/19 172.16.0.0 through 172.31.0.0 192.168.0.0/16 192.168.0.0 through 192.168.255.255 Network Class Beginning Digits in Binary Range of Addresses Class D (Multicast) 11110x 224.0.0.0 through 239.255.255.255 Class E (Experimental) 11111x 240.0.0.0 through .... RST-2002 © 2003, Cisco Systems, Inc. All rights reserved. 47 Cisco IOS Show IP Route 2651A#sho ip route .... Gateway of last resort is not set two different prefix lengths under the same major network C 208.0.12.0/24 is directly connected, Serial0/2 .... S 208.1.10.0/24 [1/0] via 208.0.12.11 .... 144.2.0.0/16 is variably subnetted, 2 subnets, 2 masks S 144.2.2.0/24 [1/0] via 208.0.12.11 S 144.2.3.0/29 [1/0] via 208.0.12.11 C 208.0.7.0/24 is directly connected, Serial0/0 C 208.0.6.0/24 is directly connected, FastEthernet0/0 C 208.0.0.0/24 is directly connected, FastEthernet0/1 S 208.1.0.0/16 [1/0] via 208.0.12.11 a supernet and natural mask in the same network address space RST-2002 © 2003, Cisco Systems, Inc. All rights reserved. 48