Generation Solutions | NetSimk Developer's Homepage | Anything else you may like
NetSimK Main Page
Screen Shots
Download NetSimK |
About the Developer
subglobal5 link | subglobal5 link | subglobal5 link | subglobal5 link | subglobal5 link | subglobal5 link | subglobal5 link
subglobal6 link | subglobal6 link | subglobal6 link | subglobal6 link | subglobal6 link | subglobal6 link | subglobal6 link
subglobal7 link | subglobal7 link | subglobal7 link | subglobal7 link | subglobal7 link | subglobal7 link | subglobal7 link
subglobal8 link | subglobal8 link | subglobal8 link | subglobal8 link | subglobal8 link | subglobal8 link | subglobal8 link


The ultimate aid to teaching and learning Cisco™ Routers

To download a fully functional trial version of NetSimK, please click on the link below.

This software contains NO viruses or spyware!!

Download NetSimK

   Version 1.11h   Updated 14 Nov 2007, expires 12/12/2019.

   (Note that the expiry is not an evil plot, it is simply because the product is improving all the time - just come back and get the latest!!)

   Coming up... "acl established" option, EIGRP and OSPF. OSPF NEARLY DONE - REALLY (More complicated than I gave it credit)!!!

   2017: I APOLOGISE FOR NOT UPDATING NETSIMK FOR A WHILE - my life turned busy, but changed jobs again and am looking forward to netsimk again soon.

   Return regularly to get the latest update.

Please email us any bugs or incorrect functionality, they will be fixed asap!. And if you need a function not yet available, let us know that too!!!


CPP / C++ / C Code:
// This calls the BuildTree method with m_pDocRoot as an IXMLDOMElementPtr

// Initialize root pointer
m_pDocRoot = m_plDomDocument -> documentElement;

// Delete previous tree structure
// Display new tree structure
this -> BuildTree(this -> m_pDocRoot, &(this -> m_Tree), hxmlRoot);
// Construct XML tree structure
void View_Tree::BuildTree(IXMLDOMNodePtr pParent, CTreeCtrl *m_Tree, HTREEITEM hParent) {

// Insert node into tree
InsertNode(pParent, m_Tree, hParent, hChild);

// Recursive call to insert each node into the tree in turn
for (IXMLDOMNodePtr pChild = pParent -> firstChild; NULL != pChild; pChild = pChild -> nextSibling) {

BuildTree(pChild, m_Tree, hChild);


} // End of BuildTree()
// Insert specified node into tree structure
void View_Tree::InsertNode(IXMLDOMNodePtr pParent, CTreeCtrl *m_Tree, HTREEITEM hParent, HTREEITEM &hChild) {

// Leaf node
if (NODE_TEXT == pParent -> nodeType) {

// Enter child node into the tree
m_Tree -> InsertItem(pParent -> text, hParent, TVI_LAST);

// Parent node
} else {

// Enter parent node into the tree and define its children
hChild = m_Tree -> InsertItem(pParent -> nodeName, hParent, TVI_LAST);


} // End of InsertNode()
- A few minor bugs in how the route table was populated (ospf).
- Fixed bug when sending msg (eg ping) from a switch (stp could sometimes still block a vlan interface, oops).
- Fixed bug where a big yellow "switch loop warning" was displayed even though the loop was blocked by STP.
- Fixed bug where a new router (or switch !?) would show OSPF interface settings in "show run" (as ospf 99% implemented...)
- Fixed loading of some old file versions. Note that some old file versions may have trouble loading. Please email it to
- Fixed bug where loading old files gave an error.
- Fixed bug where RIP v2 was not handling supernetted ips quite correctly (eg will now be advertised even if rip "network".
- Fixed bug accidently added when dynamic switch trunking added (gave an incorrect encapsulation mismatch).
- Modified routing table construction when dot1q encapsulation exists on subinterfaces.
- Implemented STP commands for cost/priority/portfast.
- Fixed bug where routing protocols were being prevented from passing a NAT interface.
- Implemented "ip classless" and of course "no ip classless" operation.
- Fixed the handling of an incorrect NAT setup, and added a cool "NAT Operation" to the demos in the file menu.
- Fixed first bug due to STP. VLAN interfaces on a switch now cannot be STP blocking.
- Added STP (still to add more stp ios commands).
- Multiple cables between devices (eg console + LAN) now auto separate.
- Bug fix with frame relay packet forwarding when multiple active dlcis on a multipoint interface.
- Temporary release because it expired before STP completed (getting the final topology notification phase working).
- Just for interest, EIGRP and OSPF are next on the list.
- Fixed bug where could not telnet to or from a switches interface vlan.
- Added "Tell me about STP..." in Teaching menu (plus fixed wee bug where simple switch STP never got off listening).
- Fixed bug where DHCP request not forwarded to helper properly when on subinterface.
- Fixed a few bugs in some of the File menu Demonstrations.
- Fixed bug where NAT was not checking statics on some incoming traffic.
- Fixed bug where frame-relay cloud could result in an encapsulation mismatch error.
- Fixed recent bug where outgoing traffic from a loopback had the exit interface IP as source-IP.
- Added default-gateway to switch.
- Beta release of the software with ROAST implemented (native manipulation not yet complete).
- Finished vlan interface+trunking and updated demonstration examples in File menu.
- Fixed some IOS commands that were reporting a syntax error when actaully correct.
- Fixed bug where some commands forced extra parameter entry when not required.
- Added "ip unnumbered".
- Fixed bug where debugging left on, giving arbitrary "out of Range" errors! Sorry about that.
- Fixed bug where copy/pasting a PC gave the new PC the same MAC address as the original, giving obvious problems.
- A PC running a Web Server can now edit the html, or point to an html document. The PC browser is now a 'real' browser.
- Added ability to rename devices in a specific order.
- Added new demonstrations (dhcp relay, route summarisation).

About Us | Privacy Policy | Contact Us | 2003