summaryrefslogtreecommitdiff
path: root/op-mode-definitions
diff options
context:
space:
mode:
authorChristian Poessinger <christian@poessinger.com>2019-08-25 08:29:23 +0200
committerGitHub <noreply@github.com>2019-08-25 08:29:23 +0200
commitca6c3e44833d0de868997a9672a16779c1abf9d2 (patch)
tree21196a9d57f7afd6bc1439cfcbb86ee0dd4b2856 /op-mode-definitions
parent9d68ce363d50a13246fcd7407795ef536501d296 (diff)
parentca1caa6c6effb82b22dad0db4c4f47247c3722ad (diff)
downloadvyos-1x-ca6c3e44833d0de868997a9672a16779c1abf9d2.tar.gz
vyos-1x-ca6c3e44833d0de868997a9672a16779c1abf9d2.zip
Merge pull request #112 from alkersan/T1607_reset_ip_conntrack_rewrite
[op-mode] T1607 rewrite 'reset conntrack' and 'reset & show ip[v6]' to python/xml syntax
Diffstat (limited to 'op-mode-definitions')
-rw-r--r--op-mode-definitions/dns-forwarding.xml3
-rw-r--r--op-mode-definitions/ipv4-route.xml125
-rw-r--r--op-mode-definitions/ipv6-route.xml133
-rw-r--r--op-mode-definitions/openvpn.xml3
-rw-r--r--op-mode-definitions/reset-conntrack.xml16
5 files changed, 280 insertions, 0 deletions
diff --git a/op-mode-definitions/dns-forwarding.xml b/op-mode-definitions/dns-forwarding.xml
index ac141174f..785a05e9c 100644
--- a/op-mode-definitions/dns-forwarding.xml
+++ b/op-mode-definitions/dns-forwarding.xml
@@ -42,6 +42,9 @@
</children>
</node>
<node name="reset">
+ <properties>
+ <help>Reset a service</help>
+ </properties>
<children>
<node name="dns">
<properties>
diff --git a/op-mode-definitions/ipv4-route.xml b/op-mode-definitions/ipv4-route.xml
new file mode 100644
index 000000000..d2846a6f2
--- /dev/null
+++ b/op-mode-definitions/ipv4-route.xml
@@ -0,0 +1,125 @@
+<?xml version="1.0"?>
+<interfaceDefinition>
+ <node name="show">
+ <properties>
+ <help>Show system information</help>
+ </properties>
+ <children>
+ <node name="ip">
+ <properties>
+ <help>Show IPv4 information</help>
+ </properties>
+ <children>
+ <leafNode name="groups">
+ <properties>
+ <help>Show IP multicast group membership</help>
+ </properties>
+ <command>netstat -gn4</command>
+ </leafNode>
+
+ <node name="route">
+ <properties>
+ <help>Show IP routes</help>
+ </properties>
+ <children>
+ <node name="cache">
+ <properties>
+ <help>Show kernel route cache</help>
+ </properties>
+ <command>ip -s route list cache</command>
+ </node>
+ <tagNode name="cache">
+ <properties>
+ <help>Show kernel route cache for a given route</help>
+ <completionHelp>
+ <list>&lt;x.x.x.x&gt; &lt;x.x.x.x/x&gt;</list>
+ </completionHelp>
+ </properties>
+ <command>ip -s route list cache $5</command>
+ </tagNode>
+ <node name="forward">
+ <properties>
+ <help>Show kernel route table</help>
+ </properties>
+ <command>ip route list</command>
+ </node>
+ <tagNode name="forward">
+ <properties>
+ <help>Show kernel route table for a given route</help>
+ <completionHelp>
+ <list>&lt;x.x.x.x&gt; &lt;x.x.x.x/x&gt;</list>
+ </completionHelp>
+ </properties>
+ <command>ip -s route list $5</command>
+ </tagNode>
+ </children>
+ </node>
+ </children>
+ </node>
+ </children>
+ </node>
+
+ <node name="reset">
+ <properties>
+ <help>Reset a service</help>
+ </properties>
+ <children>
+ <node name="ip">
+ <properties>
+ <help>Reset Internet Protocol (IP) parameters</help>
+ </properties>
+ <children>
+ <node name="arp">
+ <properties>
+ <help>Reset Address Resolution Protocol (ARP) cache</help>
+ </properties>
+ <children>
+ <tagNode name="address">
+ <properties>
+ <help>Reset ARP cache for an IPv4 address</help>
+ <completionHelp>
+ <list>&lt;x.x.x.x&gt;</list>
+ </completionHelp>
+ </properties>
+ <command>sudo /sbin/ip neigh flush to "$5"</command>
+ </tagNode>
+ <tagNode name="interface">
+ <properties>
+ <help>Reset ARP cache for interface</help>
+ <completionHelp>
+ <script>${vyos_completion_dir}/list_interfaces.py</script>
+ </completionHelp>
+ </properties>
+ <command>sudo /sbin/ip neigh flush dev "$5"</command>
+ </tagNode>
+ </children>
+ </node>
+
+ <node name="route">
+ <properties>
+ <help>Reset IP route</help>
+ </properties>
+ <children>
+ <leafNode name= "cache">
+ <properties>
+ <help>Flush the kernel route cache</help>
+ </properties>
+ <command>sudo /sbin/ip route flush cache</command>
+ </leafNode>
+
+ <tagNode name="cache">
+ <properties>
+ <help>Flush the kernel route cache for a given route</help>
+ <completionHelp>
+ <list>&lt;x.x.x.x&gt; &lt;x.x.x.x/x&gt;</list>
+ </completionHelp>
+ </properties>
+ <command>sudo /sbin/ip route flush cache "$5"</command>
+ </tagNode>
+ </children>
+ </node>
+ </children>
+ </node>
+ </children>
+ </node>
+</interfaceDefinition>
diff --git a/op-mode-definitions/ipv6-route.xml b/op-mode-definitions/ipv6-route.xml
new file mode 100644
index 000000000..fbf6489ba
--- /dev/null
+++ b/op-mode-definitions/ipv6-route.xml
@@ -0,0 +1,133 @@
+<?xml version="1.0"?>
+<interfaceDefinition>
+ <node name="show">
+ <properties>
+ <help>Show system information</help>
+ </properties>
+ <children>
+ <node name="ipv6">
+ <properties>
+ <help>Show IPv6 routing information</help>
+ </properties>
+ <children>
+ <leafNode name="groups">
+ <properties>
+ <help>Show IPv6 multicast group membership</help>
+ </properties>
+ <command>netstat -gn6</command>
+ </leafNode>
+
+ <leafNode name="neighbors">
+ <properties>
+ <help>Show IPv6 Neighbor Discovery (ND) information</help>
+ </properties>
+ <command>ip -f inet6 neigh list</command>
+ </leafNode>
+
+ <node name="route">
+ <properties>
+ <help>Show IPv6 routes</help>
+ </properties>
+ <children>
+ <node name="cache">
+ <properties>
+ <help>Show kernel IPv6 route cache</help>
+ </properties>
+ <command>ip -s -f inet6 route list cache</command>
+ </node>
+ <tagNode name="cache">
+ <properties>
+ <help>Show kernel IPv6 route cache for a given route</help>
+ <completionHelp>
+ <list>&lt;h:h:h:h:h:h:h:h&gt; &lt;h:h:h:h:h:h:h:h/x&gt;</list>
+ </completionHelp>
+ </properties>
+ <command>ip -s -f inet6 route list cache $5</command>
+ </tagNode>
+ <node name="forward">
+ <properties>
+ <help>Show kernel IPv6 route table</help>
+ </properties>
+ <command>ip -f inet6 route list</command>
+ </node>
+ <tagNode name="forward">
+ <properties>
+ <help>Show kernel IPv6 route table for a given route</help>
+ <completionHelp>
+ <list>&lt;h:h:h:h:h:h:h:h&gt; &lt;h:h:h:h:h:h:h:h/x&gt;</list>
+ </completionHelp>
+ </properties>
+ <command>ip -s -f inet6 route list $5</command>
+ </tagNode>
+ </children>
+ </node>
+
+ </children>
+ </node>
+ </children>
+ </node>
+
+ <node name="reset">
+ <properties>
+ <help>Reset a service</help>
+ </properties>
+ <children>
+ <node name="ipv6">
+ <properties>
+ <help>Reset Internet Protocol version 6 (IPv6) parameters</help>
+ </properties>
+ <children>
+ <node name="neighbors">
+ <properties>
+ <help>Reset IPv6 Neighbor Discovery (ND) cache</help>
+ </properties>
+ <children>
+ <tagNode name="address">
+ <properties>
+ <help>Reset ND cache for an IPv6 address</help>
+ <completionHelp>
+ <list>&lt;h:h:h:h:h:h:h:h&gt;</list>
+ </completionHelp>
+ </properties>
+ <command>sudo ip -f inet6 neigh flush to "$5"</command>
+ </tagNode>
+ <tagNode name="interface">
+ <properties>
+ <help>Reset IPv6 ND cache for interface</help>
+ <completionHelp>
+ <script>${vyos_completion_dir}/list_interfaces.py</script>
+ </completionHelp>
+ </properties>
+ <command>sudo ip -f inet6 neigh flush dev "$5"</command>
+ </tagNode>
+ </children>
+ </node>
+
+ <node name="route">
+ <properties>
+ <help>Reset IPv6 route</help>
+ </properties>
+ <children>
+ <leafNode name= "cache">
+ <properties>
+ <help>Flush the kernel IPv6 route cache</help>
+ </properties>
+ <command>sudo ip -f inet6 route flush cache</command>
+ </leafNode>
+
+ <tagNode name="cache">
+ <properties>
+ <help>Flush the kernel IPv6 route cache for a given route</help>
+ <completionHelp>
+ <list>&lt;h:h:h:h:h:h:h:h&gt; &lt;h:h:h:h:h:h:h:h/x&gt;</list>
+ </completionHelp>
+ </properties>
+ <command>sudo ip -f inet6 route flush cache "$5"</command>
+ </tagNode>
+ </children>
+ </node>
+ </children>
+ </node>
+ </children>
+ </node>
+</interfaceDefinition>
diff --git a/op-mode-definitions/openvpn.xml b/op-mode-definitions/openvpn.xml
index 4c958257a..ac0c42789 100644
--- a/op-mode-definitions/openvpn.xml
+++ b/op-mode-definitions/openvpn.xml
@@ -46,6 +46,9 @@
</children>
</node>
<node name="reset">
+ <properties>
+ <help>Reset a service</help>
+ </properties>
<children>
<node name="openvpn">
<children>
diff --git a/op-mode-definitions/reset-conntrack.xml b/op-mode-definitions/reset-conntrack.xml
new file mode 100644
index 000000000..827ba4af4
--- /dev/null
+++ b/op-mode-definitions/reset-conntrack.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0"?>
+<interfaceDefinition>
+ <node name="reset">
+ <properties>
+ <help>Reset a service</help>
+ </properties>
+ <children>
+ <node name="conntrack">
+ <properties>
+ <help>Reset all currently tracked connections</help>
+ </properties>
+ <command>sudo ${vyos_op_scripts_dir}/clear_conntrack.py</command>
+ </node>
+ </children>
+ </node>
+</interfaceDefinition>