Monthly Archives: June 2016

Teredo – Tunneling Ipv6 Through Nats

Teredo – Tunneling IPv6 through NATs
Date: 2003-10-31
Speaker: Quincy Wu
National Chiao Tung University
IPv4 -to -IPv6 Transition Strategy (RFC 2893)
Dual Stack
Reduce the cost invested in transition by running both IPv4/IPv6 protocols on the same machine .
Tunneling
Reduce the cost in wiring by re-using current IPv4 routing infrastructures as a virtual link.
Translation
Allow IPv6 realm to access the rich contents already developed on IPv4 applications
Tunnels of IPv6 over IPv4
Encapsulating the IPv6 packet in an IPv4 packet
Tunneling can be used by routers and hosts
Manually Configured Tunnel
6to4 Tunnel (RFC 3056)
6to4 Tunnel
IPv6 Tunneling Problem (1/2)
IPv6 Tunneling Problem (2/2)
Teredo Service
Allow hosts behind NAT to access IPv6 without modifying NAT. It contains three basic components:
Teredo Client
A node wants to gain access to the IPv6 Internet.
Teredo Server
helper to provide IPv6 connectivity to Teredo clients.
Teredo Relay
An IPv6 router that can receive traffic from IPv6 realm to Teredo clients and vice versa.
Teredo Operation Model
Teredo Client gets its Teredo IPv6 address from Teredo Server.
Use Teredo Relay as Relay router.
Teredo Address Encoding
Teredo Prefix: 32 bit Teredo service prefix.
3FFE:831F::/32
Teredo Server IPv4: IPv4 address of the Teredo server.
Flags: 16 bits that document type of address and NAT.
Bit pattern: C00000UG00000000
C=1 if NAT is cone.
UG should set to 00 .
Obscured Teredo Client External Port: mapped UDP port of the client
Obscured Teredo Client External IPv4: mapped IPv4 address of the client
Teredo Tunnel: To host behind NAT
Trial of Teredo in NCTU
Protocol Decoder in Ethereal
Conclusion
Many users get private IPv4 address from their service providers, such as WLAN and GPRS. These users are unable to create IPv6 tunnels.
Before all NAT devices can be upgraded to support IPv6, Teredo service is useful for ISPs to provide IPv6 access to their users behind NAT.

About Ipv4 And Ipv6

Quick History of the Internet Protocol
About IPv4 and IPv6
IPv4 Address Space Utilization
Available IPv4 Space in /8s
IPv4 Demand -RIR Allocations
IPv4 Depletion Situation Report
The RIRs have needed between 8 and 12 /8s each year worldwide.
There are 16 /8s remaining in the available pool as of 2 June 2010.
Demand for IPv4 continues to grow from organizations around the world.
IPv4 & IPv6 – The Bottom Line
We’ re running out of IPv4 address space.
IPv6 must be adopted for continued Internet growth.
IPv6 is not backwards compatible with IPv4.
We must maintain IPv4 and IPv6 simultaneously for many years.
IPv6 deployment has begun.
IPv6 Deployment has begun
RIRs have been allocating IPv6 address space since 1999.
Thousands of organizations have received an IPv6 allocation to date.
ARIN has IPv6 distribution policies for service providers, community networks, and end-user organizations.

Public Internet to IPv4 & IPv6
Action Plans
Call to Action Broadband Access Providers
Call to Action Internet Service Providers
Call to Action Internet Content Providers
Call to Action Enterprise Customers
Call to Action Equipment Vendors
Call to Action Government Organizations
IPv6 Adoption Needs
Resources
Information Page at www.arin.net/knowledge/v4-v6.html

Social Media at ARIN www.TeamARIN.net
IPv6 Wiki
Community Use Slide Deck
ARIN Board Resolution
Letter to CEOs

Learn More and Get Involved
Learn more about IPv6
www.arin.net
www.getipv6.info
www.TeamARIN.net

Get Involved in ARIN
Public Policy Mailing List
Attend a Meeting
www.arin.net/participate/

Thank You

Ipv4 And Ipv6 Interoperability

