summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rwxr-xr-xsrc/conf_mode/interfaces-geneve.py15
1 files changed, 15 insertions, 0 deletions
diff --git a/src/conf_mode/interfaces-geneve.py b/src/conf_mode/interfaces-geneve.py
index 94f88ad6d..b11ef3594 100755
--- a/src/conf_mode/interfaces-geneve.py
+++ b/src/conf_mode/interfaces-geneve.py
@@ -32,6 +32,8 @@ default_config_data = {
'description': '',
'disable': False,
'intf': '',
+ 'ip_arp_cache_tmo': 30,
+ 'ip_proxy_arp': 0,
'mtu': 1450,
'remote': ''
}
@@ -66,6 +68,14 @@ def get_config():
if conf.exists('disable'):
geneve['disable'] = True
+ # ARP cache entry timeout in seconds
+ if conf.exists('ip arp-cache-timeout'):
+ geneve['ip_arp_cache_tmo'] = int(conf.return_value('ip arp-cache-timeout'))
+
+ # Enable proxy-arp on this interface
+ if conf.exists('ip enable-proxy-arp'):
+ geneve['ip_proxy_arp'] = 1
+
# Maximum Transmission Unit (MTU)
if conf.exists('mtu'):
geneve['mtu'] = int(conf.return_value('mtu'))
@@ -124,6 +134,11 @@ def apply(geneve):
# Maximum Transfer Unit (MTU)
v.set_mtu(geneve['mtu'])
+ # configure ARP cache timeout in milliseconds
+ v.set_arp_cache_tmo(geneve['ip_arp_cache_tmo'])
+ # Enable proxy-arp on this interface
+ v.set_proxy_arp(geneve['ip_proxy_arp'])
+
# Configure interface address(es) - no need to implicitly delete the
# old addresses as they have already been removed by deleting the
# interface above