mirror of
https://github.com/apache/cloudstack.git
synced 2025-10-26 08:42:29 +01:00
Merge branch '4.11'
This commit is contained in:
commit
68251e8440
@ -55,11 +55,12 @@ public class VxlanGuestNetworkGuru extends GuestNetworkGuru {
|
|||||||
@Override
|
@Override
|
||||||
protected boolean canHandle(NetworkOffering offering, final NetworkType networkType, final PhysicalNetwork physicalNetwork) {
|
protected boolean canHandle(NetworkOffering offering, final NetworkType networkType, final PhysicalNetwork physicalNetwork) {
|
||||||
// This guru handles only Guest Isolated network that supports Source nat service
|
// This guru handles only Guest Isolated network that supports Source nat service
|
||||||
if (networkType == NetworkType.Advanced && isMyTrafficType(offering.getTrafficType()) && offering.getGuestType() == Network.GuestType.Isolated &&
|
if (networkType == NetworkType.Advanced && isMyTrafficType(offering.getTrafficType()) &&
|
||||||
|
(offering.getGuestType() == Network.GuestType.Isolated || offering.getGuestType() == Network.GuestType.L2) &&
|
||||||
isMyIsolationMethod(physicalNetwork)) {
|
isMyIsolationMethod(physicalNetwork)) {
|
||||||
return true;
|
return true;
|
||||||
} else {
|
} else {
|
||||||
s_logger.trace("We only take care of Guest networks of type " + GuestType.Isolated + " in zone of type " + NetworkType.Advanced);
|
s_logger.trace("We only take care of Guest networks of type " + GuestType.Isolated + " or " + GuestType.L2 + " in zone of type " + NetworkType.Advanced);
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -72,6 +73,10 @@ public class VxlanGuestNetworkGuru extends GuestNetworkGuru {
|
|||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (offering.getGuestType() == GuestType.L2 && network.getBroadcastUri() != null) {
|
||||||
|
String vxlan = BroadcastDomainType.getValue(network.getBroadcastUri());
|
||||||
|
network.setBroadcastUri(BroadcastDomainType.Vxlan.toUri(vxlan));
|
||||||
|
}
|
||||||
network.setBroadcastDomainType(BroadcastDomainType.Vxlan);
|
network.setBroadcastDomainType(BroadcastDomainType.Vxlan);
|
||||||
|
|
||||||
return network;
|
return network;
|
||||||
|
|||||||
@ -388,7 +388,7 @@ class CsIP:
|
|||||||
self.fw.append(["mangle", "",
|
self.fw.append(["mangle", "",
|
||||||
"-A VPN_%s -j RETURN" % self.address['public_ip']])
|
"-A VPN_%s -j RETURN" % self.address['public_ip']])
|
||||||
self.fw.append(["nat", "",
|
self.fw.append(["nat", "",
|
||||||
"-A POSTROUTING -o eth2 -j SNAT --to-source %s" % self.address['public_ip']])
|
"-A POSTROUTING -o %s -j SNAT --to-source %s" % (self.dev, self.cl.get_eth2_ip())])
|
||||||
self.fw.append(["mangle", "",
|
self.fw.append(["mangle", "",
|
||||||
"-A PREROUTING -i %s -m state --state NEW " % self.dev +
|
"-A PREROUTING -i %s -m state --state NEW " % self.dev +
|
||||||
"-j CONNMARK --set-xmark %s/0xffffffff" % self.dnum])
|
"-j CONNMARK --set-xmark %s/0xffffffff" % self.dnum])
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user