Interface OdlNatData

  • All Superinterfaces:
    org.opendaylight.yangtools.yang.binding.DataRoot

    public interface OdlNatData
    extends org.opendaylight.yangtools.yang.binding.DataRoot

    This class represents the following YANG schema fragment defined in module odl-nat

     module odl-nat {
       namespace urn:opendaylight:netvirt:natservice;
       prefix odl-nat;
       import ietf-yang-types {
         prefix yang;
       }
       revision 2016-01-11 {
       }
       container external-networks {
         list networks {
           key id;
           leaf id {
             type yang:uuid;
           }
           leaf vpnid {
             type yang:uuid;
           }
           leaf-list router-ids {
             type yang:uuid;
           }
           leaf provider-network-type {
             type provider-types;
           }
         }
       }
       container ext-routers {
         list routers {
           key router-name;
           leaf router-name {
             type string;
           }
           leaf network-id {
             type yang:uuid;
           }
           leaf enable-snat {
             type boolean;
           }
           list external-ips {
             key "subnet-id ip-address";
             leaf subnet-id {
               type yang:uuid;
             }
             leaf ip-address {
               type string;
             }
           }
           leaf-list subnet-ids {
             type yang:uuid;
           }
           leaf ext_gw_mac_address {
             type string;
           }
         }
       }
       container floating-ip-info {
         list router-ports {
           key router-id;
           leaf router-id {
             type string;
           }
           leaf external-network-id {
             type yang:uuid;
           }
           list ports {
             key port-name;
             leaf port-name {
               type string;
             }
             list internal-to-external-port-map {
               key internal-ip;
               leaf internal-ip {
                 type string;
               }
               leaf external-ip {
                 type string;
               }
               leaf external-id {
                 type yang:uuid;
               }
               leaf label {
                 type uint32;
                 config false;
               }
             }
           }
         }
       }
       container floating-ip-port-info {
         list floating-ip-id-to-port-mapping {
           key floating-ip-id;
           leaf floating-ip-id {
             type yang:uuid;
           }
           leaf floating-ip-port-id {
             type yang:uuid;
           }
           leaf floating-ip-port-subnet-id {
             type yang:uuid;
           }
           leaf floating-ip-port-mac-address {
             type string;
           }
           leaf floating-ip-deleted {
             type boolean;
             default false;
           }
         }
       }
       container napt-switches {
         list router-to-napt-switch {
           key router-name;
           leaf router-name {
             type string;
           }
           leaf primary-switch-id {
             type uint64;
           }
           leaf enable-snat {
             type boolean;
           }
         }
       }
       grouping ip-port-entity {
         leaf ip-address {
           type string;
         }
         leaf port-num {
           type uint16;
         }
       }
       typedef protocol-types {
         type enumeration {
           enum TCP;
           enum UDP;
         }
       }
       typedef provider-types {
         type enumeration {
           enum FLAT;
           enum VLAN;
           enum VXLAN;
           enum GRE;
         }
       }
       container intext-ip-port-map {
         list ip-port-mapping {
           key router-id;
           leaf router-id {
             type uint32;
           }
           list intext-ip-protocol-type {
             key protocol;
             leaf protocol {
               type protocol-types;
             }
             list ip-port-map {
               key ip-port-internal;
               leaf ip-port-internal {
                 type string;
               }
               container ip-port-external {
                 uses ip-port-entity;
               }
             }
           }
         }
       }
       container snatint-ip-port-map {
         list intip-port-map {
           key router-id;
           leaf router-id {
             type uint32;
           }
           list ip-port {
             key internal-ip;
             leaf internal-ip {
               type string;
             }
             list int-ip-proto-type {
               key protocol;
               leaf protocol {
                 type protocol-types;
               }
               leaf-list ports {
                 type uint16;
               }
             }
           }
         }
       }
       container intext-ip-map {
         config false;
         list ip-mapping {
           key segment-id;
           leaf segment-id {
             type uint32;
           }
           list ip-map {
             key internal-ip;
             leaf internal-ip {
               type string;
             }
             leaf external-ip {
               type string;
             }
             leaf label {
               type uint32;
             }
           }
         }
       }
       container router-to-vpn-mapping {
         list routermapping {
           key router-name;
           leaf router-name {
             type string;
           }
           leaf vpn-id {
             type uint32;
           }
           leaf vpn-name {
             type string;
           }
         }
       }
       container router-id-name {
         list routerIds {
           key router-id;
           leaf router-id {
             type uint32;
           }
           leaf router-name {
             type string;
           }
         }
       }
       container external-ips-counter {
         config false;
         list external-counters {
           key segment-id;
           leaf segment-id {
             type uint32;
           }
           list external-ip-counter {
             key external-ip;
             leaf external-ip {
               type string;
             }
             leaf counter {
               type uint8;
             }
           }
         }
       }
       container external-subnets {
         list subnets {
           key id;
           leaf id {
             type yang:uuid;
           }
           leaf vpn-id {
             type yang:uuid;
           }
           leaf external-network-id {
             type yang:uuid;
           }
           leaf-list router-ids {
             type yang:uuid;
           }
         }
       }
       container neutron-vip-states {
         config false;
         list vip-state {
           key ip;
           leaf ip {
             type string;
           }
           leaf dpn-id {
             type uint64;
           }
           leaf ifc-name {
             type string;
           }
         }
       }
     }
     
    • Method Detail

      • getExternalNetworks

        @Nullable ExternalNetworks getExternalNetworks()
        Returns:
        org.opendaylight.yang.gen.v1.urn.opendaylight.netvirt.natservice.rev160111.ExternalNetworks externalNetworks, or null if not present
      • getExtRouters

        @Nullable ExtRouters getExtRouters()
        Returns:
        org.opendaylight.yang.gen.v1.urn.opendaylight.netvirt.natservice.rev160111.ExtRouters extRouters, or null if not present
      • getFloatingIpInfo

        @Nullable FloatingIpInfo getFloatingIpInfo()
        Returns:
        org.opendaylight.yang.gen.v1.urn.opendaylight.netvirt.natservice.rev160111.FloatingIpInfo floatingIpInfo, or null if not present
      • getFloatingIpPortInfo

        @Nullable FloatingIpPortInfo getFloatingIpPortInfo()
        Stores the floating IP UUID (L3) and [UUID, subnet UUID, MAC address] for the corresponding floating IP port (L2)
        Returns:
        org.opendaylight.yang.gen.v1.urn.opendaylight.netvirt.natservice.rev160111.FloatingIpPortInfo floatingIpPortInfo, or null if not present
      • getNaptSwitches

        @Nullable NaptSwitches getNaptSwitches()
        Returns:
        org.opendaylight.yang.gen.v1.urn.opendaylight.netvirt.natservice.rev160111.NaptSwitches naptSwitches, or null if not present
      • getIntextIpPortMap

        @Nullable IntextIpPortMap getIntextIpPortMap()
        Returns:
        org.opendaylight.yang.gen.v1.urn.opendaylight.netvirt.natservice.rev160111.IntextIpPortMap intextIpPortMap, or null if not present
      • getSnatintIpPortMap

        @Nullable SnatintIpPortMap getSnatintIpPortMap()
        Returns:
        org.opendaylight.yang.gen.v1.urn.opendaylight.netvirt.natservice.rev160111.SnatintIpPortMap snatintIpPortMap, or null if not present
      • getIntextIpMap

        @Nullable IntextIpMap getIntextIpMap()
        Returns:
        org.opendaylight.yang.gen.v1.urn.opendaylight.netvirt.natservice.rev160111.IntextIpMap intextIpMap, or null if not present
      • getRouterToVpnMapping

        @Nullable RouterToVpnMapping getRouterToVpnMapping()
        Returns:
        org.opendaylight.yang.gen.v1.urn.opendaylight.netvirt.natservice.rev160111.RouterToVpnMapping routerToVpnMapping, or null if not present
      • getRouterIdName

        @Nullable RouterIdName getRouterIdName()
        Returns:
        org.opendaylight.yang.gen.v1.urn.opendaylight.netvirt.natservice.rev160111.RouterIdName routerIdName, or null if not present
      • getExternalIpsCounter

        @Nullable ExternalIpsCounter getExternalIpsCounter()
        Returns:
        org.opendaylight.yang.gen.v1.urn.opendaylight.netvirt.natservice.rev160111.ExternalIpsCounter externalIpsCounter, or null if not present
      • getExternalSubnets

        @Nullable ExternalSubnets getExternalSubnets()
        Returns:
        org.opendaylight.yang.gen.v1.urn.opendaylight.netvirt.natservice.rev160111.ExternalSubnets externalSubnets, or null if not present
      • getNeutronVipStates

        @Nullable NeutronVipStates getNeutronVipStates()
        Returns:
        org.opendaylight.yang.gen.v1.urn.opendaylight.netvirt.natservice.rev160111.NeutronVipStates neutronVipStates, or null if not present