diff --git a/server/src/com/cloud/network/NetworkManagerImpl.java b/server/src/com/cloud/network/NetworkManagerImpl.java index a67aa80a1a3..3b058c46517 100755 --- a/server/src/com/cloud/network/NetworkManagerImpl.java +++ b/server/src/com/cloud/network/NetworkManagerImpl.java @@ -3128,7 +3128,7 @@ public class NetworkManagerImpl implements NetworkManager, NetworkService, Manag vm = _vmDao.findById(vmId); } Network network = getNetwork(networkId); - NetworkOffering networkOffering = _configMgr.getNetworkOffering(network.getNetworkOfferingId()); + NetworkOffering ntwkOff = _configMgr.getNetworkOffering(network.getNetworkOfferingId()); // For default userVm Default network and domR guest/public network, get rate information from the service offering; for other situations get information // from the network offering @@ -3137,14 +3137,14 @@ public class NetworkManagerImpl implements NetworkManager, NetworkService, Manag if (vm != null) { if (vm.getType() == Type.User && network.isDefault()) { isUserVmsDefaultNetwork = true; - } else if (vm.getType() == Type.DomainRouter && networkOffering.getTrafficType() == TrafficType.Public && networkOffering.getGuestType() == null) { + } else if (vm.getType() == Type.DomainRouter && ((ntwkOff.getTrafficType() == TrafficType.Public && ntwkOff.getGuestType() == null) || (ntwkOff.getGuestType() != null && ntwkOff.getTrafficType() == TrafficType.Guest))) { isDomRGuestOrPublicNetwork = true; } } if (isUserVmsDefaultNetwork || isDomRGuestOrPublicNetwork) { return _configMgr.getServiceOfferingNetworkRate(vm.getServiceOfferingId()); } else { - return _configMgr.getNetworkOfferingNetworkRate(networkOffering.getId()); + return _configMgr.getNetworkOfferingNetworkRate(ntwkOff.getId()); } }