How to install the NIST Net emulation package

  1. Prerequisites: Currently requires a Linux 2.0.27-2.0.30 level kernel!
  2. Get the source and/or binary package here:
  3. tar -xvzf nistnet.tar.gz - produces a directory nistnet and a bunch of files in it. That is the directory referred to as this dir below.
  4. Make sure you can build and install usable kernels:
    cd /usr/src/linux
    make config (or menuconfig/xconfig)
    - answer questions appropriately
    make install
    - make sure new kernel boots properly
  5. Install the fast timer and packet handling kernel patches:
    ./Patch.Kernel
    - run from this dir, but does the following in /usr/src/linux:
    • patch -p0 < fast.patches (patches kernel)
    • tar -xvf fast.tar (adds fast timer code)
    Make sure the patches install correctly!
    cd /usr/src/linux
    make config (or menuconfig/xconfig)
    - say "y" to CONFIG_FAST_TIMER and CONFIG_REPACK (at end, under "kernel hacks")
    make dep
    make install
    - may want to save a previous kernel version for failsafe; then reboot and make sure things work
  6. Check the configuration of the user interface, and create the appropriate Makefile:
    cd this dir/monitor
    edit Imakefile
    - may want to use an alternative to the Xaw widget set.
    - Tested with Athena Xaw and neXtaw
    xmkmf
    - creates customized Makefile
  7. Build and install the hitbox module, API library, and user interface
    cd this dir
    make
    make install
  8. Try things out:
    insmod nistnet
    - loads "nistnet" emulator module into kernel
    nistnet
    - runs user interface
    insmod mungemod
    - loads "mungebox" sample emulator add-on
    mungebox -u -a src dest -S
    - view traffic between and
  9. To turn off:
    hitbox -d or "off" button in nistnet
    - turns off emulator
    rmmod mungemod
    - removes mungebox module (must be done first)
    rmmod nistnet
    - removes module from kernel

Comments? Questions? Mail me at mark.carson@nist.gov.
[ NIST Net Home Page] [Installing NISTNet] [Using NISTNet] [NISTNet FAQ]