Category Archives: IPv6

New Chapter: The come back!


new-chapter

Is it a month since you heard a my last blog post? Nope, maybe two. For my long day of silence, I am coming back for good to share again another chapter of my learning after the Ipv6 session.

Have you learnt something on my past posts? Let me give you a recap:

IPv6 for beginners – I gave highlights of IPV6 for those who are new in this term.

Introduction – I have stated all about me. Few are asking and telling me to make a post that only tackles who I am! So, I made a post for them.

Link Local Address – It defines what a Link Local Address is.

IPv6 Network AddressIPv6 Network Address corresponds to the first 64 bits of the 128 bits IPv6 address.

IPv6: No ARPWhat corresponds to ARP in IPv4 to IPv6.

Convert: IPv6 to IPv4 – Explains how to convert IPV6 to IPv4 and vice versa.

Aside from these stuffs, I have made a blog about those unrelated to IT as well:

Things Need to be Addressed! and Sorry: Easy to say, Hard To Mean.

You can go to my personal blog which has a tag of The best diary ever.

Advertisements

Convert: IPv6 to IPv4


convert-ipv6-ipv4

First requirement that you need to understand this topic is to understand first IPv6. Once you have understood what an IPv6 is all about, you are ready the challenge of converting IPv6 to IPv4 and vice-versa.

Given an IPv4 address of 192.168.1.1. Let us try to convert it to IPv6:

192.168.1.1

First of all, you can group these numbers that are separated with period:

192                     .                     168                     .                     1                     .                     1

As shown above, the address is now divided into four groups. You will use them to get its IPv6 equivalence. If you have noticed, IPv6 has hexadecimals (e.g., fe80::200:f8ff:fe21:67cf, etc.):

Make sure that you know how to convert hexadecimal numbers. We are performing that today:

192         /             16                   =             12                remainder                 0

168         /             16                   =             10                remainder                 8

1              /             16                   =             0                  remainder                 1

1              /             16                   =             0                  remainder                 1

Next is, we will get those numbers at the top:

12                    0                       10                     8                         0                        1                     0                         1

We are aware that there is no number such 12 in hex so,.. it will become:

C   0   A   8    :    0   1   0   1

Hoping,things gets clear. To convert IPv6 to IPv4, just do the same thing. convert hex to decimal:

C0

A8

01

01

Now, could you do that for me? just leave your answer as a comment. Thanks.

IPv6: No ARP


ipv6-no-arp

You can omit unused zeros for your IPv6 addresses. Now, leading zeros can also be left off within the group. Example:

2001  :  DB8  :  21  :  111  :  0  :  0  :  0  :  1/64    will become,

2001  :  DB8  :  21  :  111  :  :  1/64 , meaning there are zeros inside those two colon (:)

You can figure out how many 16 bits missing by counting how many 16 bits left. You notice that there are 5 of them and we know that they are 8 all in all… So, to make an eight groups from 5, how many 16 bits zeros omitted?

8 – 5 = 3 , A primary operation!

So, there are 3 bits omitted… 2001  :  DB8  :  21  :  111  :  0  :  0  :  0  :  1/64

We have learned that IPv4 uses ARP to discover network, but in IPv6???… no ARP at all,… It uses a protocol called Neighbor Discovery Protocol… 😉

IPv6 Network Address


ipv6-network-address

IPv6 Network Address corresponds to the first 64 bits of the 128 bits IPv6 address.Refer below:

0010000000000001.0000110110111000.0000100011110101. 0001000010100101.

0000000000000000.0000000000000000.0000000000000000.0000000000000000

The zeros in red are what the network address portion means… Let’s say:

0010  0000  0000  0001 : 0000  1101  1011  1000 : 0000  1000  1111  0101  :  0001  0000  1010  0101

These are those reds at the top that is grouped again into nibbles. I would take into consideration that you have a knowledge to conversion from binary to hexadecimal already! If not, refer to the tutorial. Let’s convert them by group:

0010  0000  0000  0001 : 0000  1101  1011  1000 : 0000  1000  1111  0101  :  0001  0000  1010  0101

2        0       0       1  :  0       13       11      8  :  0        8        15       5  :  1        0       10       5

We know that IPv6 is written in hex… And that it only covers a span from 0-9 and A-F :

0  1  2  3  4  5  6  7  8  9  A  B  C  D  E  F

So, the above statement becomes:

2001  :  0DB8  :  08F5  :  10A5        or         2001  :  DB8  :  8F5  :  10A5

Meaning, you can omit unused zeros in the beginning of the statement.

I put into instance that you understood everything,… So, before you go, I would like to test you…

Putting into instance that you are given a bits of 0001  0010  0011  0010 : 0101  0110  0111  1000 : 1001  1010  1011  1100 : 1101  1110  1111  0001, now give me the Network Address of my P.C. in IPv6… leave your answer as a comment below. thanks.

