You can use an IP pool for the tunnel endpoints. Tunnel endpoints are the source and destination IP addresses used in the external IP header to uniquely identify the hypervisor hosts originating and terminating the NSX-T Data Center encapsulation of overlay frames. You can also use either DHCP or manually configured IP pools for tunnel endpoint IP addresses.

If you are using both ESXi and KVM hosts, one design option would be to use two different subnets for the ESXi tunnel endpoint IP pool (sub_a) and the KVM tunnel endpoint IP Pool (sub_b). In this case, on the KVM hosts a static route to sub_a needs to be added with a dedicated default gateway.

This is an example of the resulting routing table on an Ubuntu host where sub_a = and sub_b = (The management subnet, for example, could be

Kernel IP routing table:

Destination          Gateway          Genmask          Iface              eth0    virbr0    eth0    nsx-vtep0.0    nsx-vtep0.0

The route can be added in at least two different ways. Of these two methods, the route persists after host reboot only if you add the route by editing the interface. Adding a route using the route add command does not persists after a host reboot.

route add -net netmask gw dev nsx-vtep0.0

In /etc/network/interfaces before "up ifconfig nsx-vtep0.0 up" add this static route:

post-up route add -net netmask gw


  1. From a browser, log in with admin privileges to an NSX Manager at https://<nsx-manager-ip-address>.
  2. Select Inventory > Groups > IP Pools and click Add.
  3. Enter the name of the IP pool, an optional description, and the network settings.

    The network settings include:

    • Range of IP addresses

    • Gateway

    • Network address in CIDR notation

    • (optional) Comma-separated list of DNS servers

    • (optional) DNS suffix

    For example:


You can also view the IP pools with the GET https://<nsx-mgr>/api/v1/pools/ip-pools API call:

  "cursor": "0036e2d8c2e8-f6d7-498e-821b-b7e44d2650a9ip-pool-1",
  "sort_by": "displayName",
  "sort_ascending": true,
  "result_count": 1,
  "results": [
      "id": "e2d8c2e8-f6d7-498e-821b-b7e44d2650a9",
      "display_name": "comp-tep",
      "resource_type": "IpPool",
      "subnets": [
          "dns_nameservers": [
          "allocation_ranges": [
              "start": "",
              "end": ""
          "gateway_ip": "",
          "cidr": "",
          "dns_suffix": "corp.local"
      "_last_modified_user": "admin",
      "_last_modified_time": 1443649891178,
      "_create_time": 1443649891178,
      "_system_owned": false,
      "_create_user": "admin",
      "_revision": 0

What to do next

Create an uplink profile. See Create an Uplink Profile.