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: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 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 = config.getTableByOid("1.2.8.10.2");
       var firewallRule_row = firewallRule.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) {
       varTableRouting = config.getTableByOid("1.2.8.2");
       varTableRouting_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")
   }

};  

Add-in als JSON-Datei:

View file
name1toN-VPN-Routing.json
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

{
   var addFirewallRule = function (Name,

Source,

Destination,

Action,

RtgTag)

{ var firewallRule =

{
       var firewallRule = config.getTableByOid("1.2.8.10.2");

var


       var firewallRule_row

=

firewallRule.createNewRow();

firewallRule


       firewallRule_row.setByOid("1",

Name);

firewallRule


       firewallRule_row.setByOid("3",

Source);

firewallRule


       firewallRule_row.setByOid("4",

Destination);

firewallRule


       firewallRule_row.setByOid("7",

Action);

firewallRule


       firewallRule_row.setByOid("14",

RtgTag);

firewallRule


       firewallRule.addOrMerge(firewallRule_row);

}; var addRoute = function


   };
   var addRoute = function (DestinationIP,

IpMask,

RtgTag,

AdminDistance,

PeerOrIP,

Distance,

Masquerade,

Active,

Comment)

{ var TableRouting =

{
       varTableRouting = config.getTableByOid("1.2.8.2");

var


       varTableRouting_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
 config.infoLog("central");

     
addFirewallRule
 addFirewallRule("RuleName", "%HremoteVPNPeer", "%centralVPNNetworkName", "ACCEPT", "centralVPNNetworkRtgTag")

     
addRoute
 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
 config.infoLog("remote");

     
addFirewallRule
 addFirewallRule("RuleName", "%HcentralVPNPeer", "%LremoteVPNNetworkName", "ACCEPT", "remoteVPNNetworkRtgTag")

     
addRoute
 addRoute("centralVPNNetwork", "centralVPNNetmask", "0", "0", "centralVPNPeer", "4", "0", "0", "Route for additional Central VPN Network")

 
 }


};

Add-in as JSON file:

View file
name1toN-VPN-Routing.json
height150
download json file