Tim Young
9bf9d58c48
If the user types in a name in the IP Address Entry form, also replace the subnet mask. This is particularly useful for pinging, since ping doesn't allow access to the subnet mask field, and if an inappropriate mask is autoIP-entered, then the results might be unexpected. Exception for DHCP ranges: Actually, it shouldn't be necessary (since the IP address field is disabled for DHCP), but just for completeness, I ensure that the second field is not altered for DHCP range entries. Scenario: Level4, Small Subnets 1.) fix router2, so the subnet mask is /30 2.) from pc1, ping pc2 (which is address 192.168.1.3) -lastIP sets subnet mask to 255.255.255.252 -that makes .3 the broadcast address -fix result: lastIP mask is replaced by pc2's real mask. |
||
---|---|---|
.sync | ||
EduNetworkBuilder | ||
EduNetworkBuilderSetup | ||
.gitattributes | ||
.gitignore | ||
EduNetworkBuilder.sln | ||
EduNetworkBuilder.userprefs | ||
README.md |
EduNetworkBuilder is a simple program for teaching network principles. It was inspired by watching a number of people struggling with PacketTracer in an attempt to undestand IP addresses, subnets, and gateways. Most of their struggles were with understanding how to configure an IP on each device; they never got around to learning about how the subnets worked.
EduNetworkBuilder is geared to take all the complexity away, and let you visualize the network and packet flow in a very simple way. It has proven itself already, as a great tool for teaching in lab-settings in Africa.
It is also set up to be a tool for self-teaching; If you can solve all the built-in puzzles, you should be well on your way to mastering networking.
EduNetworkBuilder is a Visual Studio program. You should be able to download the current free edition of Visual Studio, open the project file, and make the project. You should also be able to download pre-compiled versions from: http://tyounglightsys.ddns.info/EduNetworkBuilder
*** Building on Linux with Mono and XBuild ***
This should be the simplest way to install EduNetworkBuilder on Linux. You will need to install git, Mono and XBuild.
On Mint or ubuntu, you can do this by running:
$ sudo apt-get install mono-complete mono-xbuild git
For Ubuntu 18.04 also install libmono-microsoft-visualbasic10.0-cil
On Centos, you need the epel repository
yum install epel-release
yum install mono-complete mono-devel
yum install git
After this, you should be ready to download and compile. Determine where you want to build your source, cd to that directory, and run:
$ git clone https://git.solidcharity.com/timy/EduNetworkBuilder $ cd EduNetworkBuilder $ xbuild
After this, you should see a lot of build messages. In the end, you should be able to find the executable at: EduNetworkBuilder/bin/Debug/EduNetworkBuilder.exe Copy this file wherever you want. For example:
$ sudo cp EduNetworkBuilder/bin/Debug/EduNetworkBuilder.exe /usr/local/bin/
And then you can run it by simply typing:
$ EduNetworkBuilder.exe
*** Building on Linux With MonoDevelop ***
EduNetworkBuilder should compile on Linux using MonoDevelop with one small change to the code. EduNetworkBuilder on Windows uses the Microsoft deployment mechanism, which cannot build on Linux. To make it work, we need to change a configuration option. So, here are the instructions for building on Linux.
-
Install MonoDevelop for your version of Linux
-
Install git for your version of Linux
-
Download the EduNetworkBuilder source code.
$ git clone https://git.solidcharity.com/timy/EduNetworkBuilder
-
Choose which git branch you want to use (optional)
$ cd EduNetworkBuilder
$ git checkout Development
-
Change the EduNetworkBuilder.csproj file
Find the line that says:
<GenerateManifests>true</GenerateManifests>
Change it to read:
<GenerateManifests>false</GenerateManifests>
-
Run MonoDevelop (use the instructions for your specific operating system)
-
Find and open the EduNetworkBuilder.sln file
-
Tell EduNetworkBuilder to build using the MonoDevelop interface
-
Find the exe in the build directory. Chmod that to make it executable, and put it wherever you want it to go:
$ find . | grep EduNetworkBuilder.exe
$ chmod 755 [EduNetworkBuilder.exe path]
$ mv [EduNetworkBuilder.exe path] /usr/local/bin