summaryrefslogtreecommitdiff
path: root/op-mode-definitions/traceroute.xml.in
diff options
context:
space:
mode:
authorChristian Poessinger <christian@poessinger.com>2021-01-10 19:16:39 +0100
committerChristian Poessinger <christian@poessinger.com>2021-01-10 19:16:39 +0100
commit85dd9a42f58a568ff557756a8491b84849e3be72 (patch)
tree9f96d419a860978d9ebbdddd855be5f8de3b0b73 /op-mode-definitions/traceroute.xml.in
parentc81ab6a2571cba16aba3fb8caaf70242137480c5 (diff)
parent4fb6160fb72717ce65cc1dbd814b80a1d1a4e756 (diff)
downloadvyos-1x-85dd9a42f58a568ff557756a8491b84849e3be72.tar.gz
vyos-1x-85dd9a42f58a568ff557756a8491b84849e3be72.zip
Merge branch 'current' of github.com:vyos/vyos-1x into equuleus
* 'current' of github.com:vyos/vyos-1x: op-mode: T3178: add "monitor protocols <bgp|ospf|ospfv3|rib|rip|ripng>" commands op-mode: T3178: add remaining "show ipv6 ospfv3 database" commands from vyatta-op-quagga op-mode: T3178: migrate most of the OSPFv3 parts to re-includable snippets xml: op-mode: add preprocessor support as known from configuration mode Debian: vyos-1x depends on python3-spinx for "make docs" ospf: T3198: Fix show information for database tag nodes login: radius: T3192: remove debug print() xml: convert tab to space in "system login"
Diffstat (limited to 'op-mode-definitions/traceroute.xml.in')
-rw-r--r--op-mode-definitions/traceroute.xml.in227
1 files changed, 227 insertions, 0 deletions
diff --git a/op-mode-definitions/traceroute.xml.in b/op-mode-definitions/traceroute.xml.in
new file mode 100644
index 000000000..1b619ed43
--- /dev/null
+++ b/op-mode-definitions/traceroute.xml.in
@@ -0,0 +1,227 @@
+<?xml version="1.0"?>
+<interfaceDefinition>
+ <tagNode name="traceroute">
+ <properties>
+ <help>Track network path to node</help>
+ <completionHelp>
+ <list>&lt;hostname&gt; &lt;x.x.x.x&gt; &lt;h:h:h:h:h:h:h:h&gt;</list>
+ </completionHelp>
+ </properties>
+ <command>/usr/bin/traceroute "$2"</command>
+ </tagNode>
+ <node name="traceroute">
+ <properties>
+ <help>Track network path to node</help>
+ <completionHelp>
+ <list>&lt;hostname&gt; &lt;x.x.x.x&gt; &lt;h:h:h:h:h:h:h:h&gt;</list>
+ </completionHelp>
+ </properties>
+ <children>
+ <tagNode name="ipv4">
+ <properties>
+ <help>Explicitly use IPv4 when tracing the path</help>
+ <completionHelp>
+ <list>&lt;hostname&gt; &lt;x.x.x.x&gt;</list>
+ </completionHelp>
+ </properties>
+ <command>/usr/bin/traceroute -4 "$3"</command>
+ <children>
+ <node name="tcp">
+ <properties>
+ <help>Route tracing and port detection using TCP</help>
+ </properties>
+ <command>sudo /usr/bin/tcptraceroute "$3" </command>
+ <children>
+ <tagNode name="port">
+ <properties>
+ <help>TCP port to connect to for path tracing</help>
+ <completionHelp>
+ <list>0-65535</list>
+ </completionHelp>
+ </properties>
+ <command>sudo /usr/bin/tcptraceroute "$3" $6</command>
+ </tagNode>
+ </children>
+ </node>
+ </children>
+ </tagNode>
+ <tagNode name="ipv6">
+ <properties>
+ <help>Explicitly use IPv6 when tracing the path</help>
+ <completionHelp>
+ <list>&lt;hostname&gt; &lt;h:h:h:h:h:h:h:h&gt;</list>
+ </completionHelp>
+ </properties>
+ <command>/usr/bin/traceroute -6 "$3"</command>
+ <children>
+ <node name="tcp">
+ <properties>
+ <help>Use TCP/IPv6 packets to perform a traceroute</help>
+ </properties>
+ <command>sudo /usr/bin/tcptraceroute6 "$3" </command>
+ <children>
+ <tagNode name="port">
+ <properties>
+ <help>TCP port to connect to for path tracing</help>
+ <completionHelp>
+ <list>0-65535</list>
+ </completionHelp>
+ </properties>
+ <command>sudo /usr/bin/tcptraceroute6 "$3" $6</command>
+ </tagNode>
+ </children>
+ </node>
+ </children>
+ </tagNode>
+ <tagNode name="vrf">
+ <properties>
+ <help>Track network path to specified node via given VRF</help>
+ <completionHelp>
+ <path>vrf name</path>
+ </completionHelp>
+ </properties>
+ <children>
+ <!-- we need an empty tagNode to pass in a plain fqdn/ip address and
+ let traceroute decide how to handle this parameter -->
+ <tagNode name="">
+ <properties>
+ <help>Track network path to specified node via given VRF</help>
+ <completionHelp>
+ <list>&lt;hostname&gt; &lt;x.x.x.x&gt; &lt;h:h:h:h:h:h:h:h&gt;</list>
+ </completionHelp>
+ </properties>
+ <command>sudo /usr/sbin/ip vrf exec "$3" /usr/bin/traceroute "$4"</command>
+ </tagNode>
+ <tagNode name="ipv4">
+ <properties>
+ <help>Explicitly use IPv4 when tracing the path via given VRF</help>
+ <completionHelp>
+ <list>&lt;hostname&gt; &lt;x.x.x.x&gt;</list>
+ </completionHelp>
+ </properties>
+ <command>sudo /usr/sbin/ip vrf exec "$3" /usr/bin/traceroute -4 "$5"</command>
+ <children>
+ <node name="tcp">
+ <properties>
+ <help>Route tracing and port detection using TCP</help>
+ </properties>
+ <command>sudo /usr/sbin/ip vrf exec "$3" /usr/bin/tcptraceroute "$5" </command>
+ <children>
+ <tagNode name="port">
+ <properties>
+ <help>TCP port to connect to for path tracing</help>
+ <completionHelp>
+ <list>0-65535</list>
+ </completionHelp>
+ </properties>
+ <command>sudo /usr/sbin/ip vrf exec "$3" /usr/bin/tcptraceroute "$5" $8</command>
+ </tagNode>
+ </children>
+ </node>
+ </children>
+ </tagNode>
+ <tagNode name="ipv6">
+ <properties>
+ <help>Explicitly use IPv6 when tracing the path via given VRF</help>
+ <completionHelp>
+ <list>&lt;hostname&gt; &lt;h:h:h:h:h:h:h:h&gt;</list>
+ </completionHelp>
+ </properties>
+ <command>sudo /usr/sbin/ip vrf exec "$3" /usr/bin/traceroute -6 "$5"</command>
+ <children>
+ <node name="tcp">
+ <properties>
+ <help>Use TCP/IPv6 packets to perform a traceroute</help>
+ </properties>
+ <command>sudo /usr/sbin/ip vrf exec "$3" /usr/bin/tcptraceroute6 "$5" </command>
+ <children>
+ <tagNode name="port">
+ <properties>
+ <help>TCP port to connect to for path tracing</help>
+ <completionHelp>
+ <list>0-65535</list>
+ </completionHelp>
+ </properties>
+ <command>sudo /usr/sbin/ip vrf exec "$3" /usr/bin/tcptraceroute6 "$5" $8</command>
+ </tagNode>
+ </children>
+ </node>
+ </children>
+ </tagNode>
+ </children>
+ </tagNode>
+ </children>
+ </node>
+ <node name="monitor">
+ <children>
+ <tagNode name="traceroute">
+ <properties>
+ <help>Monitor path to destination in realtime</help>
+ <completionHelp>
+ <list>&lt;hostname&gt; &lt;x.x.x.x&gt; &lt;h:h:h:h:h:h:h:h&gt;</list>
+ </completionHelp>
+ </properties>
+ <command>/usr/bin/mtr "$3"</command>
+ </tagNode>
+ <node name="traceroute">
+ <children>
+ <tagNode name="ipv4">
+ <properties>
+ <help>IPv4 fully qualified domain name (FQDN)</help>
+ <completionHelp>
+ <list>&lt;fqdn&gt;</list>
+ </completionHelp>
+ </properties>
+ <command>/usr/bin/mtr -4 "$4"</command>
+ </tagNode>
+ <tagNode name="ipv6">
+ <properties>
+ <help>IPv6 fully qualified domain name (FQDN)</help>
+ <completionHelp>
+ <list>&lt;fqdn&gt;</list>
+ </completionHelp>
+ </properties>
+ <command>/usr/bin/mtr -6 "$4"</command>
+ </tagNode>
+ <tagNode name="vrf">
+ <properties>
+ <help>Monitor path to destination in realtime via given VRF</help>
+ <completionHelp>
+ <path>vrf name</path>
+ </completionHelp>
+ </properties>
+ <children>
+ <tagNode name="ipv4">
+ <properties>
+ <help>IPv4 fully qualified domain name (FQDN)</help>
+ <completionHelp>
+ <list>&lt;fqdn&gt;</list>
+ </completionHelp>
+ </properties>
+ <command>sudo /usr/sbin/ip vrf exec "$4" /usr/bin/mtr -4 "$6"</command>
+ </tagNode>
+ <tagNode name="ipv6">
+ <properties>
+ <help>IPv6 fully qualified domain name (FQDN)</help>
+ <completionHelp>
+ <list>&lt;fqdn&gt;</list>
+ </completionHelp>
+ </properties>
+ <command>sudo /usr/sbin/ip vrf exec "$4" /usr/bin/mtr -6 "$6"</command>
+ </tagNode>
+ <tagNode name="">
+ <properties>
+ <help>Track network path to specified node via given VRF</help>
+ <completionHelp>
+ <list>&lt;hostname&gt; &lt;x.x.x.x&gt; &lt;h:h:h:h:h:h:h:h&gt;</list>
+ </completionHelp>
+ </properties>
+ <command>sudo /usr/sbin/ip vrf exec "$4" /usr/bin/mtr "$5"</command>
+ </tagNode>
+ </children>
+ </tagNode>
+ </children>
+ </node>
+ </children>
+ </node>
+</interfaceDefinition>