MLAN¶
Masquerade Local Area Network components provide a service that is a combination of a VLAN and the Network Address Translation service. The basic feature is to “mask” the topology of one network from another connected network.
MLANs can be configured to create a network with any arbitrary MAC address size.
MLAN¶
The MLAN component creates a masquerade network with a collection of nodes:
<MLAN mlan="mlan_label" />
The mlan_label
uniquely identifies the MLAN
in the configuration.
The relationship between a Router and an MLAN is made via a masquerade adapter.
MAdapter¶
The Masquerade Adapter is a component that manages the relationship between an MLAN and how the nodes on that network are to be mapped:
<MAdapter net="net_number" mlan="mlan_label">
Static address mapping...
<Static node="node_address" address="net_address" />
Address filtering...
<Accept address="address_pattern" />
<Reject />
</MAdapter>
The net_number
is the network number of the connected BACnet network to the router.
This is the unique number in the context of the BACnet intranet of the Router
and
its other attached networks. This is indepedant of the network number of the other
MAdapter
components that may be connected to the same MLAN
.
The mlan_label
is the label of the “attached” MLAN
component.
The Static
elements are used to define specific mappings from the MLAN
to network
addresses. The net_address
is the BACnet intranet address of the original source
address of a packet coming downstream from the Router
, and the node_addess
is
how that should be presented as a local station address on the MLAN
.
Addresses that are not staticly associated with specific nodes are given dynamic node_address
values, subject to the Accept
or Reject
rules.
The Accept
element describes an address pattern that is acceptable to map on the
MLAN
. The form is typically n:*
which will accept all of the addresses on a
specific network. If the address_pattern
is not provided, the Accept
functions
like “accept all (others)”.
The Reject
element is the inverse of the Accept
element, it describes an address
pattern that is not acceptable to map on the MLAN
. The form is typically n:*
which
will reject all of the addresses on a specific network. If the address_pattern
is not
provided, the Reject
functions like “reject all (others)”.
The Accept
and Reject
elements are processed in the order they are given.
Samples¶
For these and other samples, the components are described in configuration starting from the bottom of a stack and proceeding up. In the coorisponding diagrams, upstream traffic goes from left to right, the downstream traffic from right to left.
MLAN Echo¶
This sample configuration file creates two virtual networks and two routers. The two
routers are connected to each other via an MLAN
:
<BFR>
Create a network with two nodes, this will be network 1:
<VLAN>
<Node address="1" server="a" />
<Node address="2" server="b" />
</VLAN>
On the first node, bind a console, and on the second bind a debugger:
<Console client="a" />
<Debug client="b" prefix=" b:"/>
Create another network with two nodes, this will be network 2:
<VLAN>
<Node address="1" server="c" />
<Node address="2" server="d" />
</VLAN>
On the first node, bind a debugger, and on the second bind a echo:
<Debug client="c" prefix=" c:" />
<Echo client="d" />
Create a masquerade LAN:
<MLAN mlan="" />
MORE GOES HERE
</BFR>
Some text goes here.