Back

IPv6 - is alternative IP level protocol designed to get around IPv4
  exhaustion.

  Not compatible with IPv4, but because IP is a internet level protocol,
    it is implemented in software. Both protocols can run in parallel on
    any (most) node or network link (router).
 
IPv6  - ups the address size from 32 bit to 128 bit.
   IPv6 is classless by default.

     64-bit (sub)network prefix.

     Upper 64 bit address assigned to a specific network without regard to
       number of hosts or nodes that may be on that site.
       2^64 = 1.84467 x 10^19

     * Whole sequential block (/64) may be assigned to an ISP, who may break 
         them down into /48 or /56 networks (domains).

     Lower 64 bits for hosts in a network domain.
  
   Classless design allows for a better hierarchical design of network layout
     and more efficient routers for transmitting packets.
 
   Provides better security for packets being sent.
 
   Most current hardware and OSes support IPv6, although it is often not
     actually implemented. 

   Features :
     Hop count rather than TTL. No longer counts time packet may be
       stalled in queue.

     Packet size limited so that no fragmentation occurs once packet has
       left sending node. If fragmentation needed, handled at source.

       Either uses minimum legal size, 1280 octets, or sends a probing 
         ICMP packet to discover smallest allowable packet in path.

     If between IPv6 nodes and on IPV6 network (Internet2), packets
       can be up to 4GiB-1 

     Stateless address auto-configuration (SLAAC)
       Upper 64 bits are network prefix (domain address).
       Lower 64 bits are interface identifier (node id).
       Uses Media Access Control (MAC@) address as interface identifier.
       * Privacy extensions provide randomly generated interface identifiers
         used in place of MAC@.
         Available in most modern OSes and usually on.

    Support on hops/links that don't use IPv6
   
      If node/link has no support for IPv6 and packet is IPv6, it won't accept.

      Available kludges - allows an IPv6 packet to be moved across an IPv4 
        network/link.
        6in4 - packet level protocol for encapsulating a IPv6 packet in 
          an IPv4 packet.

        6to4 - protocol/mechanism for creating and routing 6in4 packets.

        * 6in4, 6to4 does not handle IPv4 NAT generated IPs.

        Teredo - protocol/mechanism for allowing IPv6 capable node to use a 
          NAT type router to move packets across an IPv4 only network.

        Teredo client - IPv4 client (behind NAT), receives a generated
          IPv6 address from Teredo server. 

        Teredo server - generates and assign IPv6 address to an IPv4 node.
          Once assigned, work is done.
      
        Teredo relays - route packets between IPv4 network and IPv6 world.
          Very heavy load.

        Teredo is meant to be a temporary fix. As IPv6 becomes the default,
           Teredo will cease to exist.

Comparison of IPv4 vs. IPv6

Lectures