diff --git a/EduNetworkBuilder/DeviceConfig.cs b/EduNetworkBuilder/DeviceConfig.cs
index 5795cfb..8d63d35 100644
--- a/EduNetworkBuilder/DeviceConfig.cs
+++ b/EduNetworkBuilder/DeviceConfig.cs
@@ -101,6 +101,14 @@ namespace EduNetworkBuilder
NetworkCard nic = ndCLonedItem.NicFromName(nic_name);
if (nic != null)
{
+ if (nic.GetNicType == NicType.management_interface)
+ interfacesLocked = true;
+ if (nic.GetNicType == NicType.lo)
+ interfacesLocked = true;
+ if (nic.GetNicType == NicType.port)
+ interfacesLocked = true;
+ if (nic.GetNicType == NicType.wport)
+ interfacesLocked = true;
for (int i = 0; i < nic.IFCount; i++)
{
NetworkInterface nif = nic.GetInterface(i);
diff --git a/EduNetworkBuilder/EduNetworkBuilder.csproj b/EduNetworkBuilder/EduNetworkBuilder.csproj
index e28e7b3..483fe8b 100644
--- a/EduNetworkBuilder/EduNetworkBuilder.csproj
+++ b/EduNetworkBuilder/EduNetworkBuilder.csproj
@@ -87,6 +87,10 @@
DeviceConfig.cs
+
+
+ FirewallEditor.cs
+
Form
@@ -169,6 +173,9 @@
DeviceConfig.cs
+
+ FirewallEditor.cs
+
IPAddressEntry.cs
@@ -280,8 +287,10 @@
+
+
diff --git a/EduNetworkBuilder/FirewallEditor.Designer.cs b/EduNetworkBuilder/FirewallEditor.Designer.cs
new file mode 100644
index 0000000..2d62641
--- /dev/null
+++ b/EduNetworkBuilder/FirewallEditor.Designer.cs
@@ -0,0 +1,105 @@
+namespace EduNetworkBuilder
+{
+ partial class FirewallEditor
+ {
+ ///
+ /// Required designer variable.
+ ///
+ private System.ComponentModel.IContainer components = null;
+
+ ///
+ /// Clean up any resources being used.
+ ///
+ /// true if managed resources should be disposed; otherwise, false.
+ protected override void Dispose(bool disposing)
+ {
+ if (disposing && (components != null))
+ {
+ components.Dispose();
+ }
+ base.Dispose(disposing);
+ }
+
+ #region Windows Form Designer generated code
+
+ ///
+ /// Required method for Designer support - do not modify
+ /// the contents of this method with the code editor.
+ ///
+ private void InitializeComponent()
+ {
+ this.lbRules = new System.Windows.Forms.ListBox();
+ this.btnNew = new System.Windows.Forms.Button();
+ this.btnDone = new System.Windows.Forms.Button();
+ this.btnDel = new System.Windows.Forms.Button();
+ this.SuspendLayout();
+ //
+ // lbRules
+ //
+ this.lbRules.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
+ | System.Windows.Forms.AnchorStyles.Left)
+ | System.Windows.Forms.AnchorStyles.Right)));
+ this.lbRules.FormattingEnabled = true;
+ this.lbRules.ItemHeight = 16;
+ this.lbRules.Location = new System.Drawing.Point(12, 23);
+ this.lbRules.Name = "lbRules";
+ this.lbRules.Size = new System.Drawing.Size(276, 228);
+ this.lbRules.TabIndex = 0;
+ //
+ // btnNew
+ //
+ this.btnNew.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
+ this.btnNew.Location = new System.Drawing.Point(12, 256);
+ this.btnNew.Name = "btnNew";
+ this.btnNew.Size = new System.Drawing.Size(75, 23);
+ this.btnNew.TabIndex = 1;
+ this.btnNew.Text = "New";
+ this.btnNew.UseVisualStyleBackColor = true;
+ this.btnNew.Click += new System.EventHandler(this.btnNew_Click);
+ //
+ // btnDone
+ //
+ this.btnDone.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+ this.btnDone.Location = new System.Drawing.Point(213, 256);
+ this.btnDone.Name = "btnDone";
+ this.btnDone.Size = new System.Drawing.Size(75, 23);
+ this.btnDone.TabIndex = 2;
+ this.btnDone.Text = "Done";
+ this.btnDone.UseVisualStyleBackColor = true;
+ this.btnDone.Click += new System.EventHandler(this.btnDone_Click);
+ //
+ // btnDel
+ //
+ this.btnDel.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
+ this.btnDel.Location = new System.Drawing.Point(93, 257);
+ this.btnDel.Name = "btnDel";
+ this.btnDel.Size = new System.Drawing.Size(75, 23);
+ this.btnDel.TabIndex = 3;
+ this.btnDel.Text = "Delete";
+ this.btnDel.UseVisualStyleBackColor = true;
+ this.btnDel.Click += new System.EventHandler(this.btnDel_Click);
+ //
+ // FirewallEditor
+ //
+ this.AcceptButton = this.btnDone;
+ this.AutoScaleDimensions = new System.Drawing.SizeF(8F, 16F);
+ this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+ this.ClientSize = new System.Drawing.Size(300, 285);
+ this.Controls.Add(this.btnDel);
+ this.Controls.Add(this.btnDone);
+ this.Controls.Add(this.btnNew);
+ this.Controls.Add(this.lbRules);
+ this.Name = "FirewallEditor";
+ this.Text = "FirewallEditor";
+ this.ResumeLayout(false);
+
+ }
+
+ #endregion
+
+ private System.Windows.Forms.ListBox lbRules;
+ private System.Windows.Forms.Button btnNew;
+ private System.Windows.Forms.Button btnDone;
+ private System.Windows.Forms.Button btnDel;
+ }
+}
\ No newline at end of file
diff --git a/EduNetworkBuilder/FirewallEditor.cs b/EduNetworkBuilder/FirewallEditor.cs
new file mode 100644
index 0000000..10ea049
--- /dev/null
+++ b/EduNetworkBuilder/FirewallEditor.cs
@@ -0,0 +1,52 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Data;
+using System.Drawing;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using System.Windows.Forms;
+
+namespace EduNetworkBuilder
+{
+
+ public class FirewallRule
+ {
+ public string Source;
+ public string Destination;
+ public FirewallRuleType Action;
+ }
+
+ public partial class FirewallEditor : Form
+ {
+ public FirewallEditor()
+ {
+ InitializeComponent();
+ UpdateForm();
+ }
+
+ void UpdateForm()
+ {
+ if (lbRules.SelectedIndex > 0)
+ btnDel.Visible = true;
+ else
+ btnDel.Visible = false;
+ }
+
+ private void btnNew_Click(object sender, EventArgs e)
+ {
+
+ }
+
+ private void btnDel_Click(object sender, EventArgs e)
+ {
+
+ }
+
+ private void btnDone_Click(object sender, EventArgs e)
+ {
+
+ }
+ }
+}
diff --git a/EduNetworkBuilder/NB.cs b/EduNetworkBuilder/NB.cs
index 5740ddb..a953e05 100644
--- a/EduNetworkBuilder/NB.cs
+++ b/EduNetworkBuilder/NB.cs
@@ -55,6 +55,7 @@ namespace EduNetworkBuilder
Network, Packet, NIC, Interface, Router, PacketCorruption, GeneralWireless, WirelessSSID, WirelessKey,
WirelessAP, WirelessRouter, WirelessRepeater, WirelessBridge, VLAN
}
+ public enum FirewallRuleType { Allow, Drop }
public enum PuzzleNames
{
Level0_IP, Level1_NoGateway, Level0_NeedsLink, Level0_NoSwitch, Level1_BadDHCP, Level1_BadGateway,
@@ -71,8 +72,9 @@ namespace EduNetworkBuilder
Level4_InternalSubnetting, Level4_Internalhemorrhage,
Level5_WirelessRouters, Level5_WirelessDevices, Level5_WirelessBridge, Level5_WirelessRepeater, Level5_WirelessRepeater2,
Level5_WirelessAccessPoint, Level5_WirelessCorruption, Level5_Failed, Level5_LostPacket, Level5_HereComesTrouble,
- Level6_VLAN_Intro, Level6_VLAN_Intro2, Level6_ForbiddenVLAN, Level6_TaggedBetweenSwitches, Level6_VLANRouting,
- Level6_VLANRouting2, level6_UntaggedAndDHCP, Level6_SorryBoss, Level6_VLANFrustrations,
+ Level6_VLAN_Intro, Level6_VLAN_Intro2, Level6_Intro3_LockedOut, Level6_ForbiddenVLAN, Level6_TaggedBetweenSwitches,
+ Level6_VLANRouting, Level6_VLANRouting2, level6_UntaggedAndDHCP, Level6_SorryBoss, Level6_VLANFrustrations,
+ Level6_TwoAccessPoints,
}
public enum DebugPausePoint { none=0, packet_create=1, packet_kill=2,
diff --git a/EduNetworkBuilder/Network.cs b/EduNetworkBuilder/Network.cs
index b2536b0..462d6f5 100644
--- a/EduNetworkBuilder/Network.cs
+++ b/EduNetworkBuilder/Network.cs
@@ -28,6 +28,7 @@ namespace EduNetworkBuilder
public bool ShowLabelsHere = false;
public bool VLANsEnabled = false;
public bool VLANPacketColors = false;
+ public bool FirewallEnabled = false;
public LanguageStrings NetMessage;
public LanguageStrings NetTitle;
List NetComponents = new List();
@@ -137,6 +138,9 @@ namespace EduNetworkBuilder
case "vlansenabled":
bool.TryParse(Individual.InnerText, out VLANsEnabled);
break;
+ case "firewallenabled":
+ bool.TryParse(Individual.InnerText, out FirewallEnabled);
+ break;
case "vlanpacketcolors":
bool.TryParse(Individual.InnerText, out VLANPacketColors);
if (VLANPacketColors)
@@ -288,6 +292,7 @@ namespace EduNetworkBuilder
writer.WriteElementString("uniqueidentifier", UniqueIdentifier.ToString());
writer.WriteElementString("startinghelplevel", StartingHelpLevel.ToString());
writer.WriteElementString("vlansenabled", VLANsEnabled.ToString());
+ writer.WriteElementString("firewallenabled", FirewallEnabled.ToString());
writer.WriteElementString("VLANPacketColors", VLANPacketColors.ToString());
//Save all the devices
for (int loop = 0; loop < NetComponents.Count; loop++)
diff --git a/EduNetworkBuilder/NetworkBuilder.cs b/EduNetworkBuilder/NetworkBuilder.cs
index db02317..3993cae 100644
--- a/EduNetworkBuilder/NetworkBuilder.cs
+++ b/EduNetworkBuilder/NetworkBuilder.cs
@@ -966,7 +966,10 @@ namespace EduNetworkBuilder
string newtooltip = "";
if (MouseOver != null)
{
- newtooltip = MouseOver.TooltipString();
+ if (!MouseOver.DeviceIsLockedOutByVLANs())
+ newtooltip = MouseOver.TooltipString();
+ else
+ newtooltip = NB.Translate("NB_LockedOut");
}
if(oldtooltip != newtooltip)
{
diff --git a/EduNetworkBuilder/NetworkDevice.cs b/EduNetworkBuilder/NetworkDevice.cs
index f7cd03d..09c74f6 100644
--- a/EduNetworkBuilder/NetworkDevice.cs
+++ b/EduNetworkBuilder/NetworkDevice.cs
@@ -33,6 +33,7 @@ namespace EduNetworkBuilder
public bool CanAddNics = false;
public Color BackgroundColor = Color.Empty;
protected Color MorphColor = Color.Empty;
+ protected List FirewallRules = new List();
public NetworkDevice(NetworkComponentType what, string tHostname, Point tLocation, NicType firstNic = NicType.eth)
{
@@ -1148,6 +1149,13 @@ namespace EduNetworkBuilder
return false;
}
+ public bool CanBeLockedOut()
+ {
+ if (myType == NetworkComponentType.net_switch) return true;
+ //if (myType == NetworkComponentType.wrouter) return true;
+ return false;
+ }
+
public bool DoesForwarding()
{
if (myType == NetworkComponentType.net_hub)
@@ -1165,12 +1173,21 @@ namespace EduNetworkBuilder
return false;
}
+ public bool DoesFirewall()
+ {
+ if (myType == NetworkComponentType.firewall)
+ return true;
+ if (myType == NetworkComponentType.wrouter)
+ return true;
+ return false;
+ }
+
public bool DoesVLANs()
{
if (myType == NetworkComponentType.net_switch)
return true;
- if (myType == NetworkComponentType.wrouter)
- return true;
+ //if (myType == NetworkComponentType.wrouter)
+ // return true;
if (myType == NetworkComponentType.firewall)
return true;
if (myType == NetworkComponentType.router)
@@ -1303,7 +1320,7 @@ namespace EduNetworkBuilder
{
bool typesMatch=false;
if (tPacket.sourceIP == null) return ResponseToPacket.reject;
- if (tPacket.TsourceIP != null && !tPacket.TsourceIP.IsLocal(tPacket.destIP)) return ResponseToPacket.none;
+ if (tPacket.TsourceIP != null && !tPacket.TsourceIP.IsLocal(tPacket.destIP) && !HasBroadcastAddress(tPacket.destIP)) return ResponseToPacket.none;
foreach(IPConnectionEntry ipc in IPConnections)
{
if(ipc.What == PacketType.dhcp_request)
@@ -1650,7 +1667,7 @@ namespace EduNetworkBuilder
//We would be responding to it. We have an odd case for switches.
//Verify that the management IP can talk to the packet
- if(myType == NetworkComponentType.net_switch || myType == NetworkComponentType.wrouter)
+ if(CanBeLockedOut())
{
//only a few devices have management ips
NetworkCard nic = HubManagementCard();
@@ -1986,7 +2003,7 @@ namespace EduNetworkBuilder
public bool DeviceIsLockedOutByVLANs()
{
- if (myType != NetworkComponentType.net_switch && myType != NetworkComponentType.wrouter)
+ if (!CanBeLockedOut())
return false; //We can only be locked out of a few things.
NetworkCard nic = HubManagementCard();
if (nic == null) return false; //this should never happen. Eject for now.
diff --git a/EduNetworkBuilder/OptionsWindow.Designer.cs b/EduNetworkBuilder/OptionsWindow.Designer.cs
index 7157a9c..fe59a4d 100644
--- a/EduNetworkBuilder/OptionsWindow.Designer.cs
+++ b/EduNetworkBuilder/OptionsWindow.Designer.cs
@@ -51,6 +51,7 @@
this.lblStartingHelp = new System.Windows.Forms.Label();
this.cbVLANs = new System.Windows.Forms.CheckBox();
this.cb_ColoredPackets = new System.Windows.Forms.CheckBox();
+ this.cbFirewallEnabled = new System.Windows.Forms.CheckBox();
this.SuspendLayout();
//
// btnDone
@@ -240,7 +241,7 @@
// cbVLANs
//
this.cbVLANs.AutoSize = true;
- this.cbVLANs.Location = new System.Drawing.Point(519, 247);
+ this.cbVLANs.Location = new System.Drawing.Point(519, 221);
this.cbVLANs.Name = "cbVLANs";
this.cbVLANs.Size = new System.Drawing.Size(129, 21);
this.cbVLANs.TabIndex = 21;
@@ -251,19 +252,31 @@
// cb_ColoredPackets
//
this.cb_ColoredPackets.AutoSize = true;
- this.cb_ColoredPackets.Location = new System.Drawing.Point(519, 274);
+ this.cb_ColoredPackets.Location = new System.Drawing.Point(519, 248);
this.cb_ColoredPackets.Name = "cb_ColoredPackets";
this.cb_ColoredPackets.Size = new System.Drawing.Size(173, 21);
this.cb_ColoredPackets.TabIndex = 22;
this.cb_ColoredPackets.Text = "VLAN Colored Packets";
this.cb_ColoredPackets.UseVisualStyleBackColor = true;
//
+ // cbFirewallEnabled
+ //
+ this.cbFirewallEnabled.AutoSize = true;
+ this.cbFirewallEnabled.Location = new System.Drawing.Point(518, 276);
+ this.cbFirewallEnabled.Name = "cbFirewallEnabled";
+ this.cbFirewallEnabled.RightToLeft = System.Windows.Forms.RightToLeft.No;
+ this.cbFirewallEnabled.Size = new System.Drawing.Size(165, 21);
+ this.cbFirewallEnabled.TabIndex = 23;
+ this.cbFirewallEnabled.Text = "Adv. Firewall Enabled";
+ this.cbFirewallEnabled.UseVisualStyleBackColor = true;
+ //
// OptionsWindow
//
this.AcceptButton = this.btnDone;
this.AutoScaleDimensions = new System.Drawing.SizeF(8F, 16F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(836, 307);
+ this.Controls.Add(this.cbFirewallEnabled);
this.Controls.Add(this.cb_ColoredPackets);
this.Controls.Add(this.cbVLANs);
this.Controls.Add(this.lblStartingHelp);
@@ -319,5 +332,6 @@
private System.Windows.Forms.Label lblStartingHelp;
private System.Windows.Forms.CheckBox cbVLANs;
private System.Windows.Forms.CheckBox cb_ColoredPackets;
+ private System.Windows.Forms.CheckBox cbFirewallEnabled;
}
}
\ No newline at end of file
diff --git a/EduNetworkBuilder/OptionsWindow.cs b/EduNetworkBuilder/OptionsWindow.cs
index 6b64f81..b51030d 100644
--- a/EduNetworkBuilder/OptionsWindow.cs
+++ b/EduNetworkBuilder/OptionsWindow.cs
@@ -76,6 +76,7 @@ namespace EduNetworkBuilder
tbNetworkTitle.Text = myNet.NetTitle.GetText();
cbDisplayTitles.Checked = myNet.OptionShowLabels;
cbVLANs.Checked = myNet.VLANsEnabled;
+ cbFirewallEnabled.Checked = myNet.FirewallEnabled;
cb_ColoredPackets.Checked = myNet.VLANPacketColors;
tbNetworkX.Text = myNet.myWidth.ToString();
tbNetworkY.Text = myNet.myHeight.ToString();
@@ -115,6 +116,7 @@ namespace EduNetworkBuilder
myNet.OptionShowLabels = cbDisplayTitles.Checked;
myNet.VLANsEnabled = cbVLANs.Checked;
myNet.VLANPacketColors = cb_ColoredPackets.Checked;
+ myNet.FirewallEnabled = cbFirewallEnabled.Checked;
myNet.ShowLabelsHere = myNet.OptionShowLabels;
int.TryParse(tbNetworkX.Text, out myNet.myWidth);
int.TryParse(tbNetworkY.Text, out myNet.myHeight);
diff --git a/EduNetworkBuilder/Properties/Resources.Designer.cs b/EduNetworkBuilder/Properties/Resources.Designer.cs
index 1aa3c78..71df1c8 100644
--- a/EduNetworkBuilder/Properties/Resources.Designer.cs
+++ b/EduNetworkBuilder/Properties/Resources.Designer.cs
@@ -782,6 +782,16 @@ namespace EduNetworkBuilder.Properties {
}
}
+ ///
+ /// Looks up a localized resource of type System.Byte[].
+ ///
+ internal static byte[] Level6_Intro3_LockedOut {
+ get {
+ object obj = ResourceManager.GetObject("Level6_Intro3_LockedOut", resourceCulture);
+ return ((byte[])(obj));
+ }
+ }
+
///
/// Looks up a localized resource of type System.Byte[].
///
@@ -802,6 +812,16 @@ namespace EduNetworkBuilder.Properties {
}
}
+ ///
+ /// Looks up a localized resource of type System.Byte[].
+ ///
+ internal static byte[] Level6_TwoAccessPoints {
+ get {
+ object obj = ResourceManager.GetObject("Level6_TwoAccessPoints", resourceCulture);
+ return ((byte[])(obj));
+ }
+ }
+
///
/// Looks up a localized resource of type System.Byte[].
///
diff --git a/EduNetworkBuilder/Properties/Resources.resx b/EduNetworkBuilder/Properties/Resources.resx
index dc493c7..3e115cf 100644
--- a/EduNetworkBuilder/Properties/Resources.resx
+++ b/EduNetworkBuilder/Properties/Resources.resx
@@ -421,4 +421,10 @@
..\Resources\Level6_VLANFrustrations.enbx;System.Byte[], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+ ..\Resources\Level6_Intro3_LockedOut.enbx;System.Byte[], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ ..\Resources\Level6_TwoAccessPoints.enbx;System.Byte[], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
\ No newline at end of file
diff --git a/EduNetworkBuilder/Resources/Level6_ForbiddenVLAN.enbx b/EduNetworkBuilder/Resources/Level6_ForbiddenVLAN.enbx
index ae2a2ea..44f0390 100644
--- a/EduNetworkBuilder/Resources/Level6_ForbiddenVLAN.enbx
+++ b/EduNetworkBuilder/Resources/Level6_ForbiddenVLAN.enbx
@@ -2,7 +2,7 @@
- Vlans are managed by double-clicking the networking device (the switch, for this puzzle), and clicking on the VLANs button. A VLAN has three states, tagged, untagged, and forbidden. Forbidden means it does not work. To fix this puzzle, change the switch VLAN ports to "untagged" for all of the, and then ping the other PC
+ Vlans are managed by double-clicking the networking device (the switch, for this puzzle), and clicking on the VLANs button. A VLAN has three states, tagged, untagged, and forbidden. Forbidden means it does not work. To fix this puzzle, change the switch VLAN ports to "untagged" for all of the ports, and then ping the other PC
Forbidden VLANs
1024
1024
@@ -392,7 +392,7 @@
ip
Forbidden
+ ID="1">Untagged
diff --git a/EduNetworkBuilder/Resources/Level6_Intro3_LockedOut.enbx b/EduNetworkBuilder/Resources/Level6_Intro3_LockedOut.enbx
new file mode 100644
index 0000000..6814680
--- /dev/null
+++ b/EduNetworkBuilder/Resources/Level6_Intro3_LockedOut.enbx
@@ -0,0 +1,1042 @@
+
+
+
+
+ By default, switches are managed using the "Management Interface" IP Address. Most managed switches have a "Management VLAN" that you can communicate with the Management IP on. When that IP address is not accessible, you are locked out of the switch. You can also lock yourself out by forgetting the password, or forgetting the IP address.
+
+In EduNetworkBuilder, the only real way to lock yourself out is by setting all the VLANs on the management interface to "forbidden", or, if you "firbid" the vlan that the management interface uses.
+
+This puzzle has one switch that you have been locked out of. Reset it. Then, you need to set the trunk-port (port1) to tagged for both vlans, and set the port that pc2 is on to be on vlan 2.
+ VLAN Intro 3 Locked Out
+ 1024
+ 1024
+ 100
+ True
+ 6
+ 0.7
+ 145
+ full
+ True
+ False
+
+ net_switch0
+ 100
+ 100
+ 240,390
+ net_switch
+ False
+ False
+
+ 0.0.0.0
+ 0.0.0.0
+ 0.0.0.0
+ gw
+
+
+ lo
+ lo0
+
+ 100
+ 101
+ net_switch0
+ lo0
+
+ lo
+ 101
+ False
+
+ lo0
+
+ 127.0.0.1
+ 255.0.0.0
+ 0.0.0.0
+ ip
+
+ Untagged
+
+
+
+ management_interface
+ management_interface0
+
+ 100
+ 102
+ net_switch0
+ management_interface0
+
+ management_interface
+ 102
+ False
+
+ management_interface0
+
+ 0.0.0.0
+ 0.0.0.0
+ 0.0.0.0
+ ip
+
+ Forbidden
+
+
+
+ port
+ port1
+
+ 100
+ 103
+ net_switch0
+ port1
+
+ port
+ 103
+ False
+
+ port1
+
+ 0.0.0.0
+ 0.0.0.0
+ 0.0.0.0
+ ip
+
+ Tagged
+ Tagged
+
+
+
+ port
+ port2
+
+ 100
+ 104
+ net_switch0
+ port2
+
+ port
+ 104
+ False
+
+ port2
+
+ 0.0.0.0
+ 0.0.0.0
+ 0.0.0.0
+ ip
+
+ Untagged
+ Forbidden
+
+
+
+ port
+ port3
+
+ 100
+ 105
+ net_switch0
+ port3
+
+ port
+ 105
+ False
+
+ port3
+
+ 0.0.0.0
+ 0.0.0.0
+ 0.0.0.0
+ ip
+
+ Untagged
+ Forbidden
+
+
+
+ port
+ port4
+
+ 100
+ 106
+ net_switch0
+ port4
+
+ port
+ 106
+ False
+
+ port4
+
+ 0.0.0.0
+ 0.0.0.0
+ 0.0.0.0
+ ip
+
+ Forbidden
+ Forbidden
+
+
+
+ port
+ port5
+
+ 100
+ 107
+ net_switch0
+ port5
+
+ port
+ 107
+ False
+
+ port5
+
+ 0.0.0.0
+ 0.0.0.0
+ 0.0.0.0
+ ip
+
+ Forbidden
+ Forbidden
+
+
+
+ port
+ port6
+
+ 100
+ 108
+ net_switch0
+ port6
+
+ port
+ 108
+ False
+
+ port6
+
+ 0.0.0.0
+ 0.0.0.0
+ 0.0.0.0
+ ip
+
+ Forbidden
+ Forbidden
+
+
+
+ port
+ port7
+
+ 100
+ 109
+ net_switch0
+ port7
+
+ port
+ 109
+ False
+
+ port7
+
+ 0.0.0.0
+ 0.0.0.0
+ 0.0.0.0
+ ip
+
+ Forbidden
+ Untagged
+
+
+
+
+ net_switch1
+ 100
+ 110
+ 660,390
+ net_switch
+ False
+ False
+
+ 0.0.0.0
+ 0.0.0.0
+ 0.0.0.0
+ gw
+
+
+ lo
+ lo0
+
+ 110
+ 111
+ net_switch1
+ lo0
+
+ lo
+ 111
+ False
+
+ lo0
+
+ 127.0.0.1
+ 255.0.0.0
+ 0.0.0.0
+ ip
+
+ Untagged
+
+
+
+ management_interface
+ management_interface0
+
+ 110
+ 112
+ net_switch1
+ management_interface0
+
+ management_interface
+ 112
+ False
+
+ management_interface0
+
+ 0.0.0.0
+ 0.0.0.0
+ 0.0.0.0
+ ip
+
+ Untagged
+
+
+
+ port
+ port1
+
+ 110
+ 113
+ net_switch1
+ port1
+
+ port
+ 113
+ False
+
+ port1
+
+ 0.0.0.0
+ 0.0.0.0
+ 0.0.0.0
+ ip
+
+ Tagged
+ Tagged
+
+
+
+ port
+ port2
+
+ 110
+ 114
+ net_switch1
+ port2
+
+ port
+ 114
+ False
+
+ port2
+
+ 0.0.0.0
+ 0.0.0.0
+ 0.0.0.0
+ ip
+
+ Forbidden
+ Untagged
+
+
+
+ port
+ port3
+
+ 110
+ 115
+ net_switch1
+ port3
+
+ port
+ 115
+ False
+
+ port3
+
+ 0.0.0.0
+ 0.0.0.0
+ 0.0.0.0
+ ip
+
+ Forbidden
+ Untagged
+
+
+
+ port
+ port4
+
+ 110
+ 116
+ net_switch1
+ port4
+
+ port
+ 116
+ False
+
+ port4
+
+ 0.0.0.0
+ 0.0.0.0
+ 0.0.0.0
+ ip
+
+ Untagged
+ Forbidden
+
+
+
+ port
+ port5
+
+ 110
+ 117
+ net_switch1
+ port5
+
+ port
+ 117
+ False
+
+ port5
+
+ 0.0.0.0
+ 0.0.0.0
+ 0.0.0.0
+ ip
+
+ Forbidden
+ Forbidden
+
+
+
+ port
+ port6
+
+ 110
+ 118
+ net_switch1
+ port6
+
+ port
+ 118
+ False
+
+ port6
+
+ 0.0.0.0
+ 0.0.0.0
+ 0.0.0.0
+ ip
+
+ Forbidden
+ Forbidden
+
+
+
+ port
+ port7
+
+ 110
+ 119
+ net_switch1
+ port7
+
+ port
+ 119
+ False
+
+ port7
+
+ 0.0.0.0
+ 0.0.0.0
+ 0.0.0.0
+ ip
+
+ Forbidden
+ Forbidden
+
+
+
+
+ pc0
+ 100
+ 121
+ 100,640
+ pc
+ False
+ False
+ Yellow
+
+ 0.0.0.0
+ 0.0.0.0
+ 0.0.0.0
+ gw
+
+
+ lo
+ lo0
+
+ 121
+ 122
+ pc0
+ lo0
+
+ lo
+ 122
+ False
+
+ lo0
+
+ 127.0.0.1
+ 255.0.0.0
+ 0.0.0.0
+ ip
+
+ Untagged
+
+
+
+ eth
+ eth0
+
+ 121
+ 123
+ pc0
+ eth0
+
+ eth
+ 123
+ False
+
+ eth0
+
+ 192.168.1.1
+ 255.255.255.0
+ 0.0.0.0
+ ip
+
+ Untagged
+
+
+
+
+ pc1
+ 100
+ 124
+ 240,640
+ pc
+ False
+ False
+ Yellow
+
+ 0.0.0.0
+ 0.0.0.0
+ 0.0.0.0
+ gw
+
+
+ lo
+ lo0
+
+ 124
+ 125
+ pc1
+ lo0
+
+ lo
+ 125
+ False
+
+ lo0
+
+ 127.0.0.1
+ 255.0.0.0
+ 0.0.0.0
+ ip
+
+ Untagged
+
+
+
+ eth
+ eth0
+
+ 124
+ 126
+ pc1
+ eth0
+
+ eth
+ 126
+ False
+
+ eth0
+
+ 192.168.1.2
+ 255.255.255.0
+ 0.0.0.0
+ ip
+
+ Untagged
+
+
+
+
+ pc2
+ 100
+ 127
+ 380,640
+ pc
+ False
+ False
+ Green
+
+ 0.0.0.0
+ 0.0.0.0
+ 0.0.0.0
+ gw
+
+
+ lo
+ lo0
+
+ 127
+ 128
+ pc2
+ lo0
+
+ lo
+ 128
+ False
+
+ lo0
+
+ 127.0.0.1
+ 255.0.0.0
+ 0.0.0.0
+ ip
+
+ Untagged
+
+
+
+ eth
+ eth0
+
+ 127
+ 129
+ pc2
+ eth0
+
+ eth
+ 129
+ False
+
+ eth0
+
+ 192.168.1.3
+ 255.255.255.0
+ 0.0.0.0
+ ip
+
+ Untagged
+
+
+
+
+ pc3
+ 100
+ 130
+ 580,640
+ pc
+ False
+ False
+ Green
+
+ 0.0.0.0
+ 0.0.0.0
+ 0.0.0.0
+ gw
+
+
+ lo
+ lo0
+
+ 130
+ 131
+ pc3
+ lo0
+
+ lo
+ 131
+ False
+
+ lo0
+
+ 127.0.0.1
+ 255.0.0.0
+ 0.0.0.0
+ ip
+
+ Untagged
+
+
+
+ eth
+ eth0
+
+ 130
+ 132
+ pc3
+ eth0
+
+ eth
+ 132
+ False
+
+ eth0
+
+ 192.168.1.4
+ 255.255.255.0
+ 0.0.0.0
+ ip
+
+ Untagged
+
+
+
+
+ pc4
+ 100
+ 133
+ 750,640
+ pc
+ False
+ False
+ Green
+
+ 0.0.0.0
+ 0.0.0.0
+ 0.0.0.0
+ gw
+
+
+ lo
+ lo0
+
+ 133
+ 134
+ pc4
+ lo0
+
+ lo
+ 134
+ False
+
+ lo0
+
+ 127.0.0.1
+ 255.0.0.0
+ 0.0.0.0
+ ip
+
+ Untagged
+
+
+
+ eth
+ eth0
+
+ 133
+ 135
+ pc4
+ eth0
+
+ eth
+ 135
+ False
+
+ eth0
+
+ 192.168.1.5
+ 255.255.255.0
+ 0.0.0.0
+ ip
+
+ Untagged
+
+
+
+
+ pc5
+ 100
+ 136
+ 870,640
+ pc
+ False
+ False
+ Yellow
+
+ 0.0.0.0
+ 0.0.0.0
+ 0.0.0.0
+ gw
+
+
+ lo
+ lo0
+
+ 136
+ 137
+ pc5
+ lo0
+
+ lo
+ 137
+ False
+
+ lo0
+
+ 127.0.0.1
+ 255.0.0.0
+ 0.0.0.0
+ ip
+
+ Untagged
+
+
+
+ eth
+ eth0
+
+ 136
+ 138
+ pc5
+ eth0
+
+ eth
+ 138
+ False
+
+ eth0
+
+ 192.168.1.6
+ 255.255.255.0
+ 0.0.0.0
+ ip
+
+ Untagged
+
+
+
+
+
+ 100
+ 103
+ net_switch0
+ port1
+
+
+ 110
+ 113
+ net_switch1
+ port1
+
+
+ normal
+ 120
+
+
+
+ 121
+ 123
+ pc0
+ eth0
+
+
+ 100
+ 104
+ net_switch0
+ port2
+
+
+ normal
+ 139
+
+
+
+ 124
+ 126
+ pc1
+ eth0
+
+
+ 100
+ 105
+ net_switch0
+ port3
+
+
+ normal
+ 140
+
+
+
+ 127
+ 129
+ pc2
+ eth0
+
+
+ 100
+ 109
+ net_switch0
+ port7
+
+
+ normal
+ 141
+
+
+
+ 130
+ 132
+ pc3
+ eth0
+
+
+ 110
+ 114
+ net_switch1
+ port2
+
+
+ normal
+ 142
+
+
+
+ 133
+ 135
+ pc4
+ eth0
+
+
+ 110
+ 115
+ net_switch1
+ port3
+
+
+ normal
+ 143
+
+
+
+ 136
+ 138
+ pc5
+ eth0
+
+
+ 110
+ 116
+ net_switch1
+ port4
+
+
+ normal
+ 144
+
+
+ pc0
+ pc1
+ SuccessfullyPings
+
+
+ pc2
+ pc3
+ SuccessfullyPings
+
+
+ pc2
+ 192.168.1.255
+ SuccessfullyPings
+
+
+ net_switch1
+ All
+ LockVLANsOnHost
+
+ VLAN
+ Default
+ Sttaff
+
+
\ No newline at end of file
diff --git a/EduNetworkBuilder/Resources/Level6_TwoAccessPoints.enbx b/EduNetworkBuilder/Resources/Level6_TwoAccessPoints.enbx
new file mode 100644
index 0000000..4208837
--- /dev/null
+++ b/EduNetworkBuilder/Resources/Level6_TwoAccessPoints.enbx
@@ -0,0 +1,2153 @@
+
+
+
+
+ A staff memner brought in a laptop and they have problems. As always, they want you to fix it.
+Some vlan issues are a lot simpler than they originally look.
+ A Tale of Two Access Points
+ 1024
+ 1024
+ 100
+ True
+ 6
+ 9
+ 202
+ full
+ True
+ True
+
+ firewall0
+ 100
+ 148
+ 450,170
+ firewall
+ False
+ True
+
+ 10.0.0.1
+ 0.0.0.0
+ 0.0.0.0
+ gw
+
+
+ lo
+ lo0
+
+ 148
+ 149
+ firewall0
+ lo0
+
+ lo
+ 149
+ False
+
+ lo0
+
+ 127.0.0.1
+ 255.0.0.0
+ 0.0.0.0
+ ip
+
+ Untagged
+
+
+
+ wan
+ wan0
+
+ 148
+ 152
+ firewall0
+ wan0
+
+ wan
+ 152
+ False
+
+ wan0
+
+ 10.0.0.2
+ 255.255.255.0
+ 0.0.0.0
+ ip
+
+ Untagged
+
+
+
+ eth
+ eth0
+
+ 148
+ 150
+ firewall0
+ eth0
+
+ eth
+ 150
+ False
+
+ eth0
+
+ 192.168.1.1
+ 255.255.255.0
+ 0.0.0.0
+ ip
+
+ Tagged
+
+
+ eth0:1
+
+ 192.168.2.1
+ 255.255.255.0
+ 0.0.0.0
+ ip
+
+ Forbidden
+ Tagged
+
+
+ eth0:2
+
+ 192.168.3.1
+ 255.255.255.0
+ 0.0.0.0
+ ip
+
+ Forbidden
+ Tagged
+
+
+
+ eth
+ eth1
+
+ 148
+ 151
+ firewall0
+ eth1
+
+ eth
+ 151
+ False
+
+ eth1
+
+ 0.0.0.0
+ 0.0.0.0
+ 0.0.0.0
+ ip
+
+ Untagged
+
+
+
+ 127.0.0.1
+ 0.0.0.0
+ 0.0.0.0
+ route
+
+
+ 0.0.0.0
+ 0.0.0.0
+ 0.0.0.0
+ route
+
+
+ 192.168.1.1
+ 192.168.1.5
+ 192.168.1.10
+ route
+
+
+ 192.168.2.1
+ 192.168.2.5
+ 192.168.2.10
+ route
+
+
+ 192.168.3.1
+ 192.168.3.5
+ 192.168.3.10
+ route
+
+
+ 10.0.0.2
+ 0.0.0.0
+ 0.0.0.0
+ route
+
+
+
+ laptop0
+ 100
+ 195
+ 20,460
+ laptop
+ False
+ False
+
+ 0.0.0.0
+ 0.0.0.0
+ 0.0.0.0
+ gw
+
+
+ lo
+ lo0
+
+ 195
+ 196
+ laptop0
+ lo0
+
+ lo
+ 196
+ False
+
+
+
+ lo0
+
+ 127.0.0.1
+ 255.0.0.0
+ 0.0.0.0
+ ip
+
+ Untagged
+
+
+
+ wlan
+ wlan2
+
+ 195
+ 198
+ laptop0
+ wlan2
+
+ wlan
+ 198
+ True
+ TheKey
+ Students
+
+ wlan2
+
+ 192.168.2.5
+ 255.255.255.0
+ 192.168.2.1
+ route
+
+ Untagged
+
+
+
+
+ net_switch0
+ 100
+ 100
+ 250,450
+ net_switch
+ False
+ False
+
+ 192.168.1.1
+ 0.0.0.0
+ 0.0.0.0
+ gw
+
+
+ lo
+ lo0
+
+ 100
+ 101
+ net_switch0
+ lo0
+
+ lo
+ 101
+ False
+
+ lo0
+
+ 127.0.0.1
+ 255.0.0.0
+ 0.0.0.0
+ ip
+
+ Untagged
+
+
+
+ management_interface
+ management_interface0
+
+ 100
+ 102
+ net_switch0
+ management_interface0
+
+ management_interface
+ 102
+ False
+
+ management_interface0
+
+ 192.168.1.252
+ 255.255.255.0
+ 0.0.0.0
+ ip
+
+ Untagged
+
+
+
+ port
+ port1
+
+ 100
+ 103
+ net_switch0
+ port1
+
+ port
+ 103
+ False
+
+ port1
+
+ 0.0.0.0
+ 0.0.0.0
+ 0.0.0.0
+ ip
+
+ Untagged
+ Forbidden
+ Forbidden
+
+
+
+ port
+ port2
+
+ 100
+ 104
+ net_switch0
+ port2
+
+ port
+ 104
+ False
+
+ port2
+
+ 0.0.0.0
+ 0.0.0.0
+ 0.0.0.0
+ ip
+
+ Untagged
+ Forbidden
+ Forbidden
+
+
+
+ port
+ port3
+
+ 100
+ 105
+ net_switch0
+ port3
+
+ port
+ 105
+ False
+
+ port3
+
+ 0.0.0.0
+ 0.0.0.0
+ 0.0.0.0
+ ip
+
+ Forbidden
+ Untagged
+ Forbidden
+
+
+
+ port
+ port4
+
+ 100
+ 106
+ net_switch0
+ port4
+
+ port
+ 106
+ False
+
+ port4
+
+ 0.0.0.0
+ 0.0.0.0
+ 0.0.0.0
+ ip
+
+ Untagged
+ Forbidden
+ Forbidden
+
+
+
+ port
+ port5
+
+ 100
+ 107
+ net_switch0
+ port5
+
+ port
+ 107
+ False
+
+ port5
+
+ 0.0.0.0
+ 0.0.0.0
+ 0.0.0.0
+ ip
+
+ Forbidden
+ Forbidden
+ Untagged
+
+
+
+ port
+ port6
+
+ 100
+ 108
+ net_switch0
+ port6
+
+ port
+ 108
+ False
+
+ port6
+
+ 0.0.0.0
+ 0.0.0.0
+ 0.0.0.0
+ ip
+
+ Forbidden
+ Forbidden
+ Untagged
+
+
+
+ port
+ port7
+
+ 100
+ 109
+ net_switch0
+ port7
+
+ port
+ 109
+ False
+
+ port7
+
+ 0.0.0.0
+ 0.0.0.0
+ 0.0.0.0
+ ip
+
+ Tagged
+ Tagged
+ Tagged
+
+
+
+
+ net_switch1
+ 100
+ 110
+ 450,400
+ net_switch
+ False
+ False
+
+ 192.168.1.1
+ 0.0.0.0
+ 0.0.0.0
+ gw
+
+
+ lo
+ lo0
+
+ 110
+ 111
+ net_switch1
+ lo0
+
+ lo
+ 111
+ False
+
+ lo0
+
+ 127.0.0.1
+ 255.0.0.0
+ 0.0.0.0
+ ip
+
+ Untagged
+
+
+
+ management_interface
+ management_interface0
+
+ 110
+ 112
+ net_switch1
+ management_interface0
+
+ management_interface
+ 112
+ False
+
+ management_interface0
+
+ 192.168.1.251
+ 255.255.255.0
+ 0.0.0.0
+ ip
+
+ Untagged
+
+
+
+ port
+ port1
+
+ 110
+ 113
+ net_switch1
+ port1
+
+ port
+ 113
+ False
+
+ port1
+
+ 0.0.0.0
+ 0.0.0.0
+ 0.0.0.0
+ ip
+
+ Forbidden
+ Untagged
+ Forbidden
+
+
+
+ port
+ port2
+
+ 110
+ 114
+ net_switch1
+ port2
+
+ port
+ 114
+ False
+
+ port2
+
+ 0.0.0.0
+ 0.0.0.0
+ 0.0.0.0
+ ip
+
+ Forbidden
+ Untagged
+ Forbidden
+
+
+
+ port
+ port3
+
+ 110
+ 115
+ net_switch1
+ port3
+
+ port
+ 115
+ False
+
+ port3
+
+ 0.0.0.0
+ 0.0.0.0
+ 0.0.0.0
+ ip
+
+ Forbidden
+ Untagged
+ Forbidden
+
+
+
+ port
+ port4
+
+ 110
+ 116
+ net_switch1
+ port4
+
+ port
+ 116
+ False
+
+ port4
+
+ 0.0.0.0
+ 0.0.0.0
+ 0.0.0.0
+ ip
+
+ Forbidden
+ Untagged
+ Forbidden
+
+
+
+ port
+ port5
+
+ 110
+ 117
+ net_switch1
+ port5
+
+ port
+ 117
+ False
+
+ port5
+
+ 0.0.0.0
+ 0.0.0.0
+ 0.0.0.0
+ ip
+
+ Tagged
+ Tagged
+ Tagged
+
+
+
+ port
+ port6
+
+ 110
+ 118
+ net_switch1
+ port6
+
+ port
+ 118
+ False
+
+ port6
+
+ 0.0.0.0
+ 0.0.0.0
+ 0.0.0.0
+ ip
+
+ Tagged
+ Tagged
+ Tagged
+
+
+
+ port
+ port7
+
+ 110
+ 119
+ net_switch1
+ port7
+
+ port
+ 119
+ False
+
+ port7
+
+ 0.0.0.0
+ 0.0.0.0
+ 0.0.0.0
+ ip
+
+ Tagged
+ Tagged
+ Tagged
+
+
+
+
+ net_switch2
+ 100
+ 120
+ 690,430
+ net_switch
+ False
+ False
+
+ 192.168.1.1
+ 0.0.0.0
+ 0.0.0.0
+ gw
+
+
+ lo
+ lo0
+
+ 120
+ 121
+ net_switch2
+ lo0
+
+ lo
+ 121
+ False
+
+ lo0
+
+ 127.0.0.1
+ 255.0.0.0
+ 0.0.0.0
+ ip
+
+ Untagged
+
+
+
+ management_interface
+ management_interface0
+
+ 120
+ 122
+ net_switch2
+ management_interface0
+
+ management_interface
+ 122
+ False
+
+ management_interface0
+
+ 192.168.1.250
+ 255.255.255.0
+ 0.0.0.0
+ ip
+
+ Untagged
+
+
+
+ port
+ port1
+
+ 120
+ 123
+ net_switch2
+ port1
+
+ port
+ 123
+ False
+
+ port1
+
+ 0.0.0.0
+ 0.0.0.0
+ 0.0.0.0
+ ip
+
+ Forbidden
+ Untagged
+ Forbidden
+
+
+
+ port
+ port2
+
+ 120
+ 124
+ net_switch2
+ port2
+
+ port
+ 124
+ False
+
+ port2
+
+ 0.0.0.0
+ 0.0.0.0
+ 0.0.0.0
+ ip
+
+ Forbidden
+ Untagged
+ Forbidden
+
+
+
+ port
+ port3
+
+ 120
+ 125
+ net_switch2
+ port3
+
+ port
+ 125
+ False
+
+ port3
+
+ 0.0.0.0
+ 0.0.0.0
+ 0.0.0.0
+ ip
+
+ Forbidden
+ Untagged
+ Forbidden
+
+
+
+ port
+ port4
+
+ 120
+ 126
+ net_switch2
+ port4
+
+ port
+ 126
+ False
+
+ port4
+
+ 0.0.0.0
+ 0.0.0.0
+ 0.0.0.0
+ ip
+
+ Forbidden
+ Untagged
+ Forbidden
+
+
+
+ port
+ port5
+
+ 120
+ 127
+ net_switch2
+ port5
+
+ port
+ 127
+ False
+
+ port5
+
+ 0.0.0.0
+ 0.0.0.0
+ 0.0.0.0
+ ip
+
+ Tagged
+ Tagged
+ Tagged
+
+
+
+ port
+ port6
+
+ 120
+ 128
+ net_switch2
+ port6
+
+ port
+ 128
+ False
+
+ port6
+
+ 0.0.0.0
+ 0.0.0.0
+ 0.0.0.0
+ ip
+
+ Tagged
+ Tagged
+ Tagged
+
+
+
+ port
+ port7
+
+ 120
+ 129
+ net_switch2
+ port7
+
+ port
+ 129
+ False
+
+ port7
+
+ 0.0.0.0
+ 0.0.0.0
+ 0.0.0.0
+ ip
+
+ Tagged
+ Tagged
+ Tagged
+
+
+
+
+ pc2
+ 100
+ 136
+ 370,690
+ pc
+ False
+ False
+ Green
+
+ 192.168.2.1
+ 0.0.0.0
+ 0.0.0.0
+ gw
+
+
+ lo
+ lo0
+
+ 136
+ 137
+ pc2
+ lo0
+
+ lo
+ 137
+ False
+
+ lo0
+
+ 127.0.0.1
+ 255.0.0.0
+ 0.0.0.0
+ ip
+
+ Untagged
+
+
+
+ eth
+ eth0
+
+ 136
+ 138
+ pc2
+ eth0
+
+ eth
+ 138
+ False
+
+ eth0
+
+ 192.168.2.3
+ 255.255.255.0
+ 0.0.0.0
+ ip
+
+ Untagged
+
+
+
+
+ pc3
+ 100
+ 139
+ 510,820
+ pc
+ False
+ False
+ Green
+
+ 192.168.2.1
+ 0.0.0.0
+ 0.0.0.0
+ gw
+
+
+ lo
+ lo0
+
+ 139
+ 140
+ pc3
+ lo0
+
+ lo
+ 140
+ False
+
+ lo0
+
+ 127.0.0.1
+ 255.0.0.0
+ 0.0.0.0
+ ip
+
+ Untagged
+
+
+
+ eth
+ eth0
+
+ 139
+ 141
+ pc3
+ eth0
+
+ eth
+ 141
+ True
+
+ eth0
+
+ 0.0.0.0
+ 0.0.0.0
+ 0.0.0.0
+ ip
+
+ Untagged
+
+
+
+
+ pc4
+ 100
+ 142
+ 830,600
+ pc
+ False
+ False
+ Yellow
+
+ 192.168.3.1
+ 0.0.0.0
+ 0.0.0.0
+ gw
+
+
+ lo
+ lo0
+
+ 142
+ 143
+ pc4
+ lo0
+
+ lo
+ 143
+ False
+
+ lo0
+
+ 127.0.0.1
+ 255.0.0.0
+ 0.0.0.0
+ ip
+
+ Untagged
+
+
+
+ eth
+ eth0
+
+ 142
+ 144
+ pc4
+ eth0
+
+ eth
+ 144
+ False
+
+ eth0
+
+ 192.168.3.3
+ 255.255.255.0
+ 0.0.0.0
+ ip
+
+ Untagged
+
+
+
+
+ pc5
+ 100
+ 145
+ 820,770
+ pc
+ False
+ False
+ Yellow
+
+ 192.168.3.1
+ 0.0.0.0
+ 0.0.0.0
+ gw
+
+
+ lo
+ lo0
+
+ 145
+ 146
+ pc5
+ lo0
+
+ lo
+ 146
+ False
+
+ lo0
+
+ 127.0.0.1
+ 255.0.0.0
+ 0.0.0.0
+ ip
+
+ Untagged
+
+
+
+ eth
+ eth0
+
+ 145
+ 147
+ pc5
+ eth0
+
+ eth
+ 147
+ True
+
+ eth0
+
+ 0.0.0.0
+ 0.0.0.0
+ 0.0.0.0
+ ip
+
+ Untagged
+
+
+
+
+ pc6
+ 100
+ 166
+ 820,40
+ pc
+ False
+ False
+
+ 10.0.1.1
+ 0.0.0.0
+ 0.0.0.0
+ gw
+
+
+ lo
+ lo0
+
+ 166
+ 167
+ pc6
+ lo0
+
+ lo
+ 167
+ False
+
+
+
+ lo0
+
+ 127.0.0.1
+ 255.0.0.0
+ 0.0.0.0
+ ip
+
+ Untagged
+
+
+
+ eth
+ eth0
+
+ 166
+ 168
+ pc6
+ eth0
+
+ eth
+ 168
+ False
+
+
+
+ eth0
+
+ 10.0.1.2
+ 255.255.255.0
+ 0.0.0.0
+ ip
+
+ Untagged
+
+
+
+
+ router0
+ 100
+ 162
+ 570,40
+ router
+ False
+ False
+
+ 0.0.0.0
+ 0.0.0.0
+ 0.0.0.0
+ gw
+
+
+ lo
+ lo0
+
+ 162
+ 163
+ router0
+ lo0
+
+ lo
+ 163
+ False
+
+
+
+ lo0
+
+ 127.0.0.1
+ 255.0.0.0
+ 0.0.0.0
+ ip
+
+ Untagged
+
+
+
+ eth
+ eth0
+
+ 162
+ 164
+ router0
+ eth0
+
+ eth
+ 164
+ False
+
+
+
+ eth0
+
+ 10.0.0.1
+ 255.255.255.0
+ 0.0.0.0
+ ip
+
+ Untagged
+
+
+
+ eth
+ eth1
+
+ 162
+ 165
+ router0
+ eth1
+
+ eth
+ 165
+ False
+
+
+
+ eth1
+
+ 10.0.1.1
+ 255.255.255.0
+ 0.0.0.0
+ ip
+
+ Untagged
+
+
+
+ 192.168.3.0
+ 255.255.255.0
+ 10.0.0.2
+ route
+
+
+ 192.168.2.0
+ 255.255.255.0
+ 10.0.0.2
+ route
+
+
+ 192.168.1.0
+ 255.255.255.0
+ 10.0.0.2
+ route
+
+
+
+ wap0
+ 100
+ 171
+ 130,320
+ wap
+ False
+ False
+ Yellow
+
+ 192.168.3.1
+ 0.0.0.0
+ 0.0.0.0
+ gw
+
+
+ lo
+ lo0
+
+ 171
+ 174
+ wap0
+ lo0
+
+ lo
+ 174
+ False
+
+
+
+ lo0
+
+ 127.0.0.1
+ 255.0.0.0
+ 0.0.0.0
+ ip
+
+ Untagged
+
+
+
+ eth
+ eth1
+
+ 171
+ 175
+ wap0
+ eth1
+
+ eth
+ 175
+ False
+
+
+
+ eth1
+
+ 192.168.3.10
+ 255.255.255.0
+ 0.0.0.0
+ ip
+
+ Untagged
+
+
+
+ wport
+ wport2
+
+ 171
+ 176
+ wap0
+ wport2
+
+ wport
+ 176
+ False
+ TheKey
+ Students
+
+ wport2
+
+ 0.0.0.0
+ 0.0.0.0
+ 0.0.0.0
+ ip
+
+ Untagged
+
+
+
+ wport
+ wport3
+
+ 171
+ 177
+ wap0
+ wport3
+
+ wport
+ 177
+ False
+ TheKey
+ Students
+
+ wport3
+
+ 0.0.0.0
+ 0.0.0.0
+ 0.0.0.0
+ ip
+
+ Untagged
+
+
+
+ wport
+ wport4
+
+ 171
+ 178
+ wap0
+ wport4
+
+ wport
+ 178
+ False
+ TheKey
+ Students
+
+ wport4
+
+ 0.0.0.0
+ 0.0.0.0
+ 0.0.0.0
+ ip
+
+ Untagged
+
+
+
+ wport
+ wport5
+
+ 171
+ 179
+ wap0
+ wport5
+
+ wport
+ 179
+ False
+ TheKey
+ Students
+
+ wport5
+
+ 0.0.0.0
+ 0.0.0.0
+ 0.0.0.0
+ ip
+
+ Untagged
+
+
+
+ wport
+ wport6
+
+ 171
+ 180
+ wap0
+ wport6
+
+ wport
+ 180
+ False
+ TheKey
+ Students
+
+ wport6
+
+ 0.0.0.0
+ 0.0.0.0
+ 0.0.0.0
+ ip
+
+ Untagged
+
+
+
+ wport
+ wport7
+
+ 171
+ 181
+ wap0
+ wport7
+
+ wport
+ 181
+ False
+ TheKey
+ Students
+
+ wport7
+
+ 0.0.0.0
+ 0.0.0.0
+ 0.0.0.0
+ ip
+
+ Untagged
+
+
+
+
+ wap1
+ 100
+ 182
+ 140,600
+ wap
+ False
+ False
+ Green
+
+ 192.168.2.1
+ 0.0.0.0
+ 0.0.0.0
+ gw
+
+
+ lo
+ lo0
+
+ 182
+ 185
+ wap1
+ lo0
+
+ lo
+ 185
+ False
+
+
+
+ lo0
+
+ 127.0.0.1
+ 255.0.0.0
+ 0.0.0.0
+ ip
+
+ Untagged
+
+
+
+ eth
+ eth1
+
+ 182
+ 186
+ wap1
+ eth1
+
+ eth
+ 186
+ False
+
+
+
+ eth1
+
+ 192.168.2.10
+ 255.255.255.0
+ 0.0.0.0
+ ip
+
+ Untagged
+
+
+
+ wport
+ wport2
+
+ 182
+ 187
+ wap1
+ wport2
+
+ wport
+ 187
+ False
+ OtherKey
+ Staff
+
+ wport2
+
+ 0.0.0.0
+ 0.0.0.0
+ 0.0.0.0
+ ip
+
+ Untagged
+
+
+
+ wport
+ wport3
+
+ 182
+ 188
+ wap1
+ wport3
+
+ wport
+ 188
+ False
+ OtherKey
+ Staff
+
+ wport3
+
+ 0.0.0.0
+ 0.0.0.0
+ 0.0.0.0
+ ip
+
+ Untagged
+
+
+
+ wport
+ wport4
+
+ 182
+ 189
+ wap1
+ wport4
+
+ wport
+ 189
+ False
+ OtherKey
+ Staff
+
+ wport4
+
+ 0.0.0.0
+ 0.0.0.0
+ 0.0.0.0
+ ip
+
+ Untagged
+
+
+
+ wport
+ wport5
+
+ 182
+ 190
+ wap1
+ wport5
+
+ wport
+ 190
+ False
+ OtherKey
+ Staff
+
+ wport5
+
+ 0.0.0.0
+ 0.0.0.0
+ 0.0.0.0
+ ip
+
+ Untagged
+
+
+
+ wport
+ wport6
+
+ 182
+ 191
+ wap1
+ wport6
+
+ wport
+ 191
+ False
+ OtherKey
+ Staff
+
+ wport6
+
+ 0.0.0.0
+ 0.0.0.0
+ 0.0.0.0
+ ip
+
+ Untagged
+
+
+
+ wport
+ wport7
+
+ 182
+ 192
+ wap1
+ wport7
+
+ wport
+ 192
+ False
+ OtherKey
+ Staff
+
+ wport7
+
+ 0.0.0.0
+ 0.0.0.0
+ 0.0.0.0
+ ip
+
+ Untagged
+
+
+
+
+
+ 100
+ 109
+ net_switch0
+ port7
+
+
+ 110
+ 118
+ net_switch1
+ port6
+
+
+ normal
+ 153
+
+
+
+ 182
+ 186
+ wap1
+ eth1
+
+
+ 100
+ 108
+ net_switch0
+ port6
+
+
+ normal
+ 193
+
+
+
+ 145
+ 147
+ pc5
+ eth0
+
+
+ 120
+ 123
+ net_switch2
+ port1
+
+
+ normal
+ 159
+
+
+
+ 139
+ 141
+ pc3
+ eth0
+
+
+ 110
+ 114
+ net_switch1
+ port2
+
+
+ normal
+ 158
+
+
+
+ 136
+ 138
+ pc2
+ eth0
+
+
+ 110
+ 113
+ net_switch1
+ port1
+
+
+ normal
+ 157
+
+
+
+ 110
+ 117
+ net_switch1
+ port5
+
+
+ 148
+ 150
+ firewall0
+ eth0
+
+
+ normal
+ 161
+
+
+
+ 110
+ 119
+ net_switch1
+ port7
+
+
+ 120
+ 128
+ net_switch2
+ port6
+
+
+ normal
+ 154
+
+
+
+ 142
+ 144
+ pc4
+ eth0
+
+
+ 120
+ 124
+ net_switch2
+ port2
+
+
+ normal
+ 160
+
+
+
+ 162
+ 165
+ router0
+ eth1
+
+
+ 166
+ 168
+ pc6
+ eth0
+
+
+ normal
+ 170
+
+
+
+ 148
+ 152
+ firewall0
+ wan0
+
+
+ 162
+ 164
+ router0
+ eth0
+
+
+ normal
+ 169
+
+
+
+ 171
+ 175
+ wap0
+ eth1
+
+
+ 100
+ 107
+ net_switch0
+ port5
+
+
+ normal
+ 194
+
+
+
+ 195
+ 198
+ laptop0
+ wlan2
+
+
+ 171
+ 176
+ wap0
+ wport2
+
+
+ wireless
+ 201
+
+
+ laptop0
+ pc2
+ NeedsLocalIPTo
+
+
+ net_switch0
+ All
+ LockVLANsOnHost
+
+
+ net_switch1
+ All
+ LockVLANsOnHost
+
+
+ net_switch2
+ All
+ LockVLANsOnHost
+
+ WirelessAP
+ VLAN
+ Default
+ Staff
+ students
+
+
\ No newline at end of file
diff --git a/EduNetworkBuilder/Resources/languages/edustrings.resx b/EduNetworkBuilder/Resources/languages/edustrings.resx
index 2826bef..c336a40 100644
--- a/EduNetworkBuilder/Resources/languages/edustrings.resx
+++ b/EduNetworkBuilder/Resources/languages/edustrings.resx
@@ -1609,6 +1609,10 @@
When packets are passing across a VLAN link, color the packets so we can visualize them better.
OW_OWVLANColoredPacketsTT = When packets are passing across a VLAN link, color the packets so we can visualize them better.
+
+ Locked Out. Cannot determine settings for this device.
+ NB_LockedOut = Locked Out. Cannot determine settings for this device.
+
Reset
NB_Reset = Reset