I can say at the beginning that more and more fellows are visiting this blog. Finally networking knowledge project did succeed to get some fans from out there so I felt the need to thank you all for visiting this place. As you can see here from the blog post list I didn’t follow this movement myself these days. I actually didn’t come here for some time now. My last few weeks were very intense. One of the reasons was my learning sessions that took me at least few hour a day and the most interesting reason was my new assignment at work. I got an assignment to carry out and even more interesting to secure IPv6 in our company for a whole network segment. At least one segment for now, but it was a nice thing to get me into IPv6 deep dive learning. And I make the last step of the learning like this:
What is better than document the networking job that you did until is fresh in your head. So I write it down for the future implementations but rather than put it into my notepad I do it here on my blog, so next time is easier to search for it and something even better than that, you can use it too.
This time I will write about some of the most important things in IPv6 networking that you needed to know before you go on and carry out IPv6 implementation. RA router advertisements and some strange special bits in the RA packet header that are configuration option flags. Good thing is that there are only a few of them, four to be precise. The bad thing is that at first, I needed a couple of days to stop mixing them up.
There are first two flags:
- 1 These two are always in the RA advertisement packet and they are telling the host how he can get his IPv6 address. M flag – stands for Managed Address Configuration and it says to host receiving the RA advertisement that somewhere in his network there is a DHCPv6 server available and that he should send a DHCPv6 request out of his interface to get his IPv6 address. Of course, if the M flag is changed to 0 we say that the flag is cleared and that means basically that host will not try to get his address from DHCPv6 server and that it will probably try to autoconfigure himself with SLAAC.
- 2 The next flag is O flag. O flag stands for Other configuration and it tells host receiving the RA message that he should use DHCP to get other configuration parts like DNS server IPv6 address and something else maybe. This is actually only was for now to get DNS info on the host, SLAAC in today’s implementation it’s not able to send the info to host about DNS server IPv6 address. That will probably force you to use both SLAAC and DHCPv6 to on those subsets where you want to use automatic host configuration method.
There is RFC 6101 that specifies how will IPv6 Router Advertisement allow IPv6 routers to give a DNS server address list to using RA router advertisement message. For now, I did not hear of this being implemented in Cisco IOS or some other router OS. One day it will be and you will be able to really chose between SLAAC and DHCPv6.
There are two more flags:
- 3 You will probably put prefix information in RA messages to say to host what prefix of the IPv6 address to use when they autoconfigure themselves. If you use flag L you will say to the host that receives that RA that other devices with the same prefix are on the same subnet. To make it simpler, you will tell them to speak between them using only switch (L2) and not to send every message to the router and then from the router to another host on the same subnet.
- 4 The last flag is A flag. This one is automatic one and the name A probably stands for Address Configuration Flag. This one will tell the host to use the prefix inside RA and his own NIC mac address and generate his own IPv6 address. Simply said use SLAAC (Stateless address autoconfiguration). This method uses EUI-64 method for generating the IPv6 address so you can read more about SLAAC and EUI-64 on the post linked here.
All this is just theory. The next part will be about the implementation and all possible issues that I came up with. All this is normal in the first implementation of some new technology and will be even more helpful that this post here. Link to IPv6 implementation article