iPv6

Course: https://www.internetsociety.org/tutorials/introduction-to-ipv6/module-1-introduction/

Module 1: Introduction to iPv6

  • IETF = Internet Engineering Task Force (IETF)
  • Problems addressed when transitioning to iPv6:
    • iPv4 address exhaustion
    • need for simpler auto-configuration and re-numbering
    • requirement for security at IP level
    • improved protocol design
    • new possibilities of managing flow
  • iPv4 only has 2 billion IP addresses available, iPv6 encompasses 340 trillion trillion trillion
  • Since iPv6 is a huge amount to address space, the subnet sizes are huge as well
    • At ISP level (/32), there are 79 septillion addresses assigned
    • Largest block of iPv6 addresses allocated to France Telecom and Deutsche Telekom > allocation is /19 block, equivalent to 35, 000 billion
  • Most of the internet becoming dual stack because iPv4 and iPv6 are not compatible
  • Difficulty and cost of obtaining iPv4 address space will increase, inevitable that in the future some sites will only support iPv6
  • Workarounds: Network Address Translation
  • Adopting MAT technology will help systems maintain iPv4 service while moving to iPv6 (bust costly in long-term)
  • Steps to move to iPv6:
    • Learn more about iPv6
    • Get network iPv6 ready

Module 2: Understanding iPv6 Addresses

  • iPv6 addresses are 128 bits
    • broken into sixteen 8 bit sections
    • example of address: 128.91.45.157.220.40.0.0.0.252.87.212.200.32.255
    • can be converted to hex
  • To convert iPv6 from binary address to hexadecimal:
    • Break binary into 8 blocks of 16 bits
    • Split each block of 16 bits into 4 segments
    • Convert each segment into a hexadecimal (0-F)
  • zero compression – consecutive blocks of zeros
    • if there is more than 1 consecutive block where characters are all zeroes, you can compress to ::
    • zero compression can only be used ONCE in an address
  • zero suppression – leading 0’s
    • remove all leading 0s (front part) in each segment (cannot remove if after a non-zero in a segment)
    • each segment must contains at least a single digit if not using zero compression
  • iPv6 prefixes
    • iPv6 is hierarchical, addresses can be sub-netted for performance and security reasons in the same way as iPv4
    • all devices whose IP addresses have the same prefix share the same network component of address and are part of a subnet
    • larger subnet = smaller # after dash
      • /32 subnet (means network is only 32 bits, whereas subnet contains up to 96 bits left for specific addresses)
      • /48 subnet has 80 bits left for specific addresses
      • /32 is a bigger subnet than /48
    • iPv6 address types
      • iPv6 addresses identify an interface/group of interfaces
      • 3 main types of iPv6 addresses:
        • Unicast (2000::)
          • Most common type of iPv6
          • Identifies a single interface
          • Communication between single sender and single receiver over network
          • Every machine should have at least open global unicast address assigned to each interface
          • Global unicast addresses all begin with same prefix: 2000::/3
        • Anycast
          • Anycast addresses identify groups of interfaces
          • Packets for anycast addresses are sent to nearest interface in a group
          • Facilitates communication between any sender and nearest group of receivers in a network
          • Allocated from unicast address space (2600::), not distinguishable from unicast address
        • Multicast (ff00::)
          • Identifies a group of interfaces, belonging to different nodes
            • Packages sent to multicast addresses are delivered to all interfaces in the group
            • Facilitate communication between single sender and multiple receivers
            • Multicast replaces broadcast addresses in iPv4
            • Prefix: ff00::/8
            • Format:
              • Indicator: Always 11111111 (aka FF), indicates multicast
              • Scope: indicates how broadly multicast packets will spread
                • 4 possible values:
                  • Node-local
                  • Link-local
                  • Site-local
                  • Global
                • Group ID: multicast group within the given scope
                  • All nodes, all-routers, OSPF, NTP
                • Special iPv6 Addresses
                  • Unspecified (::/128)
                    • All zeros, refers to host when host doesn’t know own address
                    • Used for devices seeking to have iPv6 address assigned
                  • Loopback (::1/128)
                    • Has single address for loopback function
                  • IPv4 Mapped (::ffff:0:0/96)
                    • Prefix is 96 bits, 32 bits hold the embedded iPv4 addresses
                    • Used to represent iPv4 address as an iPv6 address
                    • Address helps to transition from iPv4 to iPv6
                  • Unique Local Unicast (ULA) (fc00::/7)
                    • For local use, within a site or group of sites
                    • Not routable on the global internet
                  • Link-Local Unicast (fe80::/10)
                    • Unicast addresses to be used on a single link
                    • Used for neighbor discovery, automatic address configuration, when no routers are present

 

 

How the Internet Works

In order to learn more about Internet Protocol and networks for more work this summer, I have been doing some research and learning around how the Internet Works. I came across this amazing video that explains in very clear terms how the internet works and I thought it was really interesting, so I took some notes and decided to share it here:

How the Internet Works

    • internet = wire
      • can be underground or satellite
    • servers are special computers connected directly to internet
      • servers can communicate with other servers connected to internet
      • webpages are files on server’s hard drive wire
    • every server has a unique internet protocol address/IP address
      • help computers find each other 
      • IP addresses given domain names to make it more easy to remember/access
        • 172.217.5.110 -> google.com
    • computer is not a server because it is not connected directly to the internet (called a client)
      • connected indirectly to internet with internet service provider (ISP)
  • client connects with ISP with DSL = Digital Subscriber Line
  • aol.com is a server and a ISP 
  • sending an email to someone using aol.com:
    • from computer client > connect to ISP with DSL > connect to gmail.com > once sent > gmail.com sends it to [email protected] > next day someone can dial into aol.com and view it
  • when email/picture/webpage travels through internet, computer breaks down information into packets, and packets are reassembled on the receiving end
  • IP address and routers 
    • prevents what happens on your computer to appear on others computers
    • anywhere 2 or more of the internet intersects, a router directs your packets around the internet
    • every time you visit a website, there can be up to 10-15 routers helping you reach it
      • packet you send is like a candy wrapped in different layers
      • 1st layer: your computer’s IP address > your computer sends packet to router which adds its own IP address > each time packet sent to a new router a new layer of IP address is added until it reaches the server
      • when server sends back information, creates packets with identical wrapping > as packets make it back to your computer, each router unwraps a layer so it knows what IP address to send the packet to next to reach the right destination

The video: https://www.youtube.com/watch?v=7_LPdttKXPc