diff --git a/server/src/com/cloud/network/guru/DirectNetworkGuru.java b/server/src/com/cloud/network/guru/DirectNetworkGuru.java index 98533a0c1f4..4657c27acd6 100755 --- a/server/src/com/cloud/network/guru/DirectNetworkGuru.java +++ b/server/src/com/cloud/network/guru/DirectNetworkGuru.java @@ -207,6 +207,13 @@ public class DirectNetworkGuru extends AdapterBase implements NetworkGuru { allocateDirectIp(nic, network, vm, dc, nic.getRequestedIpv4(), nic.getRequestedIpv6()); nic.setStrategy(ReservationStrategy.Create); + if (nic.getMacAddress() == null) { + nic.setMacAddress(_networkModel.getNextAvailableMacAddressInNetwork(network.getId())); + if (nic.getMacAddress() == null) { + throw new InsufficientAddressCapacityException("Unable to allocate more mac addresses", Network.class, network.getId()); + } + } + return nic; }