OpenNebula / one-apps

Toolchain to build OpenNebula appliances
Apache License 2.0
12 stars 10 forks source link

Support ONE NIC aliases as individual alias interfaces #31

Open vholer opened 4 years ago

vholer commented 4 years ago

Right now, we implement all OpenNebula NIC aliases as secondary IP addresses assigned to the same interface. From the perspective VM, there is a single ethX with several addresses (ONE NIC aliases). For easy ad-hoc reconfiguration, when >256 IP addresses required, or by other user preference, the other configuration option is to have individual alias interfaces in guest VM (e.g., ethX:0, ethX:1, ethX:2) for each extra address (ONE NIC alias).

For the reference:

  1. interface w/ secondary addresses (implemented) Debian: https://wiki.debian.org/NetworkConfiguration#iproute2_method EL: https://www.unixmen.com/linux-basics-assign-multiple-ip-addresses-single-network-interface-card-centos-7/ --> problem: "Can't assign more than 256 alias IP addresses" on EL https://access.redhat.com/solutions/2359011

  2. individual alias interfaces Debian: https://wiki.debian.org/NetworkConfiguration#Legacy_method EL: https://www.tecmint.com/create-multiple-ip-addresses-to-one-single-network-interface/ --> problem: "There are a few obscure situations where they don't work, it is recommended to move away from them." https://access.redhat.com/discussions/4221861#comment-1547931

To implement first option was a design decision as it's a proposed way how to assign multiple IP addresses on same physical interface these days.

The goal is to optionally provide second network configuration option consistently across all supported platforms.

feldsam commented 4 years ago

Debian iproute2 method:

Note however that this method is dangerous! Certain driver/hardware combinations may sometimes fail to bring the link up if no labels are assigned to the alias interfaces.

vholer commented 4 years ago

And, are you using those emulated NIC models on Debian 8? (Otherwise I see the Debian 8 is working in our testing environment with paravirtualized NICs.)

feldsam commented 4 years ago

I use virtio, but it is an older server, which was upgraded from Debian 7 to 8 in past and also there was old on context package. I upgraded the context package, but still, have problems getting networking up...so I end up using legacy way...