Diagnostic Utilities¶
The TNSR CLI includes convenience utilities for testing connectivity.
Diagnostic Routing Behavior¶
The utilities in this section behave the same with regard to routing. They can
operate in either the host
or dataplane
namespace
(Networking Namespaces), and default to using the dataplane
namespace so
the tests will run using the same networking environment as TNSR.
Test packets will follow the routing table available in the namespace.
Ping¶
To perform a basic ICMP echo request, use the ping
command:
tnsr# ping <destination host>
TNSR will send 10 ICMP echo requests to the destination host using the
dataplane
namespace, waiting a maximum of 12 seconds for a reply.
The ping command supports a number of additional parameters which alter its behavior:
tnsr# [(host|dataplane)] ping (<dest-host>|<dest-ip>) [ipv4|ipv6]
[interface <if-name>] [source <src-addr>] [count <count>]
[packet-size <bytes>] [ttl <ttl-hops>] [timeout <wait-sec>]
[buffered] [interval <seconds:0.000001-6000>]
- host|dataplane:
The namespace (Networking Namespaces) in which the command will run.
- dest-host|dest-ip:
The target of the ICMP echo request. This may be a hostname, IPv4 IP address, or IPv6 IP address.
- ipv4|ipv6:
When a hostname is used for the destination, this parameter controls the address family used for the ICMP echo request when the DNS response for the hostname contains both IPv4 (A) and IPv6 (AAAA) records.
- interface:
The TNSR interface from which the ICMP echo requests will originate.
- source:
The source IP address for the ICMP echo requests. If omitted, an address will be automatically selected on the interface through which the packet will exit toward the target.
- count:
The number of ICMP echo requests to send. Default value is
10
.- packet-size:
The size of the ICMP echo request payload, not counting header information. Default value is
56
.- ttl:
The Time To Live/Hop Limit value for ICMP echo requests, which can limit how far they may travel across the network. Default value is
121
hops.- timeout:
The total time to wait for the command to complete.
- buffered:
Execute the command in the backend and only display the results when the test completes. Otherwise the command is run through the terminal and the CLI displays the results live.
- interval:
The amount of time in seconds to wait between ICMP echo requests. Fractional seconds are allowed. Value must be in the range
0.000001-6000
.
Traceroute¶
To perform a network routing trace to a destination host, use the traceroute
command:
tnsr# traceroute <destination host>
As with the ping
command, there several additional parameters to change the
behavior of the trace:
tnsr# [(host|dataplane)] traceroute (<dest-host>|<dest-ip>) [ipv4|ipv6]
[interface <if-name>] [source <src-addr>] [packet-size <bytes>]
[no-dns] [ttl <ttl-hos>] [waittime <wait-sec>] [buffered]
Most parameters are the same as those found in ping
(Ping). Only
the items that differ are as follows:
- no-dns:
Do not attempt to use DNS to reverse resolve hosts that respond to probes.
- waittime:
Amount of time the command will wait for individual probe responses to return.
Warning
The traceroute
command requires /usr/bin/traceroute
to be present in
the base operating system. The TNSR package set includes a dependency which
will automatically install a package for traceroute.