Chapter 7: IP Addressing - Intro to Networks v6
Both IPv4 & IPv6 provide *(blank)* addressing for packets that carry data.
hierarchical
Easy way to ID that an IPv6 address was likely created using EUI-64
if *FFFE* is located in the middle of the Interface ID
How do hosts know which portion of the 32-bit IPv4 address is the network portion and which is host portion?
the *subnet mask*. Is a sequence of 1 bits followed by a sequence of 0 bits. The 1's ID the network portion & the 0's ID the host portion.
First Host Address
The first available host IP address in a network. The *host* portion *always* has *all 0's and ends with a 1*
Last Host Address
The last available host IP address in a network. The *host* portion *always* has *all 1's and ends with a 0*
Radix
The number base of a numbering system. Decimal's radix = 10 Binary = 2 Hexadecimal = 16
APIPA
(*Automatic Private IP Addressing*) Used by Windows DHCP client to self-configure when *no DHCP server available*. Only useful in a peer-to-peer connection.
CIDR
(*Classless Inter-Domain Routing*) - The standard created by the IETF in 1993 that *replaced Classful IPv4 Addressing* - Allows service providers to allocate IPv4 Addresses on any *prefix length/bit boundary* instead of only classes A, B, or C. - Still *only a temporary solution* to the exhaustion of IPv4 Addresses.
EUI-64 Process
(*Extended Unique Identifier*) Process reqd when RA message either SLAAC or SLAAC w/stateless DHCPv6 that use's a client's 48 bit Ethernet MAC address, and inserts another 16 bits in the middle of the 48 bit MAC address to create a 64 bit *Interface ID* (b/c the prefix is already known from RA message)
Some advantages of ICMPv6 over ICMP for IPv4
(*I*nternet *C*ontrol *M*essage *P*rotocol) - includes address resolution - ...& address auto-configuration
How many RIRs have run out of IPv4 addresses?
(*R*egional *I*nternet *R*egistries) - 4 out of 5 (AfriNIC's projected exhaustion date is in 2019)
The IPv4 multicast address used by RIPv2
(*Routing Information Protocol version 2*) 224.0.0.9
Link-Local Address Range
(first 10 bits are 1111 1110 10xx xxxx) FE80::/10 (first hextet = 1111 1110 1000 0000 to FEBF::10 ("" = 1111 1110 1011 1111)
What an *octet* is to an IPv4 address, a (blank) is to an IPv6 address.
(unofficially) *hextet* = a segment of *16 bits* OR *4 hexadecimal values*
The actual process used to ID the network and host portions
*AND-ing*
Method ensuring the uniqueness of a randomly generated Interface ID
*DAD* (Duplicate Address Detection) - Similar to an ARP request for devices own address. If no reply, then address is unique.
Class E
*Experimental Address Block* 240.0.0.0 to 255.0.0.0
Which type of IPv6 addresses are currently being assigned to RIRs by the IANA?
*GUAs* with the *first 3 bits* of *001* |\|...
Class D
*Multicast Address Block* 224.0.0.0 to 239.0.0.0
stateless
*NO central server* allocating GUAs & keeping a list of devices and their addresses
Assigned Multicast addresses
*Reserved* multicast addresses for *predefined* groups of devices. A single address used to reach a group of devices running a common protocol or service.
RA & RS
*Router Advertisement & Router Solicitation* - ICMPv6 messages used in SLAAC for devices to obtain routing info. - RA is sent (every ~200 seconds) in response to a RS
The name of the bit that's flipped in the EUI-64 process
*U/L* (Universally/Locally) bit = 7th bit in OUI is *reversed* <-- reason why discussed in RFC 5342
Command to configure an IPv6 GUA & prefix length
*ipv6 address* {ipv6 address/prefix-length}
Command to configure a *link-local* address
*ipv6 address* {link-local-address} *link-local* Remember link-local 1st hextet range: *FE80 to FEBF*
Command to enable a router as an IPv6 router
*ipv6 unicast-routing* GLOBAL CONFIG. command
Command to display the MAC addresses of the Ethernet interfaces
*show interface*
Command to display abbreviated IPv6 interface configurations
*show ipv6 interface brief* Output Ex: up/up means the layer1/layer2 interface state
Command to display specific IPv6 interface addresses installed in the IPv6 routing table
*show ipv6 route* - *C* means the route is a *directly connected network* - *L* indicates a 'Local Route'/specific IPv6 address assigned to interface - NOT a Link-local address (b/c Link-locals NOT included router's routing table b/c they're NOT routable)
What are the private IPv4 address blocks?
- *10*.0.0.0 /8 or 10.0.0.0 to 10.255.255.255 - *172.16*.0.0 /12 or 172.16.0.0 to *172.31*.255.255 - *192.168*.0.0 /16 or "" to 192.168.255.255
The general "chain of command" for both IPv4 & IPv6 management & allocation
- *IANA* (Internet Assigned Number Authority) - *RIR* (Regional Internet Registries) - *ARIN* (American Registry for Internet Numbers) - *RIPE* (Reseaux IP Europeans) - *APNIC* (Asia Pacific Network Information Centre) - *AfriNIC* (African Network Information Centre) - *LACNIC* (Regional Latin-American and Caribbean IP Address Registry) *** Orgs. *CAN* get their addresses directly from an RIR subject to the RIR's policies.
IPv4 Address Structure
- Consists of 32-bits - divided into 4 sections / *octets* - each section contains *8 bits / 1 byte* - Computers see *binary*, Humans see *dotted decimal notation*
IPv6 address space (in bits) and rough estimation of total number of addresses it can provide.
- IPv6 addresses are *128-bit addresses* written as a string of *hexadecimal values*. - Can provide *~340 Undecillion // 340 followed by 36 zero's Undecillion = 1 billion billion billion billions (Bunge)
ICMPv6 RA message includes..
- Network Prefix & Prefix Length - Default gateway address - DNS addresses & domain name
Issues with NAT
- breaks many applications - has limitations that impede P2P comms
The (blank blank) is the number of bits set to 1 in the subnet mask and it is written in (blank blank)
...*prefix length*.......*slash notation*(/CIDR Notation(?))
Bits within the *network portion* of an IPv4 address must be (blank). Bits within the *host portion* of an IPv4 address must be (blank).
...identical for all devices within the *same* network. ...unique to identify a specific host within the network.
The prefix length can range from....
0 to 128 bits - typically though it's 64
Class A IPv4 Address Range
0.0.0.0 /8 to 127.0.0.0 /8
The 2 types of IPv6 multicast addresses
1. *Assigned* multicast 2. *Solicited node* multicast
The 2 types of Broadcast Transmissions
1. *Directed Broadcast*: HOST portion of dest. address = *all 1's* / *255* (but not always 255, VLSM) - Can be a message sent to *all* hosts on a *remote* network 2. *Limited Broadcast*: dest. address = 255.255.255.255 / network & host portions are *all 1's*
The 2 most common types of IPv6 *unicast* addresses
1. *GUA* (Global Unicast Addresses) - globally unique & internet-routable 2. *Link-Local* Addresses - used to comm. w/other devices on same local *link*/subnet. Routers won't forward packets w/a link-local source or destination address. Typically the *link-local* address of a *router* is used as the *default gateway*.
The 3 parts of a GUA
1. *Global Routing Prefix* - network portion of address *assigned by the provider* (like an ISP) 2. *Subnet ID* - Used by orgs. to ID subnets 3. *Interface ID* - equivalent to *host portion of an IPv4* address
The 2 parts of a MAC address
1. *OUI* (Organizationally Unique Identifier*) - 24-bit/6 Hex digits vendor code assigned by IEEE 2. *Device Identifier* - unique identifier w/24-bit/6 hex digits
The 2 ways that a device can obtain an IPv6 GUA automatically
1. *SLAAC* (*Stateless* Address Autoconfiguration) (SLAAC & SLAAC w/Stateless DHCPv6) 2. *Stateful* DHCPv6 NOTE: In either case, the local *router's link-local* address will auto. be the *default gateway* address
The 3 options for RA messages
1. *SLAAC* - "everything you need" 2. SLAAC w/*stateless DHCPv6* server - "some from IPv6 router & some from DHCPv6 server" 3. *Stateful DHCPv6* - "default gateway address from IPV6 router & everything else from DHCPv6 server"
What are the 3 basic binary operations used in digital logic?
1. AND-ing 2. OR 3. NOT
What are the 3 categories of IPv6 *migration techniques*?
1. Dual Stack 2. Tunneling 3. Translation
The 3 ways a host that is successfully connected to a network can communicate with other devices
1. Unicast 2. Broadcast 3. Multicast
The 3 types of IPv6 addresses
1. Unicast 2. Multicast 3. *Anycast* (like a phone-tree, Bunge) - any IPv6 unicast address that can be assigned to multiple devices. (*Beyond the scope of this course*) *No broadcast* - There's an all-nodes multicast IPv6 address that gives the same result though.
With IPv6, the default gateway can be either...
1. the *GUA* for the network interface of the same network 2. the *link-local* address for the network interface of the same network
IPv4 address range for *loopback addresses*
127.0.0.0 /8 or 127.0.0.1 to 127.255.255.254 *Any* address within this range will loop back to the local host.
Class B IPv4 Address Range
128.0.0.0 /16 to 191.255.0.0 /16
APIPA Address Range
169.254.0.0 /16 or 169.254.0.1 to 169.254.255.254
Class C IPv4 Address Range
192.0.0.0 /24 to 223.255.255.0 /24
TEST-Net IPv4 Address Range
192.0.2.0 /24 or 192.0.2.0 to 192.0.2.255
The IPv4 *multicast* address range reserved for the *local network* only
224.0.0.0 to 224.0.0.255
The IPv4 *multicast* address range
224.0.0.0 to 239.255.255.255
Theoretical maximum number of hosts for IPv4
4.3 Billion
Positional Notation
A digit represents different values depending on the position the digit occupies in the sequence of numbers.
What is required to put an IPv6 address into *compressed format*? (Rule 2)
A double colon (*::*) can replace any *single, contiguous* string of one or more 16-bit segments (hextets) consisting of all 0's. That double colon can *only* be used once in an IPv6 address otherwise there'd be more than one possible resulting address.
Tunneling
A method of transporting an IPv6 packet over an IPv4 network. The IPv6 packet is encapsulated inside an IPv4 packet.
Broadcast Address
A special address that communicates with all hosts in a network and is the *highest address in the network range*. The *host* portion is *all 1's*.
TEST-Net IPv4 Addresses
Addresses set aside for teaching & learning purposes & can be used in documentation & network examples.
Public IPv4 Addresses
Addresses that are *globally routed* between ISP routers // are able to be used on the internet.
Dual Stack
Allows IPv4 & IPv6 to coexist on the same network segment.
Why can you *only* omit the *leading 0's* in a hextet of an IPv6 address? (Rule 1)
Because if you also omitted trailing 0's the address would be ambiguous. Ex: 'ABC' could be either '0ABC' or 'ABC0' which represent *2 different values*
RA Option 1: SLAAC only
Client device uses the info in the RA message to create is own GUA & all other information. Services of DHCPv6 server are NOT reqd.
Class A (IPv4 Addressing)
Designed to support *extremely large* networks. - More than *16 million* host addresses. - Uses fixed /8 prefix |\| *last 3 octets* for hosts - Most significant bit of *high-order octet* be a 0(zero) |\| *128* possible Class A Networks
Class B (IPv4 Addressing)
Designed to support *moderate to large* networks. - *~65,000* Host addresses - Uses fixed /16 prefix |\| last 2 octets for hosts - Most significant *2 bits* of the *high-order octet* must = (Bin.) 10xx xxxx |\| over *16,000* possible networks
Class C (IPv4 Addressing)
Designed to support *small* networks. - MAX of *254* Hosts - Uses fixed /24 prefix |\| *last octet* for hosts - Most significant 3 bits of *high-order octet* must = (Bin.) 110x xxxx |\| over *2 million* possible networks.
How & when does a client generate its own Interface ID?
Either the EUI-64 process or Randomly generated. If the RA is either option 1 (SLAAC) or 2 (SLAAC w/stateless DHCPv6)
AND-ing
The comparison of 2 bits that produce the following: 1 AND 1 = 1 0 AND 1 = 0 0 AND 0 = 0 1 AND 0 = 0 |\| Anything with a 0 is equal to 0.
The number of *binary bits* represented by a single *hexadecimal digit*
Every *4 bits* is represented by a single hexadecimal digit for a total of *32 hexadecimal* values in the 128-bit IPv6 address. 4 bits x 32 hex digits = 128 bits 4 hex digits = 16 bits
Unique Local Address range
FC00::/7 to FDFF::/7
The prefix for IPv6 multicast addresses
FF00::/8
Which org. is the operator for IANA and what do they do?
ICANN (Internet Committee for Assigned Names & Numbers) allocates IPv6 address blocks to the five RIRs.
RFC 790
In 1981, *Internet* IPv4 addresses were assigned using *classful addressing* in RFC 970, Assigned Numbers. It divides *unicast ranges* into 3 classes: A, B, or C
What were some problems with the Classul IPv4 Addressing system?
It *wasted* a lot of addresses & *exhausted* the availability of IPv4 Addresses. Ex: network of 260 hosts needed to be given a Class B address / more than 65,000 addresses |\| wasting 64,740 addresses (65,000 - 260 = 64,740) This is why it was abandoned in the late 1990's for...??
What is used to translate between private IPv4 addresses and public IPv4 addresses?
Network Address Translation (*NAT*) Usually done on the router that connects the internal network of an org. to the ISP's network. Home routers have the same capability.
Unicast Transmission
One-to-One. Used for host-to-host comms. in both client/server & peer-to-peer networks. Source = IPv4 of originating device Dest. = IPv4 of destination device Include the address range of: *0.0.0.0 to 223.255.255.255* (w/some reserved for special purposes) The *source address* of *any packet*, regardless of destination address (uni-, broad, multi-), is always the *unicast address*.
Broadcast Transmission
One-to-all. Used to send packets to all hosts in a network. Routers do not forward broadcasts by default. Used by many network protocols (DHCP clients, ARP).Broadcast traffic *should be limited* so as not to adversely affect network/device performance. *Sub-dividing* networks can improve network performance by eliminating excessive broadcast traffic. There are *2 types* of broadcast transmissions.
Multicast Transmission
One-to-some. A host sends a single packet to a selected set of hosts that subscribe to a multicast group (multicast clients). Each group is represented by a *single* IPv4 multicast dest. address. Reserved local network multicast addresses are often used in routing protocols to exchange routing info. Routers do not forward by default.
RA Option 3: Stateful DHCPv6
Option most similar to DHCP for IPv4. RA requires the client obtain all info. from a DHCPv6 server *except* the default gateway address (which is ONLY obtained dynamically from the RA message)
Experimental Addresses
Reserved for future use (RFC 3300). 240.0.0.0 to 255.255.255.254
Binary to Decimal & Decimal to Binary Conversions
See handouts & pgs. 331-337
What does *preferred format* mean when referring to IPv6 addresses?
That it is written using all 32 hexadecimal digits. Essential for when you compress/apply IPv6 address shortcut/abbreviation rules later.
The most common global routing prefix
The */48* prefix
Unique Local
Type of *unicast* address. Similar to RFC 1918 (Private Addresses). Used for local addressing w/in a site or b/t limited # of sites or for devices that will never need/have access from another network
Purpose of a *loopback address*
Used by a host to direct traffic to itself. Often used to test if the TCP/IP configuration is operational.
Private IPv4 Addresses
Used by most orgs. to assign IPv4 addresses to *internal hosts*. They are *not unique*, *not allowed* on the Internet, and must |\| be filtered/discarded by Internet routers. Were introduced in the mid-1990's to address IPv4 address depletion.
Slash Notation
a '/' followed by the number of bits set to 1
Translation
aka *NAT64* - allows IPv6-enabled devices to communicate w/IPv4-enabled devices via translation technology (IPv4 to IPv6 & vice versa)
stateful
allocates & maintains a list of which device receives which IPv6 or IPv4 address.