From 20ecb6d4ccaf903bcaaf658b1a655dd8d79b989c Mon Sep 17 00:00:00 2001 From: Viacheslav Hletenko Date: Wed, 22 Jan 2025 15:01:05 +0000 Subject: GRE: Add tunnel-type erspan, l3 and teb Add tunnel type - erspan - l3 - teb (Transparent Ethernet Bridge) By default L3 GRE interfaces cannot be bridged to a bridge interface. Add the ability to change tunnel type. set vpp interfaces gre gre2 tunnel-type 'teb' --- src/conf_mode/vpp_interfaces_gre.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'src') diff --git a/src/conf_mode/vpp_interfaces_gre.py b/src/conf_mode/vpp_interfaces_gre.py index feff0d6b5..4cb1a71ea 100644 --- a/src/conf_mode/vpp_interfaces_gre.py +++ b/src/conf_mode/vpp_interfaces_gre.py @@ -124,7 +124,7 @@ def verify(config): return None # source-address and remote are mandatory options - required_keys = {'source_address', 'remote'} + required_keys = {'source_address', 'remote', 'tunnel_type'} if not all(key in config for key in required_keys): missing_keys = required_keys - set(config.keys()) raise ConfigError( @@ -159,7 +159,8 @@ def apply(config): src_addr = config.get('source_address') dst_addr = config.get('remote') kernel_interface = config.get('kernel_interface', '') - i = GREInterface(ifname, src_addr, dst_addr, kernel_interface) + tunnel_type = config.get('tunnel_type') + i = GREInterface(ifname, src_addr, dst_addr, tunnel_type, kernel_interface) i.add() # Add kernel-interface (LCP) if interface is not exist -- cgit v1.2.3