summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorjack9603301 <jack9603301@163.com>2020-07-18 03:30:54 +0800
committerjack9603301 <jack9603301@163.com>2020-07-18 03:30:54 +0800
commit90b77f016aad70567bc7154cb5251023991b91c2 (patch)
tree2b24f075f29b169799a672acdbc90b0ac8d962c2
parent2dd1392cfe28518658604c88e606c7aec03936a7 (diff)
downloadvyos-1x-90b77f016aad70567bc7154cb5251023991b91c2.tar.gz
vyos-1x-90b77f016aad70567bc7154cb5251023991b91c2.zip
ndptool: T2706: Support NDP protocol monitoring
It supports NDP protocol monitoring. The submission supports the following features: - Support the monitoring of specified port or all ports - Supports monitoring of specific message types - Support sending specific NDP message
-rw-r--r--debian/control3
-rw-r--r--op-mode-definitions/ndp-monitor.xml60
2 files changed, 62 insertions, 1 deletions
diff --git a/debian/control b/debian/control
index 6746fe647..3a441b47b 100644
--- a/debian/control
+++ b/debian/control
@@ -105,7 +105,8 @@ Depends: python3,
nftables (>= 0.9.3),
conntrack,
libatomic1,
- fastnetmon
+ fastnetmon,
+ libndp-tools
Description: VyOS configuration scripts and data
VyOS configuration scripts, interface definitions, and everything
diff --git a/op-mode-definitions/ndp-monitor.xml b/op-mode-definitions/ndp-monitor.xml
new file mode 100644
index 000000000..6ef3bce60
--- /dev/null
+++ b/op-mode-definitions/ndp-monitor.xml
@@ -0,0 +1,60 @@
+<?xml version="1.0"?>
+<interfaceDefinition>
+ <node name="monitor">
+ <children>
+ <node name="ndp">
+ <properties>
+ <help>Monitors the NDP information received by the router through the device</help>
+ </properties>
+ <command>sudo ndptool monitor</command>
+ <children>
+ <tagNode name="interface">
+ <command>sudo ndptool monitor --ifname=$4</command>
+ <properties>
+ <help>Monitor ndp protocol on specified interface</help>
+ <completionHelp>
+ <script>${vyos_completion_dir}/list_interfaces.py</script>
+ </completionHelp>
+ </properties>
+ <children>
+ <tagNode name="type">
+ <command>sudo ndptool monitor --ifname=$4 --msg-type=$6</command>
+ <properties>
+ <help>Monitor ndp protocol on specified interface</help>
+ <completionHelp>
+ <list>rs ra ns na</list>
+ </completionHelp>
+ </properties>
+ <children>
+ <tagNode name="send">
+ <command>sudo ndptool send --ifname=$4 --msg-type=$6</command>
+ <properties>
+ <help>Send a specified type of NDP message</help>
+ </properties>
+ </tagNode>
+ </children>
+ </tagNode>
+ </children>
+ </tagNode>
+ <tagNode name="type">
+ <command>sudo ndptool monitor --msg-type=$4</command>
+ <properties>
+ <help>Monitor ndp protocol on specified interface</help>
+ <completionHelp>
+ <list>rs ra ns na</list>
+ </completionHelp>
+ </properties>
+ <children>
+ <tagNode name="send">
+ <command>sudo ndptool send --msg-type=$4</command>
+ <properties>
+ <help>Send a specified type of NDP message</help>
+ </properties>
+ </tagNode>
+ </children>
+ </tagNode>
+ </children>
+ </node>
+ </children>
+ </node>
+</interfaceDefinition>