diff options
author | Viacheslav Hletenko <v.gletenko@vyos.io> | 2023-08-25 12:12:29 +0000 |
---|---|---|
committer | Viacheslav Hletenko <v.gletenko@vyos.io> | 2023-08-25 12:12:29 +0000 |
commit | 9763154d99f7852e3fd8a50f8ecaf10b27b4ad0f (patch) | |
tree | 38ace73df8fe7d240ede6b4be16df68dc76e26e9 /interface-definitions | |
parent | 115dd78587197457e17b883f43f08e0a1da75ba6 (diff) | |
download | vyos-1x-9763154d99f7852e3fd8a50f8ecaf10b27b4ad0f.tar.gz vyos-1x-9763154d99f7852e3fd8a50f8ecaf10b27b4ad0f.zip |
T4825: Add interface type veth
Add interface type veth (Virtual ethernet)
One of the usecases it's interconnect different vrf's and
default vrf via bridge
set interfaces virtual-ethernet veth0 peer-name 'veth1010'
set interfaces virtual-ethernet veth1010 address '10.0.0.10/24'
set interfaces virtual-ethernet veth1010 peer-name 'veth0'
set interfaces virtual-ethernet veth1010 vrf 'foo'
set interfaces bridge br0 address '10.0.0.1/24'
set interfaces bridge br0 member interface veth0
vyos@r1:~$ ping 10.0.0.10 count 1
PING 10.0.0.10 (10.0.0.10) 56(84) bytes of data.
64 bytes from 10.0.0.10: icmp_seq=1 ttl=64 time=0.082 ms
Diffstat (limited to 'interface-definitions')
-rw-r--r-- | interface-definitions/interfaces-virtaul-ethernet.xml.in | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/interface-definitions/interfaces-virtaul-ethernet.xml.in b/interface-definitions/interfaces-virtaul-ethernet.xml.in new file mode 100644 index 000000000..1daa764d4 --- /dev/null +++ b/interface-definitions/interfaces-virtaul-ethernet.xml.in @@ -0,0 +1,47 @@ +<?xml version="1.0"?> +<interfaceDefinition> + <node name="interfaces"> + <children> + <tagNode name="virtual-ethernet" owner="${vyos_conf_scripts_dir}/interfaces-virtual-ethernet.py"> + <properties> + <help>Virtual Ethernet (veth) Interface</help> + <priority>300</priority> + <constraint> + <regex>veth[0-9]+</regex> + </constraint> + <constraintErrorMessage>Virutal Ethernet interface must be named vethN</constraintErrorMessage> + <valueHelp> + <format>vethN</format> + <description>Virtual Ethernet interface name</description> + </valueHelp> + </properties> + <children> + #include <include/interface/address-ipv4-ipv6-dhcp.xml.i> + #include <include/generic-description.xml.i> + #include <include/interface/dhcp-options.xml.i> + #include <include/interface/dhcpv6-options.xml.i> + #include <include/interface/disable.xml.i> + #include <include/interface/vif-s.xml.i> + #include <include/interface/vif.xml.i> + #include <include/interface/vrf.xml.i> + <leafNode name="peer-name"> + <properties> + <help>Virtual ethernet peer interface name</help> + <completionHelp> + <path>interfaces virtual-ethernet</path> + </completionHelp> + <valueHelp> + <format>txt</format> + <description>Name of peer interface</description> + </valueHelp> + <constraint> + <regex>veth[0-9]+</regex> + </constraint> + <constraintErrorMessage>Virutal Ethernet interface must be named vethN</constraintErrorMessage> + </properties> + </leafNode> + </children> + </tagNode> + </children> + </node> +</interfaceDefinition> |