Hello 

Could someone help me to identify the routing issues that we have. The problem 
is the traffic from different guest networks can not reach each other via the 
public IPs. 

Here is my ACS setup: 
ACS 4.9.3.0 (both management and agents) 
KVM Hypervisor based on Ubuntu 16.04 
Ceph as primary storage. NFS as secondary storage 
Advanced Networking with vlan separation 
2 x Public IP ranges with /26 netmask. 



Here is an example when routing DOES NOT work: 

Case 1 - Advanced Networking, vlan separation, VRs route all traffic and 
provide all networking services (dhcp, fw, port forwarding, load balancing, 
etc) 

Guest Network 1: 

Public IP: XXX.XXX.XXX.10/26 
Private IP range: 10.1.1.0/24 
guest vm1 IP: 10.1.1.100/24 

Guest Network 2: 
Public IP: XXX.XXX.XXX.20/26 
Private IP range: 10.1.1.0/24 
guest vm2 IP: 10.1.1.200/24 


I've created ACLs on both guest networks to allow traffic from 0.0.0.0/0 on 
port 80. I've created the port forwarding rules to forward port 80 from public 
XXX.XXX.XXX.10 and XXX.XXX.XXX.XXX.20 onto 10.1.1.100 and 10.1.1.200 
respectively. 

This setup works perfectly well when I am initiating the connections from 
outside of our CloudStack. However, vm2 can't reach vm1 on port 80 using the 
public IP XXX.XXX.XXX.10 and vice versa, vm1 can't reach vm2 on public IP 
XXX.XXX.XXX.20. 




Here is an example when the routing DOES work: 

Case 2 - Advanced Networking, vlan separation, VRs are not used. Public IPs are 
given directly to a guest vm 

Guest Network 1: 

guest vm1 Public IP: XXX.XXX.XXX.100/26 

Guest Network 2: 

guest vm2 Public IP: XXX.XXX.XXX.110/26 

In the Case 2, the guest vm has a public IP address directly assigned to its 
network interface. VRs are not used for this networking. Each guest has a fw 
rule to allow incoming traffic on port 80 from 0.0.0.0/0. Both vm1 and vm2 can 
access each other on port 80. Also, vms from Case 1 above can access port 80 on 
vms from Case 2, similarly, vms from Case 2 can access port 80 on vms from Case 
1. 



So, it seems that the rules on the VR in Case 1 do not allow traffic that 
originates from other VRs within the same public network range. The trace route 
shows the last hop being the VR's private IP address. How do I change that 
behaviour and fix the networking issue? 

Thanks 

Andrei 

Reply via email to