IPv4 and IPv6 Interoperability
IPv4 client, IPv6 server over dual-stack server host
IPv6 client over dual-stack client host, IPv4 server
IPv6 address macro, function and option
Source code portability

IPv6 Address Macro, Function, Option
IPv6 address testing macros:
IN6_IS_ADDR_* (e.g. V4MAPPED)
Protocol independent socket address functions:
sock_* (e.g. cmp_addr) (section 3.8)
IPv6_ADDRFORM socket option:
change a socket type between IPv4 and IPv6, by setsockopt function with IPv6_ADDRFORM option

Source Code Portability
Automatic program conversion from IPv4 to IPv6 (sockaddr_in, AF_INET, etc) and #ifdef to use IPv6 when possible
Deal with socket address structures as opaque objects:
remove gethostbyname and gethostbyaddr, use getaddrinfo and getnameinfo (which use #ifdef internally)

Requirements For Transition To An Ipv6 Network

Overview
Requirements for transition to an IPv6 network.
Steps towards migration to an IPv6 network.
Requirements for transition to an IPv6 network
The IPv6 network should perform just as well as the IPv4 network. (ex. Enough memory)
Network Management tools for IPv6 network. (ex. Cisco Works)
No disruption in service. (ex. Enough CPU)
Address allocation.

Steps Towards IPv6 migration
Steps Towards IPv6 Migration
In IPv4 we would use variable length subnet masks to provide a hierarchical way of assigning addresses
In IPv6 we are not restricted as much and can assign one sized mask to all sites.
Steps Towards IPv6 Migration
Must be able to provide a way to monitor IPv6 enabled network with IPv6 enabled mangement tools.
Example of one such tool is Cisco Works
Steps Towards IPv6 Migration
Simple IPv4 Network for Medium to Large networks

Steps Towards IPv6 Migration
Dual-Stack

6to4 tunnel

Tunnel Broker
Layer 2 VPN

Steps Towards IPv6 Migration
6PE

Future protocol 6VPE

Steps Towards IPv6 Migration
OSPFv3
ISIS for IPv6
BGP-4+
RIPng (don’ t use this!)

Steps Towards IPv6 Migration
WinXP & Win2k are IPv6 compatible. Enable all endpoints of single site after upgrade of routers.
Make sure you plan and test how this upgrade would occur.

Ipv4 To Ipv6 Migration Strategies

IPv4 to IPv6 Migration strategies
What is IPv4
Second revision in development of internet protocol
First version to be widely implied.
Connection less protocol used for packet-switched link layer networks (e.g. Ethernet)
Uses 32 bit addresses which are equivalent to 4,294,967,296 possible unique addresses
What is IPv6
Version designed to succeed IPv4.
First publicly used IP since 1981.
Protocol for packet-switched internetworking.
IPv6 was developed by the Internet Engineering Task Force (IETF).
Uses 128 bit addresses , much bigger than IPv4.
Introduction
Global shortage of IP addresses
IP addresses have greater demands
Despite NAT (network address translation) IPv4 addresses are likely to run out in next few years
Need a fair policy for allocation of remaining IP addresses.
Deployment of IPv6 needed on urgent basis
Problems of IPv4
Fixed length, 32 bit scheme
Managed by IANA
Low government involvement
Need for international cooperation
Policy for addresses was for first come, first serve.
Pre occupation of large amount of addresses by early users

What’ s good about IPv6?
Bigger address space
No need of NAT
Full IP connectivity
Facilitates mobile devices
Allows roaming between different networks
Built in security system
Unicast ,multicast, anycast (types of addresses)

IPv6 Deployment
Mobile/wireless connections are growing at very fast rate.
Will provide larger availability of mobile networks
It is good for mobile networks for its low cost,
Higher speed of deployment
For wireless, larger IP address is required.
continued
Allocation of IPv6 is same as of IPv4.
Actual conditions are growing fast but still low and unbalanced
Migration to IPv6
Dual stack (IPv4 and IPv6 running at same time)
End nodes and routers run both at a time
Tunneling
Carry one protocol inside another
IPv6 encapsulated in IPv4 and sent to portions of network
Protocol translation will translate IPv6 packets into IPv4 packets

Pictorial explanation of Migration
Thank You!