cloudstack-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Wido den Hollander <w...@widodh.nl>
Subject IPv6 in Basic Networking progress
Date Mon, 03 Oct 2016 18:43:00 GMT
Hi,

One of the things I'm really missing in CloudStack currently is IPv6 support in Basic Networking.
Why? Our cloud at PCextreme runs on CloudStack with Basic Networking and we currently do have
IPv6 support, but without the knowledge of CloudStack.

My goals are currently simple:
- The API should return the IPv6 address of the Instance
- Security Grouping should prevent IPv6 address spoofing

This is all on the Wiki: https://cwiki.apache.org/confluence/display/CLOUDSTACK/IPv6+in+Basic+Networking

I didn't get to it due to a lack of time, but I gave it a try again this weekend and today.
With result!: https://github.com/wido/cloudstack/commits/ipv6-basic-networking

The 'nics' table already has the ip6_address column and the API will return this value when
it is set. So what I did is modify the DirectPodBasedNetworkGuru that it calculates the EUI-64
IPv6 address a Instance will obtain using SLAAC.

In the network you have to make sure the routers (not the VR, physical ones!) are sending
our Router Advertisements with the same subnet as you configured in CloudStack.

The code is actually very simple and it 'works': https://widodh.o.auroraobjects.eu/cloudstack/ipv6-basic-networking-instance.png

The CloudStack code is very, very IPv4 orientated and has many flaws. It passes IP-Addresses
as Strings and such while native types like InetAddress might be better, but that would be
a major refactor which will consume a lot of time. And honestly, I don't have the time.

As stated above our goals are currently simple. The API should return a IPv6 Address so that
after deployment anything consuming the API can instantly connect to the Instance over IPv6.

Wido

Mime
View raw message