I have a solution for Firewall and StaticRouting, But still having an issue with NAT.
PUT XML
<?xml version="1.0" encoding="UTF-8"?><OrgNetwork xmlns="http://www.vmware.com/vcloud/v1.5" name="test123"><Description>NAT-routed organization network with VPN</Description>
<Configuration>
<IpScope>
<IsInherited>false</IsInherited>
<Gateway>192.168.0.1</Gateway>
<Netmask>255.255.255.0</Netmask>
<Dns1>==========</Dns1>
<IpRanges>
<IpRange>
<StartAddress>192.168.0.10</StartAddress>
<EndAddress>192.168.0.100</EndAddress>
</IpRange>
<IpRange>
<StartAddress>192.168.0.150</StartAddress>
<EndAddress>192.168.0.200</EndAddress>
</IpRange>
</IpRanges>
</IpScope>
<FenceMode>natRouted</FenceMode>
<Features>
<NatService>
<IsEnabled>true</IsEnabled>
<NatType>portForwarding</NatType>
<Policy>allowTraffic</Policy>
<NatRule>
<PortForwardingRule>
<Description>test1</Description>
<IsEnabled>true</IsEnabled>
<ExternalIP>IP1</ExternalIP>
<ExternalPort>*</ExternalPort>
<InternalIP>IP2</InternalIP>
<InternalPort>*</InternalPort>
<Protocol>TCP_UDP</Protocol>
</PortForwardingRule>
</NatRule>
</NatService>
</Features>
</Configuration>
</OrgNetwork>
Error:
<?xml version="1.0" encoding="UTF-8"?>
<Error xmlns="http://www.vmware.com/vcloud/v1.5" stackTrace="javax.ws.rs.WebApplicationException: com.vmware.vcloud.common.xml.XMLProcessingException: Unexpected JAXB Exception
at com.vmware.vcloud.api.rest.providers.CommonJAXBProvider.readFrom(CommonJAXBProvider.java:192)
at com.vmware.vcloud.api.rest.providers.CommonJAXBProvider.readFrom(CommonJAXBProvider.java:44)
at org.apache.cxf.jaxrs.utils.JAXRSUtils.readFromMessageBody(JAXRSUtils.java:975)
at org.apache.cxf.jaxrs.utils.JAXRSUtils.processParameter(JAXRSUtils.java:576)
at org.apache.cxf.jaxrs.utils.JAXRSUtils.processParameters(JAXRSUtils.java:541)
at org.apache.cxf.jaxrs.JAXRSInvoker.invoke(JAXRSInvoker.java:197)
at org.apache.cxf.jaxrs.JAXRSInvoker.invoke(JAXRSInvoker.java:82)
at org.apache.cxf.interceptor.ServiceInvokerInterceptor$1.run(ServiceInvokerInterceptor.java:58)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
at java.util.concurrent.FutureTask.run(FutureTask.java:138)
at org.apache.cxf.workqueue.SynchronousExecutor.execute(SynchronousExecutor.java:37)
at org.apache.cxf.interceptor.ServiceInvokerInterceptor.handleMessage(ServiceInvokerInterceptor.java:106)
at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:247)
at org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:113)
at org.apache.cxf.transport.servlet.ServletDestination.invoke(ServletDestination.java:97)
at org.apache.cxf.transport.servlet.ServletController.invokeDestination(ServletController.java:458)
at org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:146)
at org.apache.cxf.transport.servlet.AbstractCXFServlet.invoke(AbstractCXFServlet.java:148)
at org.apache.cxf.transport.servlet.AbstractHTTPServlet.handleRequest(AbstractHTTPServlet.java:179)
at org.apache.cxf.transport.servlet.AbstractHTTPServlet.doPut(AbstractHTTPServlet.java:120)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:716)
at com.vmware.vcloud.api.rest.jaxrs.servlet.CxfServlet.service(CxfServlet.java:163)
at com.vmware.vcloud.api.rest.jaxrs.servlet.JaxRsDispatcherServlet.doService(JaxRsDispatcherServlet.java:97)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:644)
at org.springframework.web.servlet.FrameworkServlet.doPut(FrameworkServlet.java:571)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:716)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:806)
at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1166)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:368)
at com.vmware.vcloud.api.rest.diagnostics.DiagnosticFilter.doFilter(DiagnosticFilter.java:33)
at com.vmware.vcloud.api.rest.diagnostics.RestApiDiagnosticsInterceptor.doFilter(RestApiDiagnosticsInterceptor.java:128)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:380)
at com.vmware.vcloud.security.filters.ValidationFilter.doFilterHttp(ValidationFilter.java:96)
at com.vmware.vcloud.api.rest.security.SecurityFilter.doFilterHttp(SecurityFilter.java:82)
at com.vmware.vcloud.security.filters.HttpFilterBean.doFilter(HttpFilterBean.java:35)
at com.vmware.vcloud.api.rest.diagnostics.RestApiDiagnosticsInterceptor.doFilter(RestApiDiagnosticsInterceptor.java:128)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:380)
at com.vmware.vcloud.security.filters.ValidityExceptionFilter.doFilterHttp(ValidityExceptionFilter.java:47)
at com.vmware.vcloud.security.filters.HttpFilterBean.doFilter(HttpFilterBean.java:35)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:380)
at com.vmware.vcloud.security.web.AuthenticationFilter.doFilter(Aut