Internet Protocol version 10 (IPv10).
Internet Protocol version 10 (IPv10)
v Introduction:
- Internet is the global wide network used for communication between hosts connected to it.
- These connected hosts (PCs, servers, routers, mobile devices, etc.) must have a global unique addresses to be able to communicate through the Internet and these unique addresses are defined in the Internet Protocol (IP).
- These connected hosts (PCs, servers, routers, mobile devices, etc.) must have a global unique addresses to be able to communicate through the Internet and these unique addresses are defined in the Internet Protocol (IP).
- The first version of the Internet Protocol is IPv4.
- When IPv4 was developed in 1975, it was not expected that the
number of connected hosts to the Internet reach a very huge number of hosts
more than the IPv4 address space, also it was aimed to be used for experimental
purposes in the beginning.
- IPv4 is (32-bits) address allowing approximately 4.3 billion
unique public IP addresses.
- A few years ago, with the massive increase of connected hosts to
the Internet, IPv4 addresses started to run out.
- Three short-term solutions (CIDR, Private addressing, and NAT)
were introduced in the mid-1990s but even with using these solutions, the IPv4 address
space ran out in February, 2011 as announced by IANA, and in 2015, 4 out of 5
of the RIRs (such as RIPE NCC, APNIC, ARIN, and LACNIC) announced the depletion
of the IPv4 address space, and AFRINIC expects its announcement of the IPv4 address
space depletion in 2017.
- A long term solution (IPv6) was introduced to increase the address
space used by the Internet Protocol and this was defined in the Internet
Protocol version 6 (IPv6).
- IPv6 was developed in 1995.
- IPv6 is (128-bits) address and can support a huge number of
unique IP addresses that is approximately equals to 2^128 unique addresses.
- So, the need for IPv6 became a vital issue to be able to support
the massive increase of connected hosts to the Internet after the IPv4 address
space exhaustion.
- The migration from IPv4 to IPv6 became a necessary thing, but
unfortunately, it would take decades for this full migration to be accomplished.
- More than 10 years have passed since IPv6 was developed, but no
full migration happened till now and this would cause the Internet to be
divided into two parts, as IPv4 still dominating on the Internet traffic and
new Internet hosts will be assigned IPv6 addresses.
- So, the need for solutions to the IPv4 and IPv6 coexistence
became an important issue in the migration process as we cannot wake up in the
morning and find all IPv4 hosts are migrated to be IPv6 hosts, especially, as
most enterprises’ networks did not do this migration for creating a full IPv6
implementation.
- Also, the request for using IPv6 addresses in addition to the
existing IPv4 addresses (IPv4/IPv6 Dual Stacks) in all enterprise networks did
not achieve a large implementation that can make IPv6 the most dominated IP in
the Internet as many people believe that they will not have benefits from just
having a larger IP address bits and IPv4 satisfies their needs, also, not all
enterprises’ devices support IPv6 and also many people are afraid of the
service outage that can be caused due to this migration.
- The recent solutions for IPv4 and IPv6 coexistence are:
a) IPv4/IPv6 Dual Stacks.
b) Tunneling.
c) NAT-PT and NAT64.
- The first solution: (IPv4/IPv6 Dual Stacks), allows both IPv4 and
IPv6 to coexist by using both IPv4 and IPv6 addresses for “all hosts” at the
same time, but this solution does not allows IPv4 hosts to communicate to IPv6
hosts and vice versa.
- The second solution: (Tunneling), allows IPv6 hosts to
communicate to each other through an IPv4 network, but still does not allows
IPv4 hosts to communicate to IPv6 hosts and vice versa.
- The third solution: (NAT-PT), allows IPv6 hosts to communicate to
IPv4 hosts with only using hostnames and getting DNS involved in the
communication process but this solution was inefficient because it does not
allows communication using direct IP addresses, also the need for so much protocol
translations of the source and destination IP addresses made the solution complex
and not applicable that’s why it was moved to the “Historic” status in the RFC
2766. Also, NAT64 requires so much protocol translations and statically
configured bindings, and also getting a DNS64 involved in the communication
process.
v Internet Protocol version 10
(IPv10):
- IPv10 is the solution in this essay.
- It solves the issue of allowing IPv6 only hosts to communicate to
IPv4 only hosts and vice versa in a simple and very efficient way, especially
when the communication is done using both direct IP addresses and when using hostnames
between IPv10 hosts, as there is no need for protocol translations or getting
the DNS involved in the communication process more than its normal address
resolution function.
- IPv10 allows hosts from two IP versions to be able to communicate,
and this can be accomplished by having an IPv10 packet containing a mixture of
IPv4 and IPv6 addresses in the same IP packet header.
- From here the name of IPv10 arises, as the IP packet can contain
(IPv6 + IPv4) addresses in the same header.
v The advantages of using IPv10:
1) Introduces an efficient way of communication between IPv6 hosts
and IPv4 hosts.
2) Allows IPv4 only hosts to exist and communicate with IPv6 only hosts
even after the depletion of the IPv4 address space.
3) Adds flexibility when making a query sent to the DNS for
hostname resolution as IPv4 and IPv6 hosts can communicate with IPv4 or IPv6
DNS servers and the DNS can reply with any record it has (either an IPv6 record
“Host AAAA record” or an IPv4 record “Host A record”).
4) There is no need to think about migration as both IPv4 and IPv6
hosts can coexist and communicate to each other which will allow the usage of
the address space of both IPv4 and IPv6 making the available number of
connected hosts be bigger.
5) IPv10 support on all Internet connected hosts can be deployed in
a very short time as there is no dependence on enterprise users and it is just
a software development process in the NIC cards of all hosts to allow
encapsulating both IPv4 and IPv6 in the same IP packet header.
6) Offers the four types of communication between hosts:
·
IPv6
hosts to IPv4 hosts (6 to 4).
·
IPv4
hosts to IPv6 hosts (4 to 6).
·
IPv6
hosts to IPv6 hosts (6 to 6).
·
IPv4
hosts to IPv4 hosts (4 to 4).
a) IPv10: IPv6 Host-to-IPv4 Host:
- The following figure shows the IPv10 packet source and destination address fields:
Note:-
- The Destination Address field is 128-bit field.
- When the destination host is an IPv4 host, the destination address field will have
the first 48-bits filled with 0s and, the second 48-bits filled with the source MAC address, and the last 32 bits filled with the destination IPv4 address.
- The IPv10 TCP/IP Configuration on the sending host will be as follows:
- The IPv10 Operation will be as follows:
b) IPv10: IPv4 Host-to-IPv6 Host:
- The following figure shows the IPv10 packet source and destination address fields:
Note:-
- The Source Address field is 128-bit field.
- When the source host is an IPv4 host, the source address field will have
the first 96-bits filled with 0s and the second 32-bits filled with the source IPv4
address.
- The IPv10 TCP/IP Configuration on the sending host will be as follows:
- The IPv10 Operation will be as follows:
c) IPv10: IPv6 Host-to-IPv6 Host:
- The following figure shows the IPv10 packet source and destination address fields:
d) IPv10: IPv4 Host-to-IPv4 Host:
- The following figure shows the IPv10 packet source and destination address fields:
- Traffic class (8-bits).
- Flow Label (20-bits).
- Payload Length (16-bits).
- Next Header (8-bits).
- Hop Limit (8-bits).
a) IPv10: IPv6 Host-to-IPv4 Host:
- The following figure shows the IPv10 packet source and destination address fields:
- The Destination Address field is 128-bit field.
- When the destination host is an IPv4 host, the destination address field will have
the first 48-bits filled with 0s and, the second 48-bits filled with the source MAC address, and the last 32 bits filled with the destination IPv4 address.
- The IPv10 TCP/IP Configuration on the sending host will be as follows:
IP address: IPv6 Address.
Prefix Length: Length.
Default Gateway: IPv6 address (Optional).
DNS Addresses: IPv6/IPv4 Addresses.
- The IPv10 Operation will be as follows:
b) IPv10: IPv4 Host-to-IPv6 Host:
- The following figure shows the IPv10 packet source and destination address fields:
Note:-
- The Source Address field is 128-bit field.
- When the source host is an IPv4 host, the source address field will have
the first 96-bits filled with 0s and the second 32-bits filled with the source IPv4
address.
- The IPv10 TCP/IP Configuration on the sending host will be as follows:
IP address: IPv4 Address.
Subnet Mask: Mask.
Default Gateway: IPv4 address.
DNS Addresses: IPv6/IPv4 Addresses.
- The IPv10 Operation will be as follows:
c) IPv10: IPv6 Host-to-IPv6 Host:
- The following figure shows the IPv10 packet source and destination address fields:
d) IPv10: IPv4 Host-to-IPv4 Host:
- The following figure shows the IPv10 packet source and destination address fields:
v IPv10 Packet Header:
IPv10 Packet Header Format
-
Version (4-bits):
·
0100
è
IPv4 Packet (Source and destination addresses are IPv4).
·
0110
è
IPv6 Packet (Source and destination addresses are IPv6).
·
1010
è
IPv10 Packet (Source and destination addresses are IPv4/IPv6).
- Traffic class (8-bits).
- Flow Label (20-bits).
- Payload Length (16-bits).
- Next Header (8-bits).
- Hop Limit (8-bits).
-
Source Address (128-bits):
-
Destination Address (128-bits):
v Important Notes:
- IPv4 and IPv6 routing must be enabled on all routers, so when a
router receives an IPv10 packet, it should use the appropriate routing table
based on the destination address within the IPv10 packet.
- That means, if the received IPv10 packet contains an IPv4 address
in the destination address field, the router should use the IPv4 routing table
to make a routing decision, and if the received IPv10 packet contains an IPv6
address in the destination address field, the router should use the IPv6
routing table to make a routing decision.
- All the Internet connected hosts must be IPv10 hosts to be able to communicate regardless the used IP version, and the IPv10 deployment process can be accomplished by ALL technology companies developing OSs for hosts, networking and security devices.
v IPv10 with DNS:
- All the Internet connected hosts must be IPv10 hosts to be able to communicate regardless the used IP version, and the IPv10 deployment process can be accomplished by ALL technology companies developing OSs for hosts, networking and security devices.
v IPv10 with DNS:
^_^
ReplyDelete