[[mscom_linux_setup]]

The network analysis is done with a collection of tools in a linux environment.

• iperf Performance Measurement
• Wireshark Packet Tracing
• netem Network emulation
• tcp_probe Kernel module (see tcp_probe.c)
• tftp tiny file transfer protocol
• ethtool for network card settings

These tools are installed on top of ubuntu-12.04.4-desktop-amd64.iso installation from Ubuntu. To install the tools, run:

sudo apt-get install git iperf wireshark gnuplot tftp ethtool tftpd-hpa

For the tftp daemon, change the setting of TFTP_OPTIONS in the file

/etc/default/tftpd-hpa

to

 TFTP_OPTIONS="--secure --create"

. Then change the owner of the tftp directory

sudo chown tftp:tftp /var/lib/tftpboot

Starting and stopping of the tftp server is done with

sudo service tftpd-hpa start
sudo service tftpd-hpa stop

#### Live CD Creation

For the lab I have bootable usb sticks which contain the Ubuntu live system plus a persistent storage which already contains the additional installed packages and the home directory files.

Here is the guide for creating a usb live boot stick: https://help.ubuntu.com/community/LiveCDCustomization

The steps to produce such a bootable usb stick are

1. Create a FAT partition of approx. 4 GB size with the Ubuntu disk utility on the usb stick
2. Start the graphical “Startup Disk Creator”, select the iso image ubuntu-12.04.4-desktop-amd64.iso and choose “Documents and Settings will be stored in reserved extra space” with size of approx. 1GB. Select the USB Device you have in the usb slot.
3. Create the USB Stick with “Make Startup Disk”
4. Eject the stick and inject it again. This will mount the stick and you can look at the file contents.
5. You need to change the file /boot/grub/grub.cfg due to a bug. Add the word “persistent” to the linux parameter of “Try Ubuntu”. See below for the corrected part of grub.cfg.
6. Now boot your computer with the stick. You should boot from a computer which is connected via ethernet such that you have internet connection.
7. Install the packages you need and add the files you want to the home directory. I added the socket programming source files. These changes are persistently stored now.

Her is the corrected extract from the grub.cfg file:

...
menuentry "Try Ubuntu without installing" {
linux	/casper/vmlinuz.efi  file=/cdrom/preseed/ubuntu.seed boot=casper persistent quiet splash --
initrd	/casper/initrd.lz
}
...

#### USB stick copy

In order to avoid problems with the USB stick copy step, the size of the initial FAT32 partition should be smaller than the maximum size of the USB stick. I selected 4 GB for the FAT 32 which includes the 1GB persistent caspar-rw file. The stick size is 16GB. I had success with copying the first 4 GB (in fact 5GB) from the stick to a file with

sudo dd if=/dev/sdb of=mscom.iso bs=1M count=5000

That produces an mscom.iso file with size 5,2 GB which is well above the 4 GB. Maybe count could have been smaller… Now you can copy that to a new USB stick with

sudo dd if=mscom.iso of=/dev/sdb bs=1M