From 41e22903659f9ec704cf7e15c1fcc8387394f355 Mon Sep 17 00:00:00 2001 From: lare <lare@lare.cc> Date: Tue, 23 Apr 2024 17:29:23 +0200 Subject: [PATCH] [node] also try ipv6ll in bgp-config + reformat [frontend] don't show enh v6 on --- nodes/templates/bgp-peer.template.conf | 6 ++++-- web/backend/main.py | 1 + web/frontend/peerings-edit.html | 4 ++-- web/frontend/peerings-new.html | 4 ++-- 4 files changed, 9 insertions(+), 6 deletions(-) diff --git a/nodes/templates/bgp-peer.template.conf b/nodes/templates/bgp-peer.template.conf index f8c6df4..389742d 100644 --- a/nodes/templates/bgp-peer.template.conf +++ b/nodes/templates/bgp-peer.template.conf @@ -16,19 +16,21 @@ protocol bgp dn42_{{peering["MNT"][:-4].lower()}}_{{peering["ASN"][-4:]}} from d #import where dn42_import_filter(x,y,z); #export where dn42_export_filter(x,y,z); #} - extended next hop {% if peering["bgp_enh"] %}on{%else%}off{%endif%}; + extended next hop off; }; }; {% elif peering["bgp_mp"] == False %} protocol bgp dn42_{{peering["MNT"][:-4].lower()}}_{{peering['ASN'][-4:]}}_4 from dnpeers { neighbor {{peering["ipv4"]}} as {{peering["ASN"]}}; + interface {% if peering['ASN'].__len__() >=6 %}"dn42_{{peering['ASN'][-6:]}}"{% else %}"dn42_{{peering['asn']}}"{% endif %}; passive off; #import where dn42_import_filter(x,y,z); #export where dn42_export_filter(x,y,z); }; protocol bgp dn42_{{peering["MNT"][:-4].lower()}}_{{peering['ASN'][-4:]}}_6 from dnpeers { - neighbor {{peering["ipv6"]}} as {{peering["ASN"]}}; + neighbor {% peering["ipv6"] != None %}{{peering["ipv6"]}}{% else %}{{peering["ipv6ll"]}}{% endif %} as {{peering["ASN"]}}; + interface {% if peering['ASN'].__len__() >=6 %}"dn42_{{peering['ASN'][-6:]}}"{% else %}"dn42_{{peering['asn']}}"{% endif %}; passive off; #import where dn42_import_filter(x,y,z); #export where dn42_export_filter(x,y,z); diff --git a/web/backend/main.py b/web/backend/main.py index 2c6b506..659de5b 100644 --- a/web/backend/main.py +++ b/web/backend/main.py @@ -392,6 +392,7 @@ def peerings_new(): if not peering_valid: return render_template("peerings-new.html", session=session, config=config, peerings=peerings, msg=peering_or_msg), 400 success, code = peerings.add_peering(session["user-data"]["asn"], request.args["node"], session["user-data"]["mnt"], peering_or_msg["peer-wgkey"], peering_or_msg["peer-endpoint"], peering_or_msg["peer-v6ll"], peering_or_msg["peer-v4"], peering_or_msg["peer-v6"], peering_or_msg["bgp-mp"], peering_or_msg["bgp-enh"]) + print(f"{success}, {code}") if not success: return render_template("peerings-new.html", session=session, config=config, peerings=peerings, msg="this ASN already has a peering with the requested node or something failed in the backend, please retry later"), code diff --git a/web/frontend/peerings-edit.html b/web/frontend/peerings-edit.html index 9d98782..b304b08 100644 --- a/web/frontend/peerings-edit.html +++ b/web/frontend/peerings-edit.html @@ -155,7 +155,7 @@ let enh_anabled = document.getElementById("bgp-extended-next-hop").checked; if (enh_anabled) { example_config_bird2_enh4.innerHTML = "on"; - example_config_bird2_enh6.innerHTML = "on"; + //example_config_bird2_enh6.innerHTML = "on"; } else { example_config_bird2_enh4.innerHTML = "off"; example_config_bird2_enh6.innerHTML = "off"; @@ -266,7 +266,7 @@ protocol bgp dn42_{{config["MNT"][:-4].lower()}} from dnpeers { extended next hop <span id="example-config-bird2-enh4">on</span>; }; ipv6 { - extended next hop <span id="example-config-bird2-enh6">on</span>; + extended next hop <span id="example-config-bird2-enh6">off</span>; }; } </pre> diff --git a/web/frontend/peerings-new.html b/web/frontend/peerings-new.html index 9d2e638..b72eeea 100644 --- a/web/frontend/peerings-new.html +++ b/web/frontend/peerings-new.html @@ -155,7 +155,7 @@ let enh_anabled = document.getElementById("bgp-extended-next-hop").checked; if (enh_anabled) { example_config_bird2_enh4.innerHTML = "on"; - example_config_bird2_enh6.innerHTML = "on"; + //example_config_bird2_enh6.innerHTML = "on"; } else { example_config_bird2_enh4.innerHTML = "off"; example_config_bird2_enh6.innerHTML = "off"; @@ -263,7 +263,7 @@ protocol bgp dn42_{{config["MNT"][:-4].lower()}} from dnpeers { extended next hop <span id="example-config-bird2-enh4">on</span>; }; ipv6 { - extended next hop <span id="example-config-bird2-enh6">on</span>; + extended next hop <span id="example-config-bird2-enh6">off</span>; }; } </pre>