I recently worked on a pilot project which aim is to provide IPv6-only global connectivity to a open wireless network. The network is mostly made of IEEE 802.11n base stations routing traffic from various mobile devices (e,g. laptops, smartphones) to outside services on the Internet. I had to address three challenges; the first being the lack of proper IPv6 support on some platforms, in particular on 'old' Android 4.x devices. The second challenge was to forward and transport the native IPv6 traffic from the clients, through the base stations and up to the nearest service provider's exit point. To address the latter I decided to leverage 6VPE on the MPLS backbone; the latter being composed of multi-vendors equipments from Cisco Systems and Juniper Networks. The label distribution protocol chosen is LDP for it's simplicity of operation and troubleshooting. Finally, and this is the topic of this article, I had to provide Internet Services to the wireless VPN instances so mobile clients can browse the web in a transparent and efficient manner, despite their physical locations and the base station they're associated with.
Recently, I have setup as part of an important lab, an IPsec site-to-site tunnel between a Cisco CSR 1000v router and an OpenBSD gateway running OpenIKED. The latter not only terminates a GRE/IP tunnel, but also provides a global internet connectivity through NAT/PAT. The intend is to secure the GRE traffic between the two devices which are located in two different sites and who are reachable across the internet. The Cisco CSR 1000v instance is also behind NAT, therefore the configuration is slightly more complex than what we may be used to and require the use of the IPsec Tunnel mode and the NAT-T capability. To establish the secure IPsec sessions I decided to use the latest iteration of the Internet Key Exchange protocol, namely IKEv2.
As promised, here is the second article on IP Multicast. This one specifically cover the addressing, which evolved in parallel to the high number of standards that define what multicast is today. I tried to compile a list that is as comprehensive as possible; if you find something that I omitted, please let me know, I will be glad to update this article accordingly. I hope this article will help you to quickly and efficiently review all or specific part of the multicast addressing.
This article is the first of a series about IP multicast. Multicast is a great technology which you may come across as an network engineer. Unfortunately, it's still a frequently overlooked technology due to its alleged complexity. In fact, multicast addressing is no more complex than unicast. Multicast routing is only about understanding a few basic principles, but once you get them, you can easily design and implement very large and sparse multicast networks. Troubleshooting is certainly more difficult because of the stateful nature of multicast routing, but with proper use of tools and procedures, you can quickly figure out where problems lies and how to solve them. As these aspects are very different from each other, I will cover them in separate articles. Here's the first article; an overview of IP multicast.
A few months ago, I had that crazy idea to write a book about IP Multicast. It's a technology I always found very attractive, but unfortunately quite overlooked by most network professionals. There is already lot of great literature on the subject, so I wanted to bring something new; treating the subject in both a vendor neutral and network-layer independent way. In addition to the consequent theoretical aspect of multicast, I wanted to share my practical experience by covering tools and troubleshooting procedures.
Fortunately, or unfortunately, I will let you judge, I've no more spare time to continue the writing of this book. Recent updates in my professional career plan have shorten my spare time considerably; enough to ask myself if it's not more profitable to release the content I already wrote for free, so anyone can benefit of it.