Use Cases
Using Interface Selection and multiple tests, a customer can configure a single Enterprise Agent to monitor a given target via multiple paths. A common use case is monitoring a multi-homed site or enterprise. When an organization has more than one connection to the Internet, a single Enterprise Agent can run multiple tests, each assigned to a specific link. Links may be physical, or may be Virtual Private Network (VPN) links.If SD-WAN technology is employed, a dedicated test and interface/address could be used to identify which path the SD-WAN currently uses. The Path Visualization will display hops specific to a path, whether overlay or underlay. Alerts may be constructed based on the IP addresses of hops in the the path.
Supported test types
Interface Selection is available for all test types except browser-based tests (Page Load and Transaction tests) and DNS layer tests. The Agents selectors for these test types will not display any additional interface information on an Enterprise Agent with multiple interfaces. This applies to all views of the test type, i.e. a Page Load test's HTTP Server view and Network layer views will not display the Interface Selection.
Configuration Overview
Depending on the current configuration of the system running your Enterprise Agent, configuring Interface Selection is done in up to three steps if adding additional physical or virtual network interfaces, or up to two steps if adding additional IP addresses to an existing interface:
- Create the physical or virtual network interface adapter for the system (if using multiple interfaces; skipped if using one interface with multiple addresses)
- Configure the interface with new IP information
- Configure a test to use the network interface/IP address
1) Interface creation
To support Interface Selection with multiple interfaces, the system running an Enterprise Agent must either have multiple network interfaces already installed or the system must have one or more interfaces added. The process to add interfaces depends on the physical hardware, virtualization technology (if used), and operating system. Review the documentation for your hardware, virtualization technology and operating system to add new interfaces, if needed.
Skip this step if using Interface Selection with a single interface having multiple IP addresses.
2) Interface configuration
Interface Selection supports multiple interfaces each with a single IP address, or a single interface with multiple IP addresses. ThousandEyes Appliances provide configuration of IP information (IP address, netmask, default gateway, etc...) through the web-based administration. Other Agent installation types (Linux package, Docker) are configured according to the operating system used. Review the documentation for your operating system, and review the instructions for your installation type in the Agent Configuration section below.
3) Test configuration
Once an Enterprise Agent has multiple interfaces or IP addresses configured, tests can be configured to use a specific interface/address of that Agent. A test's Agents selector will display the Enterprise Agent with a triangle expander icon beside the Agent's name. Clicking the checkbox beside the Agent's name will make the radio buttons clickable, allowing selection of an interface/IP address.
Multiple interfaces
The selector below displays an Enterprise Agent with two network interfaces, eth0 (IP address 10.100.10.108) and eth1 (IP address 10.100.10.73).
Multiple addresses on a single interface
The selector below displays an Enterprise Agent with one network interface, eth0, with two IP addresses 192.168.1.81 and 192.168.1.112.
The selector will also list a Default interface selection radio button, which will be selected by default. The default interface will be one of the interfaces listed below the Default interface selection radio button. If the system was originally configured with a single interface, then the default interface is usually the original interface. This option exists for users who may be unfamiliar with the Interface Selection feature, to allow them to select an interface that is likely to be sufficient for their needs.
The default interface is the interface associated with the system's default routing table:
$ ip route show
default via 192.168.1.254 dev eth0 onlink
169.254.1.0/24 dev eth0 proto kernel scope link src 169.254.1.2
172.21.86.172/30 dev sb_parent proto kernel scope link src 172.21.86.173
192.168.1.0/24 dev eth0 proto kernel scope link src 192.168.1.83
The command ip route show displays the default interface of eth0/192.168.1.83, as shown in the previous image.
Agent Configuration
The sections below provide instructions to configure each type of Enterprise Agent installation: Appliances (Virtual or Physical), Linux package, and Docker. Each section contain instructions for both the multiple interfaces and single interface/multiple addresses scenarios. Follow the instructions in the section which applies to your type of Enterprise Agent installation and interface/address scenario.NOTE: An Enterprise Agent can only be configured with multiple interfaces or with a single interface having multiple IP addresses. An Enterprise Agent cannot be configured with both methods.
NOTE: Interface Selection is not supported on Enterprise Agent clusters.
NOTE: The ThousandEyes Appliance is typically the easiest installation type to configure when using Interface Selection. Configuration of Linux package and Docker installation types has limitations, and all configuration of the interfaces and addresses is the responsibility of the customer. ThousandEyes recommends using an Appliance installation if Interface Selection is required.
Appliance
The ThousandEyes Virtual Appliance and Physical Appliance are configured through the Appliance's web administration interface. Log into the web interface and select the Appliance's Network tab to configure any additional interfaces or IP addresses. Review the following ThousandEyes Knowledge Base articles for more information on accessing and navigating the web administration interface:- How to set up the Virtual Appliance
- Installing a Physical Appliance
- Secure access to ThousandEyes Appliances
Multiple interfaces
To configure multiple interfaces, first add a virtual network interface in the hypervisor software used to run the Virtual Appliance, or add a physical network interface. Consult your hypervisor's documentation for instructions on adding a virtual network interface (Virtual Appliance) or hardware documentation for instructions on adding a physical network interface (Physical Appliance).When the Appliance has been configured with an additional interface(s), login to the Appliance's web administration console. The Network tab will display the initial configuration field(s) for the additional interface(s) below the default interface. In the image below, interface eth1 is available for configuration:
In the configuration setting, select either Using DHCP or Manually, then configure the IP settings that appear. Note that Physical Address is not a configurable field.
Click the Save button at the bottom of the page to save the configuration.
Multiple addresses on a single interface
Linux package
For supported versions of Ubuntu, Red Hat Enterprise Linux, CentOS and Oracle Linux, customers will need to perform the configuration tasks needed to create interfaces, and then configure the interfaces either statically or via DHCP. Additionally, creation of a new routing table may be required via the iproute2 package, or similar tool.
Multiple interfaces
To configure multiple interfaces, first add a physical network interface, or virtual network interface in the hypervisor software used to run the Appliance. Consult your hardware or hypervisor documentation for instructions on adding a network interface.When the system has been configured with an additional interface(s), consult the documentation for your Linux distribution to add IP configuration manually to the interface, and create a routing table for the interface if needed. Configuring the interface via DHCP is not supported when an interface uses a dedicated routing table.
Multiple addresses on a single interface
To configure a single interface with multiple IP addresses, manually add the IP information to the interface. DHCP is not supported for multiple addresses on a single interface. An example set of commands is below for configuring eth0.1) Add the new IP address to the running system
2) Add to /etc/network/interfaces to persist across reboots
address 10.0.0.1
netmask 255.0.0.0
Docker
For the ThousandEyes Docker image, customers will need to perform the configuration tasks needed to create interfaces when invoking the docker run command, and then configure the interfaces either statically or via DHCP. Additionally, creation of a new routing table may be required via the iproute2 package, or similar tool. Consult the Docker documentation for further configuration details. The ThousandEyes Docker image is based on Ubuntu, so any configuration within the container follows the instructions above for Linux packages.Viewing selected interfaces
After configuring the Interface Selection feature, selected IP addresses will be displayed in the Path Visualization view. In other test views and parts of the app, the default interface will be displayed.
Interface Selection in the Path Visualization view
When a test uses an Agent's non-default interface, the Path Visualization view will display the selected interface used in the Agent's tooltip, under the Interface Details. Mouse over an Agent in the Path Visualization to display the tooltip:Interface Selection in the Overview
Interface Selection in Agent Settings
Troubleshooting
- The test uses Interface Selection with a specific (non-default) interface which becomes unavailable
- The test uses Interface Selection with a specific (non-default) IPv4 interface but the test's IPv6 Policy setting (on the Advanced Settings tab) is configured with "Force IPv6" or "Prefer IPv6" or "Agent's policy" where the policy is "Force IPv6" or "Prefer IPv6" and the test target is either an IPv6 IP address or a domain name that resolves to an IPv6 address
- The test uses Interface Selection with a specific (non-default) IPv6 interface but the test's IPv6 Policy setting (on the Advanced Settings tab) is configured with "IPv4 only" or "Agent's policy" where the policy is "IPv4 only" and the test target is either an IPv4 IP address or a domain name that resolves to an IPv4 address