INTRODUCTION TO IP VERSION 6:
The Current Version Of IP (Known As Version 4 Or IPV4) Has Not Been Substantially Changed Since RFC 791 Was Published In 1981. IPV4 Has Proven To Be Robust, Easily Implemented And Interoperable, And Has Stood The Test Of Scaling An Internetwork To A Global Utility The Size Of Today’s Internet. This Is A Tribute To Its Initial Design.
However, The Initial Design Did Not Anticipate The Following :
► The Recent Exponential Growth Of The Internet And The Impending Exhaustion Of The Ipv4 Address Space.
IPV4 Addresses Have Become Relatively Scarce, Forcing Some Organizations To Use A Network Address Translator (NAT) To Map Multiple Private Addresses To A Single Public IP Address. While NATs Promote Reuse Of The Private Address Space, They Do Not Support Standards-Based Network Layer Security Or The Correct Mapping Of All Higher Layer Protocols And Can Create Problems When Connecting Two Organizations That Use The Private Address Space.
Additionally, The Rising Prominence Of Internet-Connected Devices And Appliances Ensures That The Public IPv4 Address Space Will Eventually Be Depleted.
► The Growth Of The Internet And The Ability Of Internet Backbone Routers To Maintain Large Routing Tables.
Because Of The Way That IPV4 Address Prefixes Have Been And Are Currently Allocated, There Are Routinely Over 85,000 Routes In The Routing Tables Of Internet Backbone Routers. The Current IPV4 Internet Routing Infrastructure Is A Combination Of Both Flat And Hierarchical Routing.
► The Need For Simpler Configuration.
Most Current IPV4 Implementations Must Be Either Manually Configured Or Use A Stateful Address Configuration Protocol Such As Dynamic Host Configuration Protocol (DHCP). With More Computers And Devices Using IP, There Is A Need For A Simpler And More Automatic Configuration Of Addresses And Other Configuration Settings That Do Not Rely On The Administration Of A DHCP Infrastructure.
► The Requirement For Security At The IP Level.
Private Communication Over A Public Medium Like The Internet Requires Encryption Services That Protect The Data Being Sent From Being Viewed Or Modified In Transit. Although A Standard Now Exists For Providing Security For IPV4 Packets (Known As Internet Protocol Security Or IPSEC), This Standard Is Optional And Proprietary Solutions Are Prevalent.
► The Need For Better Support For Real-Time Delivery Of Data—Also Called Quality Of Service (QOS).
While Standards For QOS Exist For IPV4, Real-Time Traffic Support Relies On The IPV4 Type Of Service (TOS) Field And The Identification Of The Payload, Typically Using A UDP Or TCP Port. Unfortunately, The IPV4 TOS Field Has Limited Functionality And Over Time There Were Various Local Interpretations. In Addition, Payload Identification Using A TCP And UDP Port Is Not Possible When The Ipv4 Packet Payload Is Encrypted.
To Address These And Other Concerns, The Internet Engineering Task Force (IETF) Has Developed A Suite Of Protocols And Standards Known As IP Version 6 (IPV6). This New Version, Previously Called IP-The Next Generation (Ipng), Incorporates The Concepts Of Many Proposed Methods For Updating The Ipv4 Protocol. The Design Of IPV6 Is Intentionally Targeted For Minimal Impact On Upper And Lower Layer Protocols By Avoiding The Random Addition Of New Features.
IPV6 FEATURES :
The Following Are The Features Of The IPV6 Protocol :
◙ New Header Format
◙ Large Address Space
◙ Efficient And Hierarchical Addressing And Routing Infrastructure
◙ Stateless And Stateful Address Configuration
◙ Built-In Security
◙ Better Support For Prioritized Delivery
◙ New Protocol For Neighboring Node Interaction
◙ Extensibility
The Following Sections Discuss Each Of These New Features In Detail :
NEW HEADER FORMAT :
The IPV6 Header Has A New Format That Is Designed To Keep Header Overhead To A Minimum. This Is Achieved By Moving Both Non-Essential Fields And Optional Fields To Extension Headers That Are Placed After The Ipv6 Header. The Streamlined Ipv6 Header Is More Efficiently Processed At Intermediate Routers.
IPV4 Headers And IPV6 Headers Are Not Interoperable. Ipv6 Is Not A Superset Of Functionality That Is Backward Compatible With Ipv4. A Host Or Router Must Use An Implementation Of Both Ipv4 And Ipv6 In Order To Recognize And Process Both Header Formats. The New Ipv6 Header Is Only Twice As Large As The Ipv4 Header, Even Though Ipv6 Addresses Are Four Times As Large As Ipv4 Addresses.
LARGE ADDRESS SPACE :
IPV6 Has 128-Bit (16-Byte) Source And Destination IP Addresses. Although 128 Bits Can Express Over 3.41038 Possible Combinations, The Large Address Space Of Ipv6 Has Been Designed To Allow For Multiple Levels Of Subnetting And Address Allocation From The Internet Backbone To The Individual Subnets Within An Organization.
Even Though Only A Small Number Of The Possible Addresses Are Currently Allocated For Use By Hosts, There Are Plenty Of Addresses Available For Future Use. With A Much Larger Number Of Available Addresses, Address-Conservation Techniques, Such As The Deployment Of Nats, Are No Longer Necessary.
EFFICIENT AND HIERARCHICAL ADDRESSING AND ROUTING INFRASTRUCTURE :
Ipv6 Global Addresses Used On The Ipv6 Portion Of The Internet Are Designed To Create An Efficient, Hierarchical, And Summarizable Routing Infrastructure That Is Based On The Common Occurrence Of Multiple Levels Of Internet Service Providers.
STATELESS AND STATEFUL ADDRESS CONFIGURATION :
To Simplify Host Configuration, IPv6 Supports Both Stateful Address Configuration, Such As Address Configuration In The Presence Of A DHCP Server, And Stateless Address Configuration (Address Configuration In The Absence Of A DHCP Server). With Stateless Address Configuration, Hosts On A Link Automatically Configure Themselves With IPv6 Addresses For The Link (Called Link-Local Addresses) And With Addresses Derived From Prefixes Advertised By Local Routers. Even In The Absence Of A Router, Hosts On The Same Link Can Automatically Configure Themselves With Link-Local Addresses And Communicate Without Manual Configuration.
BUILT-IN SECURITY :
Support For IPSEC Is An IPV6 Protocol Suite Requirement. This Requirement Provides A Standards-Based Solution For Network Security Needs And Promotes Interoperability Between Different Ipv6 Implementations.
BETTER SUPPORT FOR PRIORITIZED DELIVERY :
New Fields In The Ipv6 Header Define How Traffic Is Handled And Identified. Traffic Identification Using A Flow Label Field In The Ipv6 Header Allows Routers To Identify And Provide Special Handling For Packets Belonging To A Flow, A Series Of Packets Between A Source And Destination. Because The Traffic Is Identified In The Ipv6 Header, Support For Prioritized Delivery Can Be Achieved Even When The Packet Payload Is Encrypted With IPSEC.
NEW PROTOCOL FOR NEIGHBORING NODE INTERACTION :
The Neighbor Discovery Protocol For Ipv6 Is A Series Of Internet Control Message Protocol For Ipv6 (Icmpv6) Messages That Manage The Interaction Of Neighboring Nodes (Nodes On The Same Link). Neighbor Discovery Replaces The Broadcast-Based Address Resolution Protocol (ARP), Icmpv4 Router Discovery, And Icmpv4 Redirect Messages With Efficient Multicast And Unicast Neighbor Discovery Messages. EXTENSIBILITY :
IPV6 Can Easily Be Extended For New Features By Adding Extension Headers After The Ipv6 Header. Unlike Options In The Ipv4 Header, Which Can Only Support 40 Bytes Of Options, The Size Of Ipv6 Extension Headers Is Only Constrained By The Size Of The Ipv6 Packet.
IPV6 ADDRESSES ARE BROADLY CLASSIFIED INTO THREE CATEGORIES :
1) UNICAST ADDRESSES : A Unicast Address Acts As An Identifier For A Single Interface. An Ipv6 Packet Sent To A Unicast Address Is Delivered To The Interface Identified By That Address.
2) MULTICAST ADDRESSES : A Multicast Address Acts As An Identifier For A Group/Set Of Interfaces That May Belong To The Different Nodes. An Ipv6 Packet Delivered To A Multicast Address Is Delivered To The Multiple Interfaces.
3) ANYCAST ADDRESSES : Anycast Addresses Act As Identifiers For A Set Of Interfaces That May Belong To The Different Nodes. An Ipv6 Packet Destined For An Anycast Address Is Delivered To One Of The Interfaces Identified By The Address.
IPV6 ADDRESS NOTATION :
IPV6 Addresses Are Denoted By Eight Groups Of Hexadecimal Quartets Separated By Colons In Between Them.
Following Is An Example Of A Valid IPv6 Address :
2001:Cdba:0000:0000:0000:0000:3257:9652
Any Four-Digit Group Of Zeroes Within An Ipv6 Address May Be Reduced To A Single Zero Or Altogether Omitted.
The Following Ipv6 Addresses Are Similar And Equally Valid :
2001:Cdba:0000:0000:0000:0000:3257:9652
2001:Cdba:0:0:0:0:3257:9652
2001:Cdba::3257:9652
The URL For The Above Address Will Be Of The Form :
Http://[2001:Cdba:0000:0000:0000:0000:3257:9652]/
NETWORK NOTATION IN IPV6 :
The IPV6 Networks Are Denoted By Classless Inter Domain Routing (CIDR) Notation. A Network Or Subnet Using The IPv6 Protocol Is Denoted As A Contiguous Group Of IPv6 Addresses Whose Size Must Be A Power Of Two. The Initial Bits Of An IPv6 Address (These Are Identical For All Hosts In A Network) Form The Network S Prefix. The Size Of Bits In A Network Prefix Are Separated With A / .
For Example, 2001:Cdba:9abc:5678::/64 Denotes The Network Address 2001:Cdba:9abc:5678. This Network Comprises Of Addresses Rearranging From 2001:Cdba:9abc:5678:: Up To 2001:Cdba:9abc:5678:Ffff:Ffff:Ffff:Ffff. In A Similar Fashion, A Single Host May Be Denoted As A Network With A 128-Bit Prefix. In This Way, Ipv6 Allows A Network To Comprise Of A Single Host And Above.
SPECIAL ADDRESSES IN IPV6 :
► ::/96 The Zero Prefix Denotes Addresses That Are Compatible With The Previously Used Ipv4 Protocol.
► ::/128 An Ipv6 Address With All Zeroes In It Is Referred To As An Unspecified Address And Is Used For Addressing Purposes Within A Software.
► ::1/128 This Is Called The Loop Back Address And Is Used To Refer To The Local Host. An Application Sending A Packet To This Address Will Get The Packet Back After It Is Looped Back By The Ipv6 Stack. The Local Host Address In The Ipv4 Was 127.0.0.1 .
► 2001:Db8::/32 This Is A Documentation Prefix Allowed In The Ipv6. All The Examples Of Ipv6 Addresses Should Ideally Use This Prefix To Indicate That It Is An Example.
► Fec0::/10 This Is A Site-Local Prefix Offered By IPv6. This Address Prefix Signifies That The Address Is Valid Only Within The Local Organization. Subsequently, The Usage Of This Prefix Has Been Discouraged By The RFC.
► Fc00::/7 This Is Called The Unique Local Address (ULA). These Addresses Are Routed Only Within A Set Of Cooperating Sites. These Were Introduced In The Ipv6 To Replace The Site-Local Addresses. These Addresses Also Provide A 40-Bit Pseudorandom Number That Reduces The Risk Of Address Conflicts.
► Ff00::/8 This Prefix Is Offered By Ipv6 To Denote The Multicast Addresses. Any Address Carrying This Prefix Is Automatically Understood To Be A Multicast Address.
► Fe80::/10 This Is A Link-Local Prefix Offered By Ipv6. This Address Prefix Signifies That The Address Is Valid Only In The Local Physical Link.
CONVERTING FROM IPV4 TO IPV6 :
Everyone Seem To Convert A Ipv4 Address To Binary, Then To Ipv6. Why? Why Waste Time And Do Things The Long Way? Not Cool.
When Would You Need To Do This? One Specific Use Is IPv6 6-to-4 tunnels, Which Always Concatenates 2002::/16 With The Ipv4 Address Embedded.
With Automatic 6-To-4-Tunnels, Your Address Format Is As Follow:
2002:<32 bit Ipv4 Site Address In Hex≫:<16 bit Network Number In Hex>::/64
The Question Is How To Do The Conversion.
Firstly Before Starting I Will Assume Everyone Knows The Following :
- Binary is a Base-2 numbering system, as it has only 0,1
- Decimal is a Base-10 numbering system, as it has 0,1,2,3,4,5,6,7,8,9
- Hexadecimal is a Base-16 Numbering System, As It Has 0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F
I Also Assume You Know The Hex Values In Decimal:
A | = | 10 |
B | = | 11 |
C | = | 12 |
D | = | 13 |
E | = | 14 |
F | = | 15 |
Two More Things I Would Like To Mention Before Explaining The Conversion.
An Ipv4 Address : Example 192.168.99.1
- Each Octet (8 bits) “between the dot-thingys” denote 1 byte
An IPv6 address : example 2001:0db8:85a3:0000:0000:8a2e:0370:7334
- Two Tuples (1 Tuple = 4 bits = 1 Hex character) denotes 1 byte
Then Converting Is Easy. Lets Take The Following Ipv4 Address: 192.168.99.1 and convert it to Hex.
Step1 >
Divide the first octet (192) by 16 (since Hex is a Base-16)
IE : 192/16 = 12 times exactly with 0 left over
- 12 in Hex is represented as C
- 0 (zero) in Hex is, you guessed it, 0
Thus 192 in HEX is C0
Step2 >
Repeat step 1 with the second octet (168),
IE : 168/16 = 10 times with 8 left over because 10*6 = 160,
- 10 in HEX is A
- 8 in HEX is 8
Thus 168 in HEX is A8
Step3 >
Repetition rules!!! Third octet (99)
IE : 99/16 = 6 times with 3 left over
- 6 in HEX is 6
- 3 in HEX is 3
Thus 99 in HEX is 63
Step4 >
Last octet
IE : 1/16 = 0 times with 1 left over
- 0 in HEX is, yeah it is 0
- 1 in HEX is 1
Thus 1 in HEX is 01
So the IPv4 address of 192.168.99.1, represented in the IPv6 address portion would be C0A8:6301.
So When Using Ipv6 6-To-4 Tunnels, On The One Endpoint Of The Tunnel, With The Ipv4 Address Of 192.168.99.1, The Complete Ipv6 Address Would Be 2002:C0A8:6301::1/64
CONVERTING BACK FROM IPV6 TO IPV4:
Now To Convert The Same Portion Of The Ipv6address 2002:C0A8:6301::1/64 back to IPv4, The Reverse Method Would Apply.
Let Me Point One More Thing About Base-16 Out To Understand Why I’m Doing What I Am Below:
160 = 1
161 = 16
Taking the portion C0A8:6301, first divide the address into 2 Tuple-groupings (2 Hex Characters) = C0 A8 63 01
Step1 >
Take C0 and multiply the first character ‘C’ by 16 and the second character ’0′ by 1.
Add The Two Decimal Values Together To Get The Ipv4 Decimal Value
IE: ((C=12)*16) + (0*1) = 192
Step2 >
Repeat the same process with A8,
IE: ((A=10)*16) + (8*1) = 168
Step3 >
Repeat the same process with 63,
IE: (6*16) + (3*1) = 99
Step4 >
Repeat the same process with 01,
IE: (0*16) + (1*1) = 1
This will give you an IPv4 address of 192.168.99.1
IPV6 Vs IPV4 COMPARISON TABLE :
This Table Gives A Brief Look At The Major Differences Between IPv6 And IPv4. The IPv4 Vs IPv6 Comparison :
IPv4 | IPv6 | |
RFC Published | 1981 | 1999 |
Address Format | 32 Bits Dotted Decimal Notation. | 128 Bits Hexadecimal Notation. |
Number of Addresses | 232 | 2128 |
Subnetting | Subnet identified by subnet mask. | Subnet identified within the address. |
Routing Protocols | RIP, RIPv2, EIGRP | RIP, RIPv2, EIGRP |
Classfull / Classless | Classful and Classless. | Classless Addressing Scheme. |
Address Configuration | Static, DHCP | Stateless Autoconfiguration, DHCP v6. |
Loopback Address | 127.0.0.1 | ::1 |
Broadcast Address Types | Multicast / Broadcast | Anycast |
Header Length | 20 bytes | 40 bytes |
For IPV6 Reference Please :
1. Difference Between IPv4 & IPv6 :
2. What You Need To Know About IPv6 :
3. Important Points To Know About IPv6 :
4. CISCO - IPv6 (Internet Protocol Version):
5. CISCO - IPv6 Command Reference :
6. IPv6 - “Unicast, Multicast And Anycast” Configuration In CISCO IOS :
7. CISCO - IPv6 Access Control Lists :
9. BGP Neighbor Relationships (IPv6):
IPV6/IPV4 CONVERTER :
This Calculator/Converter Can Assist In The Conversion Of IPv4 Type IP Numbers To IPv6 Notation.
CONCLUSION:
The Goal Of This Article Is To Give An Easy Way To Understand The “Converting From IPv4 To IPv6". Hope This Article Will Help Every Beginners Who Are Going To Start Cisco Lab Practice Without Any Doubts.
Some Topics That You Might Want To Pursue On Your Own That We Did Not Cover In This Article Are Listed Here, Thank You And Best Of Luck.
DISCLAIMER:
This Document Carries No Explicit Or Implied Warranty. Nor Is There Any Guarantee That The Information Contained In This Document Is Accurate. Every Effort Has Been Made To Make All Articles As Complete And As Accurate As Possible.
It Is Offered In The Hopes Of Helping Others, But You Use It At Your Own Risk. The Author Will Not Be Liable For Any Special, Incidental, Consequential Or Indirect Any Damages Due To Loss Of Data Or Any Other Reason That Occur As A Result Of Using This Document. But No Warranty Or Fitness Is Implied. The Information Provided Is On An "As Is" Basic. All Use Is Completely At Your Own Risk.
For Home Page Of - > SCN InF4 TECH
To Send Email
Window Minimize OR Window Maximize
No comments:
Post a Comment