This document provides an introduction to using NS2 (Network Simulator 2) for network simulation. It recommends using Linux over Windows for NS2 as support has been stopped for Windows beyond a certain version. It outlines some basic Linux commands needed for working with NS2 and describes NS2's architecture which uses C++ for implementation and OTCL for the user interface with TclCL providing the interface between them. It also gives a brief overview of NS2's capabilities for simulating protocols and networking entities and describes OTCL with examples of defining classes and objects.