Pete Zaitcev ([info]zaitcev) wrote,

Berrange on KVM with routed IPv6

Saw a blog post by Dan that explains how to set up IPv6 on KVM hosts with routed virtual networks. I pretty much did everything like he suggests except I used the "Rich Jones" prefix fd2d:acfb:74cc::/48 instead of Dan's 2000:dead:beef::/48. One thing that bothers me with all this is the need to have statics at the upstream router and the ICMP redirects. It would be totally kickass if Dan came up with some kind of "standard" Zebra config or found some other way to make it all automatic. The sticking point is that in case of OSPF you still need to configure the upstream router, and in a non-obvious way, too. Static routes are well understood. Back in the 90s, we just ran routed everywhere, which required zero administration, but that's not IPv6 compatible.

Honestly, the more I look at challenges that virtual hosts introduce, the more I think that bridged networking should be the default in libvirt. The only reason I personally do not do it is that historically Linux bridging was a mess full of bugs, plus it changed in incompatible ways every 7 to 10 kernel releases. This may be not the case anymore, but I am too set in my ways.


  • Post a new comment

    Error

    Anonymous comments are disabled in this journal

    Your reply will be screened

    Your IP address will be recorded 

  • 10 comments

[info]zart.id.fedoraproject.org

June 17 2011, 06:24:01 UTC 11 months ago

If you're going to do bridging see https://bugzilla.redhat.com/show_bug.cgi?id=501934 Meh...

[info]kazriko

June 21 2011, 21:56:11 UTC 11 months ago

What he's describing above there with that bug report would seem to be a feature, not a bug. If someone is dumb enough to setup a radvd inside of a bridged vm cluster, then that radvd is on the whole network and everything including the host will listen to it. You shouldn't use bridging for that sort of configuration.

I'll do a bit of fiddling with how to use radvd to setup the routing for such a virtual network on Ubuntu when I get home tonight.

[info]kazriko

June 21 2011, 21:58:47 UTC 11 months ago

For IPv4, I've always done bridging with KVM, never really had any problems with it. I think I'm doing IPv6 bridging as well at home, it just picks up an ipv6 address from Requiem (my main router.)

[info]zaitcev

June 22 2011, 01:41:59 UTC 11 months ago

On Fedora, in case KVM with a routed virtual network, libvirt starts radvd with a pre-defined configuration. See Dan Berrange's post about it. As far as I know, it cannot be switched off, so if you want to run radvd by hand, you need to use KVM without libvirt.

[info]kazriko

June 22 2011, 02:10:27 UTC 11 months ago

That's ugly. I'll see if it's the same in Ubuntu, or if I can run it as a non-routed one and make my own radvd to route it.

[info]zaitcev

June 22 2011, 03:18:45 UTC 11 months ago

How is that "ugly"? It's the same as the dnsmasq that libvirt also runs.

[info]kazriko

June 22 2011, 04:30:51 UTC 11 months ago

Just the inability to alter the configuration by hand. I'm thinking there's a way to do the routing automatically, but I need to edit radvd's config on the vm host to do it.

[info]kazriko

June 22 2011, 04:51:53 UTC 11 months ago Edited:  June 22 2011, 06:11:08 UTC

Ubuntu 11.04 doesn't seem to support IPv6 yet as part of its network config, so I can probably route it myself. :)

Bah. Apparently Ubuntu 11.04 doesn't yet support ipv6 at all on its virbr* ports. Can't find a way to even add one after the fact. Won't be able to test this since I don't have any physical servers running fedora or redhat.

[info]zaitcev

June 22 2011, 13:31:02 UTC 11 months ago

The way libvirt people approach it is that configuration inputs have to be entered into libvirt somehow. It's not just radvd.conf, but also argurments to dnsmasq, for example. So, if you want, for instance, RNDSS, you have to talk them into adding that feature to libvirt. Like I said, if you want more control than that, run KVM without libvirt. That is an option too.

[info]kazriko

June 22 2011, 16:15:52 UTC 11 months ago

That's how I used to run KVM before libvirt was mature enough to use, but now that I've gotten used to libvirt, it's painful to use kvm directly. Too bad they can't find a better solution for training wheel removal.
Create an Account
Forgot your login or password?
Facebook Twitter More login options
English • Español • Deutsch • Русский…