diff --git a/_modules/node.py b/_modules/node.py
--- a/_modules/node.py
+++ b/_modules/node.py
@@ -285,6 +285,7 @@
     for node, tunnel in __pillar__.get(f"{network}_gre_tunnels", {}).items():
         tunnels.append(
             {
+                "network": network,
                 "description": f"{network}_to_{node}",
                 "interface": tunnel["router"]["interface"],
                 "src": tunnel["router"]["addr"],
@@ -320,6 +321,7 @@
 
         gre_tunnels.append(
             {
+                "network": network,
                 "description": f"{network}_via_{network_args['router']}",
                 "interface": tunnel["node"].get("interface", "gre0"),
                 "src": tunnel["node"]["addr"],
diff --git a/roles/core/network/gre.sls b/roles/core/network/gre.sls
--- a/roles/core/network/gre.sls
+++ b/roles/core/network/gre.sls
@@ -17,7 +17,7 @@
 
 {% set boot_loader.gre = True %}
 
-{{ gre.config_path }}{{ tunnel["description"] }}:
+{{ gre.config_path }}{{ tunnel["network"] }}:
   file.managed:
     - source: salt://roles/core/network/files/{{ gre.source_path }}
     - makedirs: True
@@ -25,7 +25,7 @@
     - defaults: {{ tunnel }}
 {% if grains['os_family'] == 'Debian' %}
     - context:
-        interface: gre-{{ description }}
+        interface: gre-{{ tunnel["network"] }}
 {% endif %}
 
 {% endfor %}