Using Multiple Floating IPs
Assigning multiple Floating IPs to a device
Sometimes a user might want to assign multiple floating IPs to a single VM to expose different services or endpoints under separate public addresses while keeping everything on one instance. This can simplify DNS management, allow different security or access controls per IP, and support cases like IP-based allowlisting or staged migrations. In practice, it’s less about scaling capacity and more about maintaining clear separation and control over how traffic reaches the VM. This guide will walk you through how to use the Skyline UI to add multiple Floating IPs to your VM.
Key Point
You are not limited to one Floating IP per VM in OpenStack Flex. However, since a Floating IP is a 1:1 NAT mapping between a Public IP and a fixed (private) IP on a Neutron port, a Floating IP can only map to one fixed IP.
Multiple Floating IPs on the Same VM
In this tutorial, we are using a separate port per Floating IP. This is recommended mainly for cleaner network isolation and predictability, not because OpenStack Flex strictly requires it. Each port in Neutron is its own network interface with:
- Its own MAC address
- Its own fixed IP
- Its own security group bindings
So when you attach one Floating IP per port, you get a clear 1:1:1 relationship (Floating IP ↔ Fixed IP ↔ Port). That makes behavior easier to reason about and avoids edge cases.
Alternatively, if you put multiple fixed IPs on a single port and map multiple Floating IPs to it, it works, but:
- All traffic shares the same interface and security groups
- You lose the ability to isolate or apply different policies per IP
- Troubleshooting becomes less clear (everything hits the same NIC)
- Some guest OS configurations don’t handle multiple IPs on one interface as cleanly
So the recommendation is less about necessity and more about operational clarity, security separation, and avoiding ambiguity.
Adding Multiple Ports to an Existing VM
Recommended Steps:
- Log in to OpenStack Flex's the Skyline UI
- Navigate to Networks > Ports
- Click Create Virtual Adapter
- Give it a name, and select your existing private network from the Owned Network list.
- Choose the Security Group you want to use.
- Click OK
- You'll now see your new port in the list, mouse over the More action and then choose Attach Instance
- Now navigate to Network > Floating IPs
- Click Allocate IP and click OK
- From the list, choose More on the righthand side of your Floating IP and choose Associate
- Select the VM you want to add the Floating IP to, choose the empty port slot, and click OK
- Back in the list under Compute > Instances you'll now see your VM with the added Floating IP.
Updated 23 minutes ago