Versionen im Vergleich

Schlüssel

  • Diese Zeile wurde hinzugefügt.
  • Diese Zeile wurde entfernt.
  • Formatierung wurde geändert.
Seiteneigenschaften


Deutsch

Beschreibung:

Mit diesem Add-In können Sie das 1 zu 1 VPN-Routing ändern, um zusätzliche private Netzwerke über die VPN-Verbindung erreichbar zu machen. Wichtige Variablen:

  • context.vars.centralVPN = true
  • context.vars.remoteVPN = true

Das folgende Beispiel geht davon aus, dass das centralVPN Device ein zusätzliches Netzwerk hat, das das remoteVPN Device über die bestehende VPN-Verbindung im ungetaggten (VLAN 1) Netzwerk erreichen möchte.

Liste der verwendeten Variablen:

VariableBeschreibung
context.vars.centralVPN
context.vars.remoteVPN

Add-

In

in Code:

/**
 * @param {Config} config
 * @param {Context} context
 * Do not edit this comment or parameter types. Required for code suggestions
*/
exports.main = function (config, context) {
    // Function to create VRRP Entry
    var addVRRPEntry = function (routerID, routerIP, mainPrio, backupPrio, remoteSite, comment) {
        var table1_2_8_21_2 = config.getTableByOid("1.2.8.21.2");
        var table_1_2_8_21_2_row_1 = table1_2_8_21_2.createNewRow();
        table_1_2_8_21_2_row_1.setByOid(1, routerID);
        table_1_2_8_21_2_row_1.setByOid(2, routerIP);
        table_1_2_8_21_2_row_1.setByOid(3, mainPrio);
        table_1_2_8_21_2_row_1.setByOid(4, backupPrio);
        table_1_2_8_21_2_row_1.setByOid(5, remoteSite);
        table_1_2_8_21_2_row_1.setByOid(6, comment);
        table1_2_8_21_2.addOrMerge(table_1_2_8_21_2_row_1);
    };
    // If Statement to only create VRRP Entry, if device has the variable VRRP_Prio
    if (context.vars.VRRP_PRIO != "") {
        config.setScalarByOid("1.2.8.21.1", "1");
        // Function Call to create a new Entry
        addVRRPEntry("1", "10.10.10.254", context.vars.VRRP_PRIO, "0", "INTERNET", "");
    }
};
Addin

Add-in als JSON-Datei:

View file
name1toN-VPN-Routing.json
pageÄndern des 1:1 VPN-Routing
spaceLMCAD
height150



english
Englisch

Description:

With this Add-in you can change the 1 to 1 VPN routing, to make additional private Networks reachable via the VPN connection. Important Variables:

  • context.vars.centralVPN = true
  • context.vars.remoteVPN = true

The following example expects the centralVPN Device to have an additional network, that the remoteVPN Device wants to reach over the existing VPN-Connection in the untagged (VLAN 1) Network.


List of used variables:

VariableDescription
context.vars.centralVPN
context.vars.remoteVPN

Add-in code:

/**

 *
@param
{Config}
config

 *
@param
{Context}
context

 *
Do
not
edit
this
comment
or
parameter
types.
Required
for
code
suggestions

*/

exports.main
=
function
(config,
context)
{ var addFirewallRule = function (Name, Source, Destination, Action, RtgTag) { var firewallRule =
{
    // Function to create VRRP Entry
    var addVRRPEntry = function (routerID, routerIP, mainPrio, backupPrio, remoteSite, comment) {
        var table1_2_8_21_2 = config.getTableByOid("1.2.8.
10
21.2");
var firewallRule_row = firewallRule

        var table_1_2_8_21_2_row_1 = table1_2_8_21_2.createNewRow();
firewallRule_row.setByOid("1", Name); firewallRule_row.setByOid("3", Source); firewallRule_row.setByOid("4", Destination); firewallRule_row.setByOid("7", Action); firewallRule_row.setByOid("14", RtgTag); firewallRule.addOrMerge(firewallRule_row); }; var addRoute = function (DestinationIP, IpMask, RtgTag, AdminDistance, PeerOrIP, Distance, Masquerade, Active, Comment) { var TableRouting = config.getTableByOid("1.2.8.2"); var TableRouting_row = TableRouting.createNewRow(); TableRouting_row.setByOid(1, DestinationIP); TableRouting_row.setByOid(2, IpMask); TableRouting_row.setByOid(8, RtgTag); TableRouting_row.setByOid(9, AdminDistance); TableRouting_row.setByOid(3, PeerOrIP); TableRouting_row.setByOid(4, Distance); TableRouting_row.setByOid(5, Masquerade); TableRouting_row.setByOid(6, Active); TableRouting_row.setByOid(7, Comment); TableRouting.addOrMerge(TableRouting_row); }; // centralVPN = Settings regarding and outgoint to Central Site Device // remoteVPN = Settings regarding and outgoint to Remote Site Device // Firewall Rule and Routing Table Entry on Central Site Device if (context.vars.centralVPN == "true") { config.infoLog("central"); addFirewallRule("RuleName", "%HremoteVPNPeer", "%centralVPNNetworkName", "ACCEPT", "centralVPNNetworkRtgTag") addRoute("remoteVPNNetwork", "remoteVPNNetmask", "0", "0", "remoteVPNPeer", "4", "0", "0", "Route for additional Central VPN Network to Remote VPN Peer") } // Firewall Rule and Routing Table Entry on Remote Site Device if (context.vars.remoteVPN == "true") { config.infoLog("remote"); addFirewallRule("RuleName", "%HcentralVPNPeer", "%LremoteVPNNetworkName", "ACCEPT", "remoteVPNNetworkRtgTag") addRoute("centralVPNNetwork", "centralVPNNetmask", "0", "0", "centralVPNPeer", "4", "0", "0", "Route for additional Central VPN Network") } };

        table_1_2_8_21_2_row_1.setByOid(1, routerID);
        table_1_2_8_21_2_row_1.setByOid(2, routerIP);
        table_1_2_8_21_2_row_1.setByOid(3, mainPrio);
        table_1_2_8_21_2_row_1.setByOid(4, backupPrio);
        table_1_2_8_21_2_row_1.setByOid(5, remoteSite);
        table_1_2_8_21_2_row_1.setByOid(6, comment);
        table1_2_8_21_2.addOrMerge(table_1_2_8_21_2_row_1);
    };
    // If Statement to only create VRRP Entry, if device has the variable VRRP_Prio
    if (context.vars.VRRP_PRIO != "") {
        config.setScalarByOid("1.2.8.21.1", "1");
        // Function Call to create a new Entry
        addVRRPEntry("1", "10.10.10.254", context.vars.VRRP_PRIO, "0", "INTERNET", "");
    }
};

Add-in as JSON file:

View file
name1toN-VPN-Routing.json
pageÄndern des 1:1 VPN-Routing
spaceLMCAD
height250150