Elastic IP without hardware #10685
-
Hello. I've been messing with my first cloudstack installation, and getting more into networks and administration. I'm trying to build a self-hosted multi-tenant AWS-like cloud, where different clients (accounts) have different VMs. Ideally, I'd give them ability to manage their own VPC, but it's optional. While it took some time for me to understand different types of networks: management, public, guests and their isolations: VLAN, VXLAN, GRE, one question remains unanswered - how to assign public IPs for specific guest VMs? Especially if they are on different servers/nodes. I don't have a corporate network, my servers are just dedicated servers that have public IPs assigned to them. These IPs might be from different subnets, and they belong to specific nodes/servers, and can't be shared between. I have no network hardware, just dedicated servers itself. Maybe just vRack (if it's helpful). Let's say I have server A with a.a.a.a IP address, and server B with b.b.b.b IP address. I have RFC1819 public network 172.16.1.0/24. Is it something that cloudstack provides/supports? Is using OVS plugin would help in this case? If cloudstack doesn't support, what direction would you advise implementing it myself? Can pfSense or VYOS help me with this? I understand, that I can configure iptables to forward public IP to specific VM gateway. But also, I need to route any outgoing traffic from the VM (guest network) via that public IP versus default gateway. Also, it seems there is internode communication is involved (VM running on Server B, but public IP is assigned to Server A). This should be a common task, but I've found no information on that regard. Thank you so much. |
Beta Was this translation helpful? Give feedback.
Replies: 3 comments 1 reply
-
If I understand correctly this is what you use static nat for. Not the server would have public IPs but you have a pool of IPs configured for the public net. The routers (if you use those for your VPCs/networks) would get ip addresses and you can assign extra addresses to them and configure one to be staticly tight to a VM. Does this sound like your scenario? |
Beta Was this translation helpful? Give feedback.
-
Beta Was this translation helpful? Give feedback.
-
I was wondering if you had tried vnf and dynamic routing feature of cloudstack and see if it solves ur use case Cloudstack has support for vnf https://www.shapeblue.com/vnf-appliance-integration-deep-dive/ Dynamic routing https://docs.cloudstack.apache.org/en/4.20.0.0/adminguide/networking/dynamic_static_routing.html |
Beta Was this translation helpful? Give feedback.
@Kukunin
I was wondering if you had tried vnf and dynamic routing feature of cloudstack and see if it solves ur use case
Cloudstack has support for vnf
https://www.shapeblue.com/vnf-appliance-integration-deep-dive/
https://www.youtube.com/watch?v=JZTT9OlqtDs
Dynamic routing
https://docs.cloudstack.apache.org/en/4.20.0.0/adminguide/networking/dynamic_static_routing.html
https://www.google.com/url?sa=t&source=web&rct=j&opi=89978449&url=https://www.youtube.com/watch%3Fv%3DeiK44dNliDE&ved=2ahUKEwiJuLq1steMAxWER2wGHdv3D5AQwqsBegQIDBAG&usg=AOvVaw1VejpxyGNKzbTpFJ_hPwS7