Link Local Address


link-local-address

You can now manage on your IPv6 addresses. But, you will wonder, why is that their is more than one IP address found with just only one device? The answer is simple. It is put there for you to read this article.

Link Local Address always starts with FE80  :  :  … : …  .  :  ..  :  As you enable your router, this address is generated directly as one of your addresses. Now, how does the router know about your address? How was it generated?

Remember with your MAC Address? This is the one used to generate a Link Local Address. Check this:

Host A for example has a 0000.1111.1111 for its MAC Address.

First thing to do is cut that address in half. So, it becomes 0000.11 \ 11.1111..

Next, insert characters in the middle… Constantly, those characters are FFFE

The output would be: 0000.11FF.FE11.1111

then, if we are going to elaborate the binary equivalence for the above item is:

0000  0000  0000  0000  . 0001  0001  1111  1111  .  1111  1110  0001  0001. 0001  0001  0001  0001

you will count from the very left from 1 to 7… Then flip the seventh one.. example..:

0000  0010  0000  0000  . 0001  0001  1111  1111  .  1111  1110  0001  0001. 0001  0001  0001  0001

then,.. convert again back to hexadecimal like this:

0200.11FF.FE11.1111 . Omit unused zero. The output then become this with the correct separator for IPv6.

200:11FF:FE11:1111

The result is what we called Link Local Address.

IPv6 For Beginners


IPV6-for-beginners

IPv6 (Internet Protocol version 6) is an interesting topic for IT students. Some say that if you know IPv6 (even just a small information about it), you are considered as a professional or smart. A lot of people are amazed (even IT students) if they heard IPv6. Why is that so? It is because, it’s not used that often when making some configuration – hardware. So, why are we going to talk about IPv6 while in fact it’s not that useful? Is it? Let’s find out…

We are aware that all devices like computers need an IP addresses in order to communicate. With the billions of numbers of computers nowadays (even mobile devices are connected to the internet), we need more IP addresses that IPv4 cannot accommodate. Now tell me, isn’t it important?

Let me give you a little point – to – ponder before digging deeply into IPv6. This is taken from Wikipedia.com:

IPv6 (Internet Protocol version 6) is a version of the Internet Protocol (IP) developed by the Internet Engineering Task Force (IETF) that is intended to succeed IPv4 as the dominant communications protocol used for Internet traffic. It was developed to deal with the long-anticipated IPv4 address exhaustion by implementing a new address system with a greatly increased number of possible addresses.
Deployment of IPv6 is accelerating, with a World IPv6 Launch having taken place on 6 June 2012, in which major internet service providers, especially in countries that had been lagging in IPv6 adoption, deployed IPv6 addresses to portions of their users. It was estimated that the world launch resulted in an estimated 1% of all Internet users operating from an IPv6 address.
 

Another point is from ipv6.com:

IPv6 or Internet Protocol Version 6 is the next generation protocol for the Internet. It’s designed to provide several advantages over current Internet Protocol Version 4 (or IPv4).
Both IPv6 and IPv4 define network layer protocol i.e., how data is sent from one computer to another computer over packet-switched networks such as the Internet.
 

Moving forward,

IPv6 is about an address with a 128 bits long (a big number that can accommodate a big number of addresses we need in the near future). Dividing this number of bits into two making two 64 bits. The first 64 is for the Network address and the other one for the Host ID. Network address and Host ID of IPv6 has the same meaning with that of IPv4.

This 128 bits is broken down into eight(8) groups of 16 bits. Refer to the example below:

0000000000000000.0000000000000000.0000000000000000.0000000000000000.

0000000000000000.0000000000000000.0000000000000000.0000000000000000

All in all, if you will count the number of zeros, there are 128 of them grouped into 8 groups. And each group separated by zeros is 16 bits long.

The above example is in binary and IPv6 is written in Hexadecimal. Let us then convert binary to hexadecimal. To start with, the eight groups will then be divided into nibble (4 bits) each. Refer below:

0000  0000  0000  0000 0000  0000  0000  0000  ……………(so on…)

This is one group of 16 bits and divided into nibble or 4 bits. If you can notice, there is a point or a period in every after each group (8 bits). This will serve as a guide that they are separated. For IPv6 on the other hand, colon (:) will serve as the separator.

Example:

0000  0000  0000  0000  .  0000  0000  0000  0000  ……………(so on…), when converted into hexadecimal, the IPv6 would probably looks like this:

0000:0000:0000:0000:0000:0000:0000:0000

Do you enjoy the post? Love computations?, know more about IPv6 for our next topic… the IPv6 network address. Have a nice day!

Post Updated:

Monday, June 25, 2012

Tuesday, June 26,2012