You'll want to do this for both of your VMs... First, we need to install some packages: sudo apt-get install python-geoip python-tk tk8.5 python-pmw tcpdump sudo apt-get install iperf Next, we'll get pyshaper from here: http://www.freenet.org.nz/python/pyshaper/ We'll need to grab it and then compile and install it: cd wget http://www.freenet.org.nz/python/pyshaper/pyshaper-0.1.3.tar.gz tar xvzf pyshaper-0.1.3.tar.gz cd pyshaper-0.1.3 sudo make install We'll need to fulfill one additional requirement before pyshaper will run properly... cd sudo apt-get install python-setuptools sudo easy_install SQLObject==0.6 wget http://www.freenet.org.nz/python/ezsqlobject/ezsqlobject-0.1.1.tar.gz tar xvzf ezsqlobject-0.1.1.tar.gz cd ezsqlobject-0.1.1 sudo python setup.py install Please set your policy to limit the connection between your two VMs to 100 Kbps (for most groups eth1 will be the one you want to configure for both, unless your hardware changed): root@suspiria:~/# cat /etc/pyshaper/pyshaper.conf # shaping config script for pyshaper # for more information about pyshaper configuration, refer to the # file 'pyshaper.conf.readme', and the examples therein # Set the connection-scanning period to 1 second period 1 # declare the main network interfaces, and set its inbound # and outbound bandwidth in kbits/sec eth1.ip 192.168.122.1 eth1.in 100 eth1.out 100 Configure both VMs this way. Then you can start pyshaper with: sudo pyshaper start You'll get some warnings about deprecated libraries, don't worry about it. Any time you're using the Internet on either VM, you should disable pyshaper on it and the gateway, otherwise the Internet will be very slow. sudo pyshaper stop Now use iperf in both directions to make sure that the pyshaper configurations on both your VMs are working. Do "man iperf" for details on how to use iperf. I would sugget testing for a longer amount of time than the default 10 seconds. Don't forget about your firewall expcetions that you need to add for iperf to work. You should read the pyshaper.readme.conf file. You should also read up on ip and tc with "man ip" and "man tc". Try to figure out how to dump the iptables rules and tc information to see how pyshaper works under the hood, i.e., what is it doing? If you're not familiar with something (e.g., iptables) be sure to ask questions. Before you leave class on Thursday 9 September your network should be configured as follows: the first VM should be the gateway for the second, and should use shasta as its own gateway. Traffic between your two VMs should be limited to 100 Kbps using traffic shaping. The SSH and iperf ports should be open, and the ufw firewall should be enabled. Again, be sure to ask questions and understand how all of this is working since you'll need to understand things at a basic level to do lab 1.