User Tools

Site Tools


lanforge-faq

Table of Contents

What does Candela Technologies do?

Candela Technologies provides test equipment to companies around the world to aid in the testing of network equipment and applications. DSLAM, DSL Modem, Cable Router and Cable Modem and various other networking equipment manufacturers and testers are our target market for the LANforge FIRE product line. Our LANforge ICE WAN emulator product is excellent for anyone writing or deploying applications that are designed to work across wide area networks, including VOIP, web applications, online-gaming, and database replication.

Candela Technologies, Suite A, 2026 Main Street, Ferndale, WA 98248, USA | www.candelatech.com | sales@candelatech.com | +1 360 380 1618 (PST, GMT -8)

What guarantee do I have that Candela Technologies Inc will not go out of business and leave me with unsupported software?

Candela Technologies Inc is a small company with low overhead. We have been in business since November of 2000, and have been profitable since 2002. We have an ever growing list of happy customers, and have been able to expand our products and sales steadily.

Should unfortunate circumstances force our closure, the LANforge software suite will be released under the GNU Public License (GPL). This ensures that you will be able to arrange to have any support and/or features added that you require.

Candela Technologies, Suite A, 2026 Main Street, Ferndale, WA 98248, USA | www.candelatech.com | sales@candelatech.com | +1 360 380 1618 (PST, GMT -8)

How do I get support for my LANforge?

To resolve problems quickly, perform the following procedure for Linux based systems:

  • SSH or telnet into the lanforge system as the root user. The default password for root is “lanforge”.
  • Run the debug information collection script:
cd /home/lanforge
./lfdebug.bash
  • Send the /home/lanforge/lfdebug.tar.gz file to the Candela Support Team at support@candelatech.com with a description of the problem you are experiencing.

Candela Technologies, Suite A, 2026 Main Street, Ferndale, WA 98248, USA | www.candelatech.com | sales@candelatech.com | +1 360 380 1618 (PST, GMT -8)

How do I obtain a free student or non-profit license.

Students and certain non-profit organizations may qualify for a free LANforge software license. For students, the LANforge software must be used on personal machines. If LANforge is to be used on a school's machines, or mandated as part of the in-class curriculum, licenses will need to be purchased. Charitable non-profit organizations may also qualify for free licenses.

If you believe you might qualify, and would like free LANforge software licenses, please send email to support@candelatech.com explaining your status and/or organization and describing how you wish to use LANforge.

Candela Technologies, Suite A, 2026 Main Street, Ferndale, WA 98248, USA | www.candelatech.com | sales@candelatech.com | +1 360 380 1618 (PST, GMT -8)

Can I get the source code to the LANforge product?

Our LANforge-GUI, LANforge-ICECap and some other tools are already released as source code under the GPL.

Candela Technologies Inc is willing to license you the source code to the proprietary parts of LANforge under certain circumstances. Contact us if you wish to learn more.

Candela Technologies, Suite A, 2026 Main Street, Ferndale, WA 98248, USA | www.candelatech.com | sales@candelatech.com | +1 360 380 1618 (PST, GMT -8)

How do I use the USB-Bootable LANforge image?

The nc200* image that is used with the LANforge appliance can also boot from a USB storage device on many machines. Assuming your hardware is supported, this is a good way to try out LANforge without having to install Linux from scratch. Unless your machine has exactly 4 ethernet interfaces, you will must reconfigure LANforge to be aware of your network cards once the system has booted. All changes will be saved through reboots (using the USB disk as storage.)

Create USB bootable image using a Windows machine.

Please note, if you use the wrong of= argument for dd, you can easily completely corrupt your system, requiring a complete re-install. If you have questions, or are un-sure of something, please contact support@candelatech.com before continuing!

  • Download the nc200*.img.bz2 image from the Candela Technologies Downloads page.
  • Insert 2GB USB storage device (or larger) into your system. (Some 1GB disks will work, but many are too small.)
  • Download the latest 'dd.exe' tool from this web page: http://www.chrysocome.net/dd
  • Save the dd.exe file to some directory and rename the dd.exe to dd-removable.exe
  • Open a Command prompt. Change directory so that you are in the same directory as the dd-removable.exe command (or, set up your %PATH% correctly.)
  • Get and install the bzip2 tools from this site: http://www.bzip.org/downloads.html
  • Un-zip the compressed image:
bunzip2 nc200*.img.bz2
  • Figure out the device name. To list devices use:
dd-removable --list
  • Find the output device (also know as the output file) that corresponds to the size of your USB disk. For example, dd-removable –list will output:
\\?\Device\Harddisk2\Partition0
  link to \\?\Device\Harddisk2\DR12
  Removable media other than floppy. Block size = 512
  size is 512483328 bytes

In this case the output device (of=) is: \\?\Device\Harddisk2\Partition0

Please note the size (512 MB in this case). If the size does not match your USB disk, you are probably looking at the wrong device! In the example above, \\?\Device\Harddisk2\Partition0 is actually a Compact Flash disk. That is, if you have Compact Flash cards and/or USB disks discovered be careful about which you overwrite. You may have existing partitions on the media, but that does not matter. All data on the USB disk will be destroyed when you run the dd command below.

  • After choosing the device, run the dd command to copy the new image onto the USB disk:
dd-removable --progress if=nc200.4.4.9.img of=\\?\Device\Harddisk2\Partition0 bs=4k
  • The USB disk is now updated.

Candela Technologies, Suite A, 2026 Main Street, Ferndale, WA 98248, USA | www.candelatech.com | sales@candelatech.com | +1 360 380 1618 (PST, GMT -8)

Create USB bootable image using a Linux machine.

Please note, if you use the wrong of= argument for dd, you can easily completely corrupt your system, requiring a complete re-install. If you have questions, or are un-sure of something, please contact support@candelatech.com before continuing!

  • Download the nc200*.img.bz2 image from the Candela Technologies Downloads page.
  • Insert 2GB USB storage device (or larger) into your system. (Some 1GB disks will work, but many are too small.)
  • Un-zip the compressed image:
bunzip2 nc200*.img.bz2
  • Figure out the USB device name. This can often be determined by looking at the results of:
dmesg | tail -40

You are looking for something similar to this:

SCSI device sda: 1000944 512-byte hdwr sectors (512 MB)
sda: Write Protect is off
sda: Mode Sense: 43 00 00 08
sda: assuming drive cache: write through
  sda: sda1

Please note the (512 MB). If the size does not match your USB disk, you are probably looking at the wrong device! In the example above, /dev/sda is the USB disk, and /dev/sda1 is the first partition. You may have more or no partitions, but that does not matter. All data on the USB disk will be destroyed when you run the dd command below.

  • After choosing the device, run the dd command to copy the new image onto the CF disk:
dd if=nc200*.img of=/dev/sda bs=4k
  • The USB disk is now updated.

Candela Technologies, Suite A, 2026 Main Street, Ferndale, WA 98248, USA | www.candelatech.com | sales@candelatech.com | +1 360 380 1618 (PST, GMT -8)

Booting the USB image

  • Place the USB device in your machine and apply power. You will probably have to change your BIOS to boot from USB-ZIP to get it to boot from the USB dongle.
  • When the BIOS is configured correctly, the BIOS will launch the 'grub' boot loader. You

must hit a key within 3 seconds to get into the boot-loader, and then hit some other key (not ENTER) within 3 seconds to select the correct boot image. In most cases, this will be the fifth option (Generic P-II, USB Bootable, VGA-Console)

    GNU GRUB  version 0.97  (638K lower / 505792K upper memory)
 
 +-------------------------------------------------------------------------+
 | Candela Technologies Linux 2.6.18.2 (Appliance)                         |
 | Candela Technologies Linux 2.6.18.2 (Appliance, USB Bootable)           |
 | Candela Technologies Linux 2.6.18.2 (Generic  P-II, VGA-Console)        |
 | Candela Technologies Linux 2.6.18.2 (Generic  P-II, Serial-Console)     |
 | Candela Technologies Linux 2.6.18.2 (Generic P-II, USB Bootable, VGA->  |
 | Candela Technologies Linux 2.6.18.2 (Generic P-II, USB Bootable, Seri>  |
 |                                                                         |
 |                                                                         |
 |                                                                         |
 |                                                                         |
 |                                                                         |
 |                                                                         |
 +-------------------------------------------------------------------------+
      Use the ^ and v keys to select which entry is highlighted.
      Press enter to boot the selected OS, 'e' to edit the
      commands before booting, 'a' to modify the kernel arguments
      before booting, or 'c' for a command-line.
  • After the machine boots the USB image, you will need to reconfigure LANforge to take advantage of the new hardware.
    • Log in as user root, with password lanforge
    • Reconfigure LANforge

cd /home/lanforge

 ./serverctl.bash stop
 ./lfconfig --new_layout
   > Make appropriate changes, including setting the mgt_dev to a device that
     exists on your machine (eth0 is a good option).
   > config
 ./serverctl.bash start
  • Install the LANforge-GUI on a separate machine to manage the LANforge machine and

use it to connect to the management ethernet port on the USB-booted LANforge machine.

Candela Technologies, Suite A, 2026 Main Street, Ferndale, WA 98248, USA | www.candelatech.com | sales@candelatech.com | +1 360 380 1618 (PST, GMT -8)

How do I use my USB floppy drive with the Bootable CD-ROM?

These instructions are intended for users who do not have a built-in floppy drive in the machine being used to run the LANforge bootable CD-ROM.

  • Boot from the bootable CD-ROM following the on-screen instructions.
  • Login as root.
  • Start the LANforge server with the command:

/etc/init.d/bbc_lanforge start

  • After the start-up has completed, stop the LANforge server:

cd /home/lanforge ./serverctl.bash stop

  • Connect your USB floppy drive to the LANforge server PC.
  • The USB floppy drive should already have a disk in it with a license.txt file that you obtained from sales@candelatech.com.
  • Insert the Universal Host Controller Interface Host Controller Driver kernel module:

insmod /lib/modules/2.6.18.2/kernel/drivers/usb/host/uhci-hcd.ko

  • Note the device name printed on screen that is used for your USB floppy drive, such as /dev/sda.
  • Edit /etc/fstab and replace /dev/fd0 with the device name noted above.
  • Mount the floppy drive:

mount /mnt/rw/floppy

  • Copy the license.txt file from /mnt/rw/floppy to /home/lanforge:

cp /mnt/rw/floppy/license.txt /home/lanforge

  • Start the LANforge server:

./serverctl.bash start

  • Done!

Candela Technologies, Suite A, 2026 Main Street, Ferndale, WA 98248, USA | www.candelatech.com | sales@candelatech.com | +1 360 380 1618 (PST, GMT -8)

How do I restore a saved LANforge configuration database?

The complete LANforge database is typically saved in the following directory:

/home/lanforge/DB

Within that directory you will find various saved directories that contain LANforge databases.

You can restore a single database by copying a saved directory to the /home/lanforge/DB directory.

A refresh of the GUI should show the new database on the Status tab under the “Test Configuration Database→List:” drop down menu. Then just choose the Load Behavior for the new database and click “Load”

Candela Technologies, Suite A, 2026 Main Street, Ferndale, WA 98248, USA | www.candelatech.com | sales@candelatech.com | +1 360 380 1618 (PST, GMT -8)

How do I upgrade LANforge software?

Upgrading LANforge on Linux

To upgrade the LANforge GUI:

To upgrade LANforge kernel:

Generally, the kernel version should be upgraded match the LANforge software version which is found on the LANforge software downloads page.

  • The following command should already exist if you are upgrading LANforge and should be run prior to untarring the LANforge kernel:
/usr/local/bin/kinstall_ct<You current kernel version>.bash
  • NOTE: After untarring the new kernel make sure that the kinstall script is run again.

To upgrade the LANforge Server:

cd /home/lanforge

./serverctl.bash stop
*  Backup the existing installation using the following commands:

cd /home tar -cvzf lanforge_bkup.tar.gz lanforge

  • Install the new LANforge software per directions.
  • Re-generate the configuration by running the:

./lfconfig –new_layout

  • Install any new license keys you may require.
  • Start the server with the following command:

./serverctl.bash start

  • Done!

Candela Technologies, Suite A, 2026 Main Street, Ferndale, WA 98248, USA | www.candelatech.com | sales@candelatech.com | +1 360 380 1618 (PST, GMT -8)

Upgrading LANforge on Microsoft Windows

Upgrade LANforge-GUI

Uninstall the old one using add-remove-programs or the uninstall program menu option. To install the new GUI, just run the installer and follow the directions.

Upgrade the LANforge Server

  • Check the release notes on the Downloads Page for special instructions, if any.
  • Stop the servers by closing their DOS windows.
  • Make a backup copy of the previous install for safe keeping.
  • Install the new LANforge software per directions DO NOT uninstall the old version unless you want to also purge

your configuration database!

  • Re-generate the configuration as the final step of the install wizard.
  • Install any new license keys you may require.
  • Start the servers by double-clicking the icon(s), or reboot the machine.
  • Done!

Upgrading the LF0200 Appliance (CT920 and similar)

To upgrade the LF0200 or CT920 appliance, you can either upgrade the server and kernel components as described above for Linux, or you can upgrade the entire compact-flash (CF) image. The latter may be easier, and will also include any other upgrades to the basic Operating System configuration and components, but you will lose your LANforge configuration.

As of LANforge Release 4.4.10 the CF image requires a 1GB CF card with a true minimum size of 1039417344 bytes. For example, RiDATA Pro 1GB Model CFR1G-SILV is known to work whereas a SANDisk Ultra II 1.0GB is too small. To be safe, any 2GB CF card should work fine.

As of LANforge Release 5.0.6 the CF image requires a 2GB CF card.

Upgrade the entire compact flash image using a Linux machine.

Please note, if you use the wrong of= argument for dd, you can easily completely corrupt your system, requiring a complete re-install. If you have questions, or are un-sure of something, please contact support@candelatech.com before continuing!

  • Save the /home/lanforge/license.txt file on your Appliance someplace safe so that you can re-add it to the new image once you have completed the upgrade.
  • Power down appliance and remove the CF disk. Optionally, save this CF disk aside and use a separate CF disk of appropriate size for the new image. This will allow you to revert to the old disk if you have problems with the upgrade.
  • Download the nc200*.img.bz2 image from the Candela Technologies Downloads page.
  • Unzip it: bunzip2 nc200*.img.bz2
  • Insert 512MB CF disk (or larger) into a USB CF reader.
  • Figure out the device name. This can often be determined by looking at the results of:
dmesg | tail -40

You are looking for something similar to this:

SCSI device sda: 1000944 512-byte hdwr sectors (512 MB)
sda: Write Protect is off
sda: Mode Sense: 43 00 00 08
sda: assuming drive cache: write through
  sda: sda1

Please note the (512 MB). If the size does not match your CF disk, you are probably looking at the wrong device! In the example above, /dev/sda is the CF disk, and /dev/sda1 is the first partition. You may have more or no partitions, but that does not matter. All data on the CF disk will be destroyed when you run the dd command below.

  • After choosing the device, run the dd command to copy the new image onto the CF disk:
dd if=nc200*.img of=/dev/sda bs=4k
  • The CF disk is now updated. Place it in the appliance and apply power.
  • After the appliance boots, copy the license.txt file back into place and restart the LANforge processes to have the license take affect.

Candela Technologies, Suite A, 2026 Main Street, Ferndale, WA 98248, USA | www.candelatech.com | sales@candelatech.com | +1 360 380 1618 (PST, GMT -8)

Upgrade the entire compact flash image using a Windows machine.

Please note, if you use the wrong of= argument for dd, you can easily completely corrupt your system, requiring a complete re-install. If you have questions, or are un-sure of something, please contact support@candelatech.com before continuing!

As of LANforge Release 5.0.6 the CF image requires a 2GB CF card.

  • Save the /home/lanforge/license.txt file on your Appliance someplace safe so that you can re-add it to the new image once you have completed the upgrade.
  • Power down appliance and remove the CF disk. Optionally, save this CF disk aside and use a separate CF disk of appropriate size for the new image. This will allow you to revert to the old disk if you have problems with the upgrade.
  • Download the nc200*.img.bz2 image from the Candela Technologies Downloads page.
  • Insert 2GB CF disk (or larger) into a USB CF reader. (Some 1GB disks will work, but many are not quite big enough.)
  • Download the latest 'dd.exe' tool from this web page: http://www.chrysocome.net/dd
  • Save the dd.exe file to some directory and rename the dd.exe to dd-removable.exe.
  • Open a Command prompt. Change directory so that you are in the same directory as the dd-removable.exe command (or, set up your %PATH% correctly.)
  • Get and install the bzip2 tools from this site: http://www.bzip.org/downloads.html
  • Un-zip the compressed image:
bunzip2 nc200*.img.bz2
  • Figure out the device name. Use the dd-removable –list command to list your devices. Find an image that corresponds to the size of your CF disk. This is probably something like \\?\Device\Harddisk2\Partition0 For instance:
\\?\Device\Harddisk2\Partition0
  link to \\?\Device\Harddisk2\DR12
  Removable media other than floppy. Block size = 512
  size is 512483328 bytes

Please note the size is 512 MB. If the size does not match your CF disk, you are probably looking at the wrong device! In the example above, \\?\Device\Harddisk2\Partition0 is the CF disk. You may have partitions, but that does not matter. All data on the CF disk will be destroyed when you run the dd command below.

  • After choosing the device, run the dd command to copy the new image onto the CF disk:
dd-removable --progress if=nc200.4.4.9.img of=\\?\Device\Harddisk2\Partition0 bs=4k
  • The CF disk is now updated. Place it in the appliance and apply power.
  • After the appliance boots, copy the license.txt file back into place and restart the LANforge processes to have the license take affect.

Candela Technologies, Suite A, 2026 Main Street, Ferndale, WA 98248, USA | www.candelatech.com | sales@candelatech.com | +1 360 380 1618 (PST, GMT -8)

How can I get FTP to log in as a particular user?

When using the LANforge layer-4 endpoint feature, you can build your URL such that LANforge will attempt to log in to the destination machine as a particular user with a particular password. The syntax is:

ftp://user:password@ftp.my.site:8021/README

Candela Technologies, Suite A, 2026 Main Street, Ferndale, WA 98248, USA | www.candelatech.com | sales@candelatech.com | +1 360 380 1618 (PST, GMT -8)

How do I set the ethernet port to be 100bt half-duplex (or other speed)?

Please note: It is usually a bad idea to force the speed of an interface. If possible, leave in Auto-negotiate mode. Contact support@candelatech.com if you have questions.

LANforge supports setting the ethernet port speeds through the GUI and CLI. The CLI Scripts page offers the lf_verify.pl script that has an example of setting the port speeds through the CLI. Information on how to set it through the GUI can be found in this section of the LANforge GUI Users Guide

To manually change the ethernet port speeds without using LANforge, you can use the ethtool program available on most Linux distributions. 'man ethtool' will give you details on program usage.

If you wish to ensure that the ports are back to their 'default' behaviour, you can follow these steps:

  • Stop the LANforge server processes:

cd /home/lanforge

./serverctl.bash stop
*  Remove the ports database:
rm DB/DFLT/ports.db*
*  Reboot all Data Generating machines, from the console:
reboot
*   When the machines are back online, the drivers will have default values.

Candela Technologies, Suite A, 2026 Main Street, Ferndale, WA 98248, USA | www.candelatech.com | sales@candelatech.com | +1 360 380 1618 (PST, GMT -8)

What OS/Distribution should I use to run LANforge? What Linux Kernel?

We suggest installing on Fedora Core 5. Google something like “how to install Fedora Core 5” or “installing Fedora Core 5” and you will find helpful sites such as:

[[http://docs.fedoraproject.org/fedora-install-guide-en/fc5/|http://docs.fedoraproject.org/fedora-install-guide-en/fc5/]]
[[http://stanton-finley.net/fedora_core_5_installation_notes.html|http://stanton-finley.net/fedora_core_5_installation_notes.html]]
[[http://www.howtoforge.com/perfect_setup_fedora_core_5|http://www.howtoforge.com/perfect_setup_fedora_core_5]]

Other distributions should work fine so long as you install the correct Linux kernel. In order for the feature that allows you to have multiple ports on the same subnet, on the same machine, work, you must have arp_filter support compiled into your Linux kernel (the LANforge install script will warn you if it does not exist). Any kernel of version 2.4.5-pre3 or higher should support arp_filter. For Armageddon, MAC-VLANs, and kernel-ICE to work, you must patch your kernel with the Candela patch(es) found in the LANforgeExtras download or use a pre-compiled LANforge Linux kernel.

You can download the Linux kernel and patches from www.kernel.org See the Linux Kernel-HOWTO for detailed instructions on how to compile and install the Linux kernel.

For more detailed instructions, see the LANforge Server Install Guide

Note that Candela Technologies will take care of all these issues for those who acquire LANforge pre-installed from Candela Technologies or one of our resellers!

LANforge now supports many features on Microsoft Windows 2000 and Windows XP. See the LANforge Server Install Guide for details.

Candela Technologies, Suite A, 2026 Main Street, Ferndale, WA 98248, USA | www.candelatech.com | sales@candelatech.com | +1 360 380 1618 (PST, GMT -8)

Why do my ethernet cards get Carrier Errors?

One possibility is bad hardware, including a bad NIC and/or bad network cable. A link speed mis-match can also cause these and other errors. You can get a link speed mis-match by forcing one NIC to a certain speed and letting the other side auto-negotiate, for example.

Please contact support@candelatech.com if you continue to see Carrier or other ethernet driver errors.

Candela Technologies, Suite A, 2026 Main Street, Ferndale, WA 98248, USA | www.candelatech.com | sales@candelatech.com | +1 360 380 1618 (PST, GMT -8)

How does LANforge-ICE fit into my network diagram? Does it route?

LANforge-ICE now supports two modes: bridged and routed.

In bridge mode, LANforge-ICE acts as a transparent 'lump' in the ethernet wire. You can think of it as an ethernet hub when setting up your network. It specifically does NOT route packets, but merely transmits all packets coming in on one port to the other port. When using using a WanLink (LANforge-ICE connection) the LANforge system will force the IP addresses on the WanLink ports to be 0.0.0.0. You can still communicate to the device over the management port.

In routed mode, LANforge-ICE still acts like a bridge internally, but through the use of the redirect-device feature in the Candela Linux kernel, the end result is a network emulator that can act like a router. See the routed mode section of the LANforge-ICE Cookbook or the LANforge-GUI User Guide for more details. Routed LANforge-ICE is not currently supported on Microsoft Windows.

LANforge-ICE can work on ethernet or 802.1Q VLAN interfaces, and has the ability to bridge VLANs with different VLAN ids. This VLAN support can be combined with a VLAN-aware ethernet switch to provide 48 or more independent emulated networks with only 3 relatively inexpensive machines.

When connecting a PC to a LANforge-ICE port, you may need to use a cross-over cable, but if you are connecting LANforge-ICE to a switch or hub, a regular cable should be used in most cases.

Candela Technologies, Suite A, 2026 Main Street, Ferndale, WA 98248, USA | www.candelatech.com | sales@candelatech.com | +1 360 380 1618 (PST, GMT -8)

Can you suggest some specific LANforge-ICE settings for DSL, Satellite, T1, etc?

NOTE: It is suggested that the user use 'AUTO' for backlog buffer unless they understand and want different settings.

Connection Type Backlog Buffer Speed (bps) Latency
T1 8-64 1544000 20ms +
DSL 6-64 128Kbps - 512Kbps upload
512Kbps to 6Mbps download
40ms download
60ms upload
Satellite 32-256 56Kbps - 1Mbps upload
512Kbps to 20Mbps download
(Service varies widely!)
150ms both directions
(at least!)
Cable Modem 8-64 128Kbps - 512Kbps upload
512Kbps to 6Mbps download
40ms download
60ms upload

Candela Technologies, Suite A, 2026 Main Street, Ferndale, WA 98248, USA | www.candelatech.com | sales@candelatech.com | +1 360 380 1618 (PST, GMT -8)

Can you suggest some uses for LANforge-FIRE and LANforge-ICE in an educational setting?

Introduction to Networking

Students use LANforge-FIRE to generate different types of traffic and sniff the network with Wireshark or other network sniffers to determine what type of traffic is being sent where. Possible coverage of the following topics:

  • OSI Model: Generate Ethernet, UDP/IP, TCP/IP, HTTP, HTTPS, FTP, VOIP (SIP, RTP, RTCP) and other protocols using LANforge-FIRE.
  • Subnet Addressing & Routing: Configure LANforge-FIRE to use a specific gateway/router. Let student configure both the router and the LANforge interfaces. Use different subnet-masks (255.255.255.0, 255.255.0.0 and other fractional subnet masks.)
  • Ports and Protocols: Specify different IP ports and discuss the standard IP protocol ports (Port 80 for HTTP traffic, for instance.

Advanced Networking

Students build on their previous knowledge and experience using LANforge-FIRE to go into more detail and begin using LANforge-ICE. Possible coverage of the following topics:

  • VLANs: Create 802.1q VLANs and VLAN trunks in network devices and LANforge to ensure that LANforge traffic is segregated correctly.
  • NAT: Have students configure a NAT server or home-gateway and let LANforge generate traffic through it. Sniff packets using Wireshark or other protocol analyzer before and after the NAT box to understand how the NAT system translates IP addresses.
  • Wireless Networks: Certain LANforge-FIRE appliances support generating 802.11a/b/g traffic.
  • VoIP: LANforge-FIRE supports generation VoIP call generation (SIP, RTP, RTCP).
  • Latency, Jitter, and Delay: Have students detect latency, jitter, and delay, either by using LANforge-FIRE as the traffic source, or their own application. LANforge-ICE can be used to introduce specified latency, jitter, delay and other network abnormalities for the students to discover and trouble-shoot.
  • Quality of Service: Configure LANforge-FIRE to generate packets with specified QoS and ensure that the student's network gives priority to the correct traffic streams including VoIP. LANforge is able to validate voice quality by generating PESQ/MOS scores. Cisco routers or even other Linux machines could be used for the student's test network.

Network Design

Students are given a network design problem and asked to simulate it using LANforge-FIRE and LANforge-ICE. Possible coverage of the following topics:

  • Scalability: Have students configure advanced router network with edge and core routers. This requires at least moderately advanced routers in the lab (mid-range Cisco routers would be a good choice.) Use LANforge-FIRE to generate traffic and ensure that the network can handle the load.
  • Reliability: Have students configure a redundant network and use LANforge-FIRE to generate traffic over the network. Remove network connection or power down one of the redundant routers and ensure that the other router takes over and LANforge traffic continues to pass through the network.
  • Security: Use LANforge-FIRE to generate traffic through Intrusion Detection Devices so student can learn to distinguish good from bad traffic. (Bad traffic could include any traffic on non-common IP ports, for instance.)
  • Troubleshooting: Mis-configure routers and make students fix this while testing throughput with LANforge-FIRE. Use LANforge-ICE to introduce delay, packet-loss, packet duplication, packet-reordering, etc and have students detect the specific impairments using a variety of tools (traceroute, ping, Wireshark protocol analyzer, tcpdump, etc.)
  • Network Application Deployment: Use LANforge-ICE to emulate designed network impairments and observe the stresses and performance on network based applications.

Linux Administration Training

Throughout the course, students can use the LANforge box to study Linux topics such as:

  • OS Installation: Install Fedora Core 5 or similar Linux.
  • Application Installation: Install Wireshark protocol analyzer, LANforge, and other applications.
  • Server Setup: Configure the Apache web server on the LANforge machine to serve up student's web pages.
  • Monitoring and Maintenance: Investigate /var/log/messages for warnings. Use 'top' to investigate system and memory load.

Software Development and Deployment

Students developing or deploying network based application use LANforge to test and determine:

  • Network Resiliency: Use LANforge-ICE to emulate impaired networks to develop application robustness and evaluate application performance over realistic networks.
  • Application Load Profile: Developed applications can be stressed using LANforge-FIRE to generate traffic against the student's application.

Candela Technologies, Suite A, 2026 Main Street, Ferndale, WA 98248, USA | www.candelatech.com | sales@candelatech.com | +1 360 380 1618 (PST, GMT -8)

How can I emulate GPRS/GRPS?

GPRS/GRPS is a packet data protocol that runs over cell phones, primarily. It is relatively slow, and has lots of latency and jitter. LANforge-ICE can emulate a GRPS network connection, you just need to enter the correct values into your WanLink.

Please see this research paper on TCP and GPRS/GRPS called Practical Experience with TCP over GPRS

There are some other papers available on P. Stuckmann's site. For additional resources from P. Stuckmann search Google for “P Stuckmann GPRS” or “P Stuckmann GRPS”.

Here are the numbers to plug into LANforge to emulate the settings described in the paper above.

  • The transmit speed for the WanLink should be around 20kbps-45kbps in both directions.
  • drop: 0
  • reorder: 0
  • latency upstream: 400 (miliseconds)
  • jitter upstream: 400
  • latency downstream: 500
  • jitter downstream: 600
  • For the WanLink backlog buffer, the correct value for downstream should be 120 (kilobytes)
  • For upstream backlog buffer: 4-8 (kilobytes)

Candela Technologies, Suite A, 2026 Main Street, Ferndale, WA 98248, USA | www.candelatech.com | sales@candelatech.com | +1 360 380 1618 (PST, GMT -8)

How can I emulate DSL & Cable Modem connections?

DSL is typically an asymetric offering, with higher download speeds than upload speeds. Typical download speeds are 512kbps - 1.54Mbps and typical upload speeds are 128kbps - 512kbps. Cable modems are also asymetric, with similar upload speeds to that of DSL. The download speeds are often higher, ranging up to 3Mbps in many cases.

It really depends on what the local DSL & Cable providers are selling, however.

A good estimate for latency would be 35ms in both directions for a round-trip-time of 70ms.

Packet loss should be rare providing you are not overloading the network under test (and overloading the network will drop packets independently of the packet-loss settings in LANforge anyway). Packet duplication and reordering should be extremely rare events.

Cable & DSL emulations should have a backlog buffer of 16-32 in most cases. Larger buffers can seriously increase latency and/or make TCP/IP run sub-optimally.

ISPs almost always oversell their bandwidth and assume that not everyone will be using the resources at the same time. This means that there will be times, and perhaps repeating periods of the day, when latencies, bandwidth constriction and packet loss are MUCH higher. For these bad-case scenarios try setting latency to 150ms in both directions, packet-loss of 2%, and bandwidth constriction of 1/5th of normal. You may also want to use the LANforge-ICEcap tool to capture latencies and packet loss on real networks that your typical customers use.

Candela Technologies, Suite A, 2026 Main Street, Ferndale, WA 98248, USA | www.candelatech.com | sales@candelatech.com | +1 360 380 1618 (PST, GMT -8)

How can I support a large number of WAN emulations economically?

The CT970-24 and CT970-48 (see: http://www.candelatech.com/lf_systems.php) utilizes an 802.1Q VLAN switch and LANforge's ability to use and manage 802.1Q VLANs to provide large numbers of unique emulations per physical machine. In addition to the LANforge-ICE machine, you will need a Linux system set up to act as a VLAN bridge. Candela sells the complete solution, but if you wish to provide your own bridge system, you can use a script similar to this to create the bridge group:

 #!/usr/bin/perl
 use strict;
 my $i;
 
 my $mx_vlans = 24;
 my $start_vid = 101;
 my $vlan_dev = "eth3";
 my $upstream_dev = "eth2";
 
 print "Creating $mx_vlans on ethernet port $vlan_dev\n";
 
 `ifconfig $vlan_dev up`;
 `ifconfig $upstream_dev up`;
 
 for ($i = $start_vid; $i < ($start_vid + $mx_vlans); $i++) {
        `vconfig add $vlan_dev $i`;
        `ifconfig $vlan_dev.$i 0.0.0.0 netmask 0.0.0.0 up`;
 }
 
 print "Adding bridge group.";
 
 `brctl addbr br0`;
 `brctl addif br0 $upstream_dev`;
 for ($i = $start_vid; $i < ($start_vid + $mx_vlans); $i++) {
        `brctl addif br0 $vlan_dev.$i`;
 }
 
 `ifconfig br0 up`;
  • If you are using a Cisco switch, you will need to add the following configuration to the VLAN Trunk port so that traffic from multiple MAC addresses do not cause the switch to shut the trunk port down.
 switchport trunk encapsulation dot1q
 switchport mode trunk
 spanning-tree portfast
 spanning-tree bpdufilter enable

Candela Technologies, Suite A, 2026 Main Street, Ferndale, WA 98248, USA | www.candelatech.com | sales@candelatech.com | +1 360 380 1618 (PST, GMT -8)

How can I tune my LANforge machine to run as fast as it can?

  • If you are running very fast (100Mbps+) connections, or connections over high-latency networks, you may want to increase the kernel buffers available to the networking stacks. Read and edit the gen_cfg.pl file that is installed in your /home/lanforge/ directory.
  • You can also try removing services that you do not need running on the system. We often remove Sendmail, iptables, ipchains, and the firewalling configuration from RedHat and Fedora Core Linux installations.
  • Turn off hardware you do not need. We often remove the usb-controller and usb-uhci modules from the /etc/modules.conf file, which may help with interrupt handling. Of course, if you need USB support, don't remove them!
  • Compile your Linux kernel for your particular architecture. For example, if you are running on Pentium-IV machines, tell the kernel-config tool to use the processor instructions for the Pentium-IV, not just the 486.
  • TCP tuning can improve the performance of Layer 4 cross connects such as HTTP:
    • Both Linux and Windows can have the TIME-WAIT parameter reduced for improved performance.
    • The range of usable ports on most Windows platforms can be increased from 5000 to a maximum of 65534 by editing the Registry Key MaxUserPorts.
    • A Linux TCP parameter that can improve Layer 4 performance is to enable fast recycling TIME-WAIT sockets

echo 1 > /proc/sys/net/ipv4/tcp_tw_recycle

Contact Candela Technologies if you still have performance problems, we may be able to offer advice tailored specifically for you.

Candela Technologies, Suite A, 2026 Main Street, Ferndale, WA 98248, USA | www.candelatech.com | sales@candelatech.com | +1 360 380 1618 (PST, GMT -8)

Solaris seems to default to very conservative tcp stack configuration with regard to running at decent speeds over a high-latency link. Here is some general information on the theory, and some specific resources for tuning Solaris to run faster over such links.

Here is a good link showing how latency affects bandwidth, and how to tune Solaris to make it run better on high-latency links. http://www-unix.gridforum.org/mail_archive/data-wg/pdf00000.pdf

Here is another page on tuning/diagnosing the Solaris tcp stack. http://www.jimparker.co.uk/technotes/tcp-tuning-solaris.html

Candela Technologies, Suite A, 2026 Main Street, Ferndale, WA 98248, USA | www.candelatech.com | sales@candelatech.com | +1 360 380 1618 (PST, GMT -8)

I want to build my own LANforge machines, what hardware do you suggest?

For moderate needs, a modern multi-core processor, 1GB+ RAM, and Intel pci-e NICs is a good choice.

Candela Technologies, Suite A, 2026 Main Street, Ferndale, WA 98248, USA | www.candelatech.com | sales@candelatech.com | +1 360 380 1618 (PST, GMT -8)

How do I apply the Candela Linux Kernel Patch and build the kernel?

To enable the Armageddon accellerated packet generator, MAC-VLAN virtual interfaces, and several other neat features that LANforge can use if present, you must patch the Linux kernel, compile it, and install it. These directions assume you are using RedHat 9 or higher, but most of the steps will be identical on other Linux distributions as well. Please note that the LANforge-ICE kernel module is NOT included in the patch and is proprietary code. You will have to use a pre-built LANforge kernel to use kernel-mode ICE. If you are skilled at these things, you can use our patch and build a kernel that can load the wanlink module found in our pre-compiled kernels.

You can also download pre-compiled LANforge Linux kernels here

  • First, download the linux kernel from www.kernel.org As of this writing, the correct kernel is 2.4.29 for distributions with the 2.4 kernel, and version 2.6.13 for newer distributions like Fedora Core 2.
  • De-compress the downloaded file:

tar -xvzf linux-2.6.13.tar.gz

  • Patch the Linux kernel with the Candela patch. The patch file is

found in the src/ directory on the CDROM, or in the LANforgeExtras downloadable package.

 cd linux-2.6.13
 patch -p 1 < candela_2.6.13.patch
 cd ..
  • Configure the Linux kernel.

First, copy the Candela kernel configuration file into place. This will be the basis of your configuration. Then we will start the Linux configuration tool.

 cp kernel26_p4s.cfg linux-2.6.13/.config
 cd linux-2.6.13
 make xconfig

At this point, you will need to at least specify the correct CPU that this kernel will be used with. Armageddon requires a CPU that is Pentium class or better. You can select the CPU by clicking on the “Processor type and features” button in the kernel xconfig GUI.

When done with the configuration, click on the “Save and Exit” button.

  • Building and installing the kernel.

First, make the dependencies, and then the kernel and it's modules. Finally, we'll install the modules and the kernel. You may have to edit /etc/lilo.conf or /etc/grub.conf to enable the selection of the new kernel.

 make dep
 make bzImage
 make modules
 make modules_install
 make install
  • You are done! Assuming everything worked as planned, you can reboot your system, choose the 2.6.11 kernel you just installed via the LILO or GRUB boot loader, and start it up! LANforge will detect and use the new features automatically.

Candela Technologies, Suite A, 2026 Main Street, Ferndale, WA 98248, USA | www.candelatech.com | sales@candelatech.com | +1 360 380 1618 (PST, GMT -8)

How do I configure CMC's EmulationEngine to work with LANforge?

First, get the EE ready to work by logging into it's serial console and running the commands:

scan
join

Then create some VSTAs on the emulation engine. You will need to use a range of MAC addresses that relate to your particular EE. The EE will print it's MAC when you log into it from it's serial console. The command below creates 64 VSTAs in layer-2 external mode, starting with MAC 00:0b:6b:30:05:01. Layer-3 mode can also work with LANforge, but Layer-2 is easier to configure and works with more protocols in LANforge:

autoconf 64 mac 00:0b:6b:30:05:01 mode external layer 2

Start all of the VSTAs:

run vsta all

Now, create an appropriate number of MAC-VLANs in LANforge. The easiest way is to use the 'Create' button on the Ports tab in the GUI. The starting MAC address range should match the command given to the EE CLI.

Make sure that the wired ethernet interface on the EE plugs into the LANforge port that has the MAC-VLANs configured on it. The peer LANforge endpoints should be on a network or interface connected to the wired side of your Wireless Access Point (AP). The EE and AP will act like a bridge, so the LANforge endpoints should be on the same subnet.

Candela Technologies, Suite A, 2026 Main Street, Ferndale, WA 98248, USA | www.candelatech.com | sales@candelatech.com | +1 360 380 1618 (PST, GMT -8)

How do I configure LANforge to emulate multiple NFS clients?

First, you must patch the 'mount' tool in the util-linux package to be able to bind to a local IP address. If you are using a kernel earlier than 2.6.23, apply the 'mount.patch' found in the LANforge-Extras package on the Downloads page and build as normal. If you are using a 2.6.23 or higher kernel, use the pre-patched nfs-utils-fc8-ct.tar.gz download from the same directory that contained the LANforge release. Save your old mount binaries aside and copy the new one into it's place. If you are using a pre-configured kernel from the Candela downloads page, it will already have the NFS related kernel patches applied. If you want to compile your own kernel, get the candela-2.6.X.X.patch from the LANforge-Extras package and use it to patch your kernel.

NOTE: There are some scripts to automate this. See the end of this section for details. Doing things manually will give you more flexibility, however.

Now, create several virtual interfaces in LANforge, giving them appropriate IP addresses. This can be done on the 'Port-Mgr' tab in the LANforge-GUI.

After the ports have been created, create local mount points in the file system, for instance:

mkdir /mnt/nfs1
mkdir /mnt/nfs2
mkdir /mnt/nfs3
...

Next, add the mount point to the /etc/fstab file. In the example below, it is assumed that the NFS server's IP address is 172.2.2.2 and that the server is exporting the export/nfs* directories. It is also assumed that you have several virtual interfaces on the 172.2.2.X subnet. For kernel 2.6.20-12 and below (LANforge 5.0.4 and below)

172.2.2.2/export/nfs1  /mnt/nfs1   nfs   noauto,local_ip=172.2.2.3   0 0
172.2.2.2/export/nfs1  /mnt/nfs2   nfs   noauto,local_ip=172.2.2.4   0 0
172.2.2.2/export/nfs2  /mnt/nfs3   nfs   noauto,local_ip=172.2.2.5   0 0
...

For kernel 2.6.23 and above (LANforge 5.0.5 and above), use this format:

172.2.2.2/export/nfs1  /mnt/nfs1   nfs   noauto,clientaddr=172.2.2.3   0 0
172.2.2.2/export/nfs1  /mnt/nfs2   nfs   noauto,clientaddr=172.2.2.4   0 0
172.2.2.2/export/nfs2  /mnt/nfs3   nfs   noauto,clientaddr=172.2.2.5   0 0
...

After setting up the /etc/fstab file similar to that above, you mount the NFS server:

mount /mnt/nfs1
mount /mnt/nfs2
mount /mnt/nfs3
...

Now, you can create File-IO tests in the LANforge GUI and configure the /mnt/nfs* directories to be used for reads and writes. As LANforge (or other tools) read and write files to the mount points, the traffic will go over the virtual interfaces, and the NFS server will believe that multiple individual machines are accessing it.

Automating NFS & CIFS testing with scripts:

  • Use the lf_macvlan.pl script to create many virtual interfaces and file-IO test endpoints
lf_macvlan.pl mgr=localhost lf1=1 lf2="" lf1_ports=0 lf2_ports="" cx_types=fileIONFS \
num_mvl=10 min_rate=1000000 max_rate=1000000 one_per_port=0 fsrw=write ip_base=172.100 \
ip_c=1 ip_lsb=2 ip_msk=255.255.0.0 create_only=1
  • Mount the NFS server using the macvlans:

./create-mounts.sh NFS eth6 0 9 172.100.1.1 /mnt/d2 /mnt/fio_base

After the tests are created and the mount points created and mounted, you can go to the LANforge-GUI and start selected tests.

Candela Technologies, Suite A, 2026 Main Street, Ferndale, WA 98248, USA | www.candelatech.com | sales@candelatech.com | +1 360 380 1618 (PST, GMT -8)

How do I configure LANforge to emulate multiple SMB (Samba, CIFS) clients?

First, you must patch the 'samba' application, which acts as the SMB client and/or server to be able to bind to a local IP address. Apply the 'samba_local_bind.patch' found in the http://www.candelatech.com/oss/ directory and build and install as normal. There are no kernel-specific changes needed, so any kernel that works with LANforge will be ok.

NOTE: This can be automated with scripts. See the bottom of this entry for more details.

Now, create several virtual interfaces in LANforge, giving them appropriate IP addresses. This can be done on the 'Port-Mgr' tab in the LANforge-GUI.

After the ports have been created, create local mount points in the file system, for instance:

mkdir /mnt/smb1
mkdir /mnt/smb2
mkdir /mnt/smb3
...

Next, add the mount point to the /etc/fstab file. In the example below, it is assumed that the SMB server's IP address is 172.2.2.2 and that the server is sharing the smb* directories. It is also assumed that you have several virtual interfaces on the 172.2.2.X subnet. The key is the local_ip and the local_dev settings. The IP should be the IP on the local device (interface).

//172.2.2.2/smb1  /mnt/smb1   cifs   noauto,local_ip=172.2.2.3,local_dev=eth2#0,username=lanforge,password=lanforge   0 0
//172.2.2.2/smb1  /mnt/smb2   cifs   noauto,local_ip=172.2.2.4,local_dev=eth2#1,username=lanforge,password=lanforge   0 0
//172.2.2.2/smb2  /mnt/smb3   cifs   noauto,local_ip=172.2.2.5,local_dev=eth2#2,username=lanforge,password=lanforge   0 0
...

After setting up the /etc/fstab file similar to that above, you mount the SMB server shares:

mount /mnt/smb1
mount /mnt/smb2
mount /mnt/smb3
...

You can also pass the local_ip and local_dev arguments directly to the smbmount tool if you do not wish to use the fstab.

Now, you can create File-IO tests in the LANforge GUI and configure the /mnt/smb* directories to be used for reads and writes. As LANforge (or other tools) read and write files to the mount points, the traffic will go over the virtual interfaces, and the SMB server will believe that multiple individual machines are accessing it.

Automating CIFS testing with scripts:

  • Use the lf_macvlan.pl script to create many virtual interfaces and file-IO test endpoints
lf_macvlan.pl mgr=localhost lf1=1 lf2="" lf1_ports=0 lf2_ports="" cx_types=fileIOCIFS \
num_mvl=10 min_rate=1000000 max_rate=1000000 one_per_port=0 fsrw=write ip_base=172.100 \
ip_c=1 ip_lsb=2 ip_msk=255.255.0.0 create_only=1
  • Mount the CIFS server using the macvlans:

./create-mounts.sh CIFS eth6 0 9 172.100.1.1 /mnt/d2 /mnt/fio_base

After the tests are created and the mount points created and mounted, you can go to the LANforge-GUI and start selected tests.

Candela Technologies, Suite A, 2026 Main Street, Ferndale, WA 98248, USA | www.candelatech.com | sales@candelatech.com | +1 360 380 1618 (PST, GMT -8)

How do I add IPv6 Addresses?

On Linux and Solaris, just use the Port-Mgr tab (modify port) in the LANforge GUI.

For windows: See this link for detailed information: http://www.microsoft.com/technet/network/ipv6/ipv6faq.mspx The rest of the windows commands expect to be run from a Command window.

 ipv6 install
 ipv6 -p adu {3AD34912-1F82-422C-8609-47C3EAC4ADC0}/2000::10

If your windows PC has both IPv4 and IPv6 addresses, you may need to follow the instructions at this link to properly set the prefix policy: http://oldwiki.openwrt.org/IPv6_howto.html#head-e3a3af5ba5b2a7f8f19e50a41276f883d9374bc4

How do I set a static or fixed IP address on the Management Interface in Linux?

For current LANforge releases, you can just use the GUI to set the preferred fixed address (or DHCP) from the Port-Mgr tab just as you would configure any other interface. For older releases, or if you prefer to do it manually, see below.

Please Note: You shoud NOT change the management interface's IP address while LANforge is running. You should first stop LANforge, then change the IP, then start LANforge again. Or, you can just reboot the machine and the new settings will take affect automatically.

To stop LANforge issue the command:

/home/lanforge/serverctl.bash stop

For Redhat, Fedora, and similar systems, you will edit the /etc/sysconfig/network-scripts/ifcfg-device-name file. These examples assume the management interface is called 'eth3'. Your system may be using a different management interface! A DHCP configuration file looks similar to:

DEVICE=eth3
ONBOOT=yes
BOOTPROTO=dhcp

To change to a fixed address, use settings similar to:

DEVICE="eth3"
ONBOOT="yes"
BOOTPROTO="static"
NM_CONTROLLED="no"
IPADDR="192.168.1.101"
NETMASK="255.255.255.0"

You may also want to configure the default Gateway/Router for the system by editing the /etc/sysconfig/network adding a line similar to:

GATEWAY="192.168.1.1"

To have the new settings take affect, you can bring the interface down and back up again with the commands (as user root):

ifdown eth3
ifup eth3

OR if connected via IP:

(ifdown eth3; ifup eth3)

OR as root issue:

# service network restart

To start LANforge issue:

/home/lanforge/serverctl start

Alternatively, reboot the system and LANforge will start automatically:

# reboot

Candela Technologies, Suite A, 2026 Main Street, Ferndale, WA 98248, USA | www.candelatech.com | sales@candelatech.com | +1 360 380 1618 (PST, GMT -8)

How do I configure PPP over T1?

If you order a complete hardware solution from Candela, everything will already be installed and configured for you. You may still want to look at the Digium PPP instructions at the bottom since it explains how to configure particular T1s and channels to run PPP.

  • Install kernel source. If you are using pre-built Candela kernels, you

will need to download the main kernel source from www.kernel.org and then patch with the appropriate candela patch (found in the LANforgeExtras package.)

  • For 2.4 distributions: Link this kernel source to /usr/src/linux. For

2.6 distributions, such as Fedora Core 2, fix the 'build' and 'source' links in /lib/modules/`uname -r`/ to link to the source.

  • Install Digium's driver:

cd /usr/src

export CVSROOT=:pserver:anoncvs@cvs.digium.com:/usr/cvsroot
cvs login   - the password is **anoncvs**
cvs -z3 co zaptel libpri asterisk
#Uncomment the following line in zconfig.h of the Zaptel package:
cd zaptel
vim zconfig.h
#define CONFIG_ZAPATA_PPP
make clean; make install  # In the zaptel directory.
  • If you are running udev on your system (2.6 kernels), follow the steps in /usr/src/zaptel/README.udev to allow the system to recognize the device.

Candela Technologies, Suite A, 2026 Main Street, Ferndale, WA 98248, USA | www.candelatech.com | sales@candelatech.com | +1 360 380 1618 (PST, GMT -8)

How do I configure PPPoE Server?

LANforge's PPPoE support has been tested with the Roaring Penguin PPPoE server. Here is a short guide to configuring it. Please see your PPPoE server's documentation for more detailed configuration information.

HOW TO SET UP PPPOE-SERVER FOR USE WITH LANFORGE

The following configuration works:

1. On the LANforge (PPPoE client) side:

Create a PPP-Link.  Use the default configation, except:

- Unit-Number = 0 (or a higher number if you are using 0).
- Select correct Shelf and Card for the client machine.
- (Local-IP and Remote-IP should remain 0.0.0.0 because these are
assigned by the server)
- Debug = ON (not necessary to make it work)
- (Auth should remain OFF).
- Persist = OFF (setting it to ON means LANforge won't log unexpected
losses of pppd connection, though this is fine as long as this is what
you want)
- Transport Type = PPPoE
- PPPoE-Port = the chosen ethernet interface.  Note that the (MGT)
interface works fine.

2. On the server side:

- Create /etc/ppp/pppoe-server-options containing these lines:
------------- SNIP
debug
noauth
------------- SNIP

noauth makes it so the client does not need to authenticate itself.
Alternatively you can use chap authentication via the
/etc/ppp/chap-secrets file on both client/server sides, and 'name
<user>' on the client side.

- Use this script to run it:

pppoe-server -I eth0 -L 192.168.140.1 -R 192.168.140.2 -F

The IP addresses should be in a /24 subnet you are not already using.

The client will be handed IP addresses starting from 192.168.140.2.

A successful debug output on the client side (in
/home/lanforge/pppLogs/ppp0-eth&lt;whatever>.log) looks like this:

using channel 50
Using interface ppp0
Connect: ppp0 &lt;--> /dev/pts/2
sent [[LCP|ConfReq id=0x1 &lt;asyncmap 0x0> &lt;magic 0x48c0c8c1> &lt;pcomp> &lt;accomp>]]
rcvd [[LCP|ConfReq id=0x1 &lt;magic 0x90d3ec0d>]]
sent [[LCP|ConfAck id=0x1 &lt;magic 0x90d3ec0d>]]
rcvd [[LCP|ConfRej id=0x1 &lt;asyncmap 0x0> &lt;pcomp> &lt;accomp>]]
sent [[LCP|ConfReq id=0x2 &lt;magic 0x48c0c8c1>]]
rcvd [[LCP|ConfAck id=0x2 &lt;magic 0x48c0c8c1>]]
sent [[LCP|EchoReq id=0x0 magic=0x48c0c8c1]]
sent [[CCP|ConfReq id=0x1 &lt;deflate 15> &lt;deflate(old#) 15> &lt;bsd v1 15>]]
sent [[IPCP|ConfReq id=0x1 &lt;compress VJ 0f 01> &lt;addr 192.168.137.6>]]
rcvd [[LCP|EchoReq id=0x0 magic=0x90d3ec0d]]
sent [[LCP|EchoRep id=0x0 magic=0x48c0c8c1]]
rcvd [[LCP|EchoRep id=0x0 magic=0x90d3ec0d]]
rcvd [[IPCP|ConfReq id=0x1 &lt;addr 192.168.140.1>]]
sent [[IPCP|ConfAck id=0x1 &lt;addr 192.168.140.1>]]
rcvd [[CCP|ConfReq id=0x1]]
sent [[CCP|ConfAck id=0x1]]
rcvd [[CCP|ConfRej id=0x1 &lt;deflate 15> &lt;deflate(old#) 15> &lt;bsd v1 15>]]
sent [[CCP|ConfReq id=0x2]]
rcvd [[IPCP|ConfRej id=0x1 &lt;compress VJ 0f 01>]]
sent [[IPCP|ConfReq id=0x2 &lt;addr 192.168.137.6>]]
rcvd [[CCP|ConfAck id=0x2]]
rcvd [[IPCP|ConfNak id=0x2 &lt;addr 192.168.140.2>]]
sent [[IPCP|ConfReq id=0x3 &lt;addr 192.168.140.2>]]
rcvd [[IPCP|ConfAck id=0x3 &lt;addr 192.168.140.2>]]
Cannot determine ethernet address for proxy ARP
local  IP address 192.168.140.2
remote IP address 192.168.140.1
Script /etc/ppp/ip-up started (pid 4188)
Script /etc/ppp/ip-up finished (pid 4188), status = 0x0

Candela Technologies, Suite A, 2026 Main Street, Ferndale, WA 98248, USA | www.candelatech.com | sales@candelatech.com | +1 360 380 1618 (PST, GMT -8)

How do I configure Asterisk for SIP Phones?

First, download and install Asterisk from www.asterisk.org. To build/install, I used these commands (see their README):

make
make install
make samples

Then added these lines to /etc/asterisk/sip.conf:

  ; Grandstream
  [1001]
  type=friend
  host=dynamic

  ; cisco phone
  [1002]
  type=friend
  host=dynamic

Then add these lines to /etc/asterisk/extensions.conf:

  exten => 1001,1,Dial(SIP/1001,200,tr)
  exten => 1002,1,Dial(SIP/1002,200,tr)

My phones register as phone numbers 1001 and 1002. There may be a better way to do it, but with this config I was able to make calls…

Candela Technologies, Suite A, 2026 Main Street, Ferndale, WA 98248, USA | www.candelatech.com | sales@candelatech.com | +1 360 380 1618 (PST, GMT -8)

How do I import LANforge spreadsheets into Excel or Open Office Calc?

All that is required is to add the .csv file extension to the spreadsheet file you wish to import into OOCalc. Excel automatically recognizes the default .txt extension and imports correctly.

Candela Technologies, Suite A, 2026 Main Street, Ferndale, WA 98248, USA | www.candelatech.com | sales@candelatech.com | +1 360 380 1618 (PST, GMT -8)

How do I convert Unix timestamps in CSV spreadsheets to a Human readable format in Excel or Open Office Calc?

Insert a column after the Unix timestamp and enter the following formula into the first blank cell of the new column:

   ((A2/1000)+(-8*3600)+((365*70+19)*86400))/86400
  • A2 is the cell containing the Unix timestamp.
  • -8 is the number of hours from GMT for PST timezone, change to your specific timezone.

Copy this formula down the entire column ensuring that the A2 element of the formula increases down the column.

Format the new column so that the cells are in Date format:

   MM/DD/YYYY HH:MM:SS.000

which will show the date and time with milliseconds.

Candela Technologies, Suite A, 2026 Main Street, Ferndale, WA 98248, USA | www.candelatech.com | sales@candelatech.com | +1 360 380 1618 (PST, GMT -8)

How do I get QoS to work in Windows?

By default, Windows does not support QoS. To enable it, please see this page: http://support.microsoft.com/default.aspx?scid=kb;EN-US;q248611

Candela Technologies, Suite A, 2026 Main Street, Ferndale, WA 98248, USA | www.candelatech.com | sales@candelatech.com | +1 360 380 1618 (PST, GMT -8)

How do I get the LANforge GUI animated graphs to display correctly on Windows?

Sometimes, the animated graphs shown after clicking the Display button will be blurry or rendered incorrectly. This might be due a combination of interactions between Windows, Direct3D, Java and graphics card driver. Workarounds for the problem are documented under SUN Java bug 6213204. The workarounds involve changing the way the graphics driver performs 3D aliasing and/or invoking Java without Direct3D using one or more of the following the command line flags:

-Dsun.java2d.d3d=false -Dsun.java2d.ddoffscreen=false -Dsun.java2d.noddraw=true

Example:

jre\bin\java.exe -cp lfclient.jar;./ -Dsun.java2d.d3d=false candela.lanforge.lfclient

Candela Technologies, Suite A, 2026 Main Street, Ferndale, WA 98248, USA | www.candelatech.com | sales@candelatech.com | +1 360 380 1618 (PST, GMT -8)

How do I get LANforge ICE to work on Windows?

On Windows XP, perform the following for every “LAN Area Connection” that will be used by LANforge ICE:

 Click Start then click Network Connections to open the "Network Connections" window.

OR Click Start, Control Panel, Network and Internet Connections, and finally click Network

 Connections.
Right click "LAN Area Connection N", where N is the number of the LAN connection you want 
to use with LANforge ICE.  For the first LAN Area Connection of your system N will be 
blank.
Click on Properties to bring up the "Local Area Connection N Properies" window. 
Under "The connection uses the following items:", scroll down to "Internet Protocol 
(TCP/IP)" and uncheck the box.
Click "OK" and the LAN Area Connection is ready to use with LANforge ICE.

For other Windows versions the procedure is similar, the key is to disable “Internet Protocol (TCP/IP)” on the LAN Area Connetion. Other services such as “QoS Packet Scheduler” should probably be disable although we have not noticed any impact to LANforge performance.

Candela Technologies, Suite A, 2026 Main Street, Ferndale, WA 98248, USA | www.candelatech.com | sales@candelatech.com | +1 360 380 1618 (PST, GMT -8)

Why does LANforge ICE sometimes have more latency than configured?

LANforge ICE injects serialization delay for packets which might be the reason why the measured latency is higher than the configured latency.

Serialization Delay (ms) = Size of Packet (bits) / Transmission Rate (kbps)

Candela Technologies, Suite A, 2026 Main Street, Ferndale, WA 98248, USA | www.candelatech.com | sales@candelatech.com | +1 360 380 1618 (PST, GMT -8)

How do I make the Telnet CLI readable under Windows?

Please use PuTTY, which can be downloaded here: putty.exe

For PuTTY, you need the following Telnet settings under Terminal: disable “Auto wrap mode initially on” and enable “Implicit CR in every LF”, all other Telnet settings are default PuTTY.

Candela Technologies, Suite A, 2026 Main Street, Ferndale, WA 98248, USA | www.candelatech.com | sales@candelatech.com | +1 360 380 1618 (PST, GMT -8)

How do I stop LANforge from starting automatically under Windows?

  • Back up your Registry before editing it.
  • Run regedit and delete the following String Values:
     LANforge Data Generator REG_SZ C:\Program Files\LANforge-Server\lfserver.bat
     LANforge Manager        REG_SZ C:\Program Files\LANforge-Server\lfserverm.bat
  • The String Values are located in:
     My Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run

Candela Technologies, Suite A, 2026 Main Street, Ferndale, WA 98248, USA | www.candelatech.com | sales@candelatech.com | +1 360 380 1618 (PST, GMT -8)

How do I install Virtual Network Computing (VNC) on my Linux machine?

NOTE: Low powered machines and low-memory machines may see a significant performance drop if VNC is running.

  • Install the VNC Server software:
yum install vnc-server
  • Edit the VNC Server text file:
vi /etc/sysconfig/vncservers
  • Add this to the end of the file:
     VNCSERVERS="1:lanforge"
     VNCSERVERARGS[[1]]="-geometry 1280x1024"
  • Setup the VNC password:
     su - lanforge
     vncpasswd
  • As root user, enable vncserver using the System Services Utility:
ntsysv
  • Select [*] vncserver
  • Start VNC manually as root:
/etc/init.d/vncserver start
  • Edit the xstartup file to tune VNC settings:
vi /home/lanforge/.vnc/xstartup
  • Modify the text to look like this (copy 'vncconfig' line to new location and comment out original, uncomment 2 lines for normal desktop):
     #!/bin/sh
     
     vncconfig -nowin &
     
     # Uncomment the following two lines for normal desktop:
     unset SESSION_MANAGER
     exec /etc/X11/xinit/xinitrc
     
     [|-x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
     [|-r $HOME/.Xresources ] && xrdb $HOME/.Xresources
     xsetroot -solid grey
     #vncconfig -iconic &
     xterm -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &
     twm &
  • Restart VNC server:
/etc/init.d/vncserver restart
  • Startup VNC on another machine:
vncviewer [ip of lanforge machine]:1
  • Enter the password (created earlier with vncpasswd command above)

Candela Technologies, Suite A, 2026 Main Street, Ferndale, WA 98248, USA | www.candelatech.com | sales@candelatech.com | +1 360 380 1618 (PST, GMT -8)

How can I optimize LANforge-Server performance on Windows?

  1. Time-sync all servers
  2. Start btserver.exe with High base priority using “start” command (start /? for help)
  3. Set Performance Option to application (unless you run btserver.exe as a service)
  4. Turn off firewalls, ad-aware and unnecessary services. Check for spyware that might reduce performance.
  5. Use more beneficial TCP/IP parameters in the registry
  6. The taskmgr can cause jitter due to it's high base priority
  7. Additional suggestions

Candela Technologies, Suite A, 2026 Main Street, Ferndale, WA 98248, USA | www.candelatech.com | sales@candelatech.com | +1 360 380 1618 (PST, GMT -8)

Does LANforge need special Ethernet Network Interface Cards (NICs)?

No. LANforge should work with any NIC that the host OS supports. However, we suggest Intel PCI-e NICs for good stability and performance.

Candela Technologies, Suite A, 2026 Main Street, Ferndale, WA 98248, USA | www.candelatech.com | sales@candelatech.com | +1 360 380 1618 (PST, GMT -8)

What sort of backdoor configuration hacks are available in LANforge?

  • DOPKTGEN_RT If you create an empty file called DOPKTGEN_RT in the directory where the LANforge Resource is installed on Linux, then the Armageddon feature will run with real-time scheduling, possibly giving you better performance. It can also lock up the system if you use this on a very fast network, very slow CPU, and very fast traffic rate configured into the Armageddon endpoint on all Armageddon threads.
  • wait_for_a_bit If you create an empty file called wait_for_a_bit in the directory where LANforge is installed, the process will sleep for 10 seconds before it starts doing anything. If you are fast, you can attach with a debugger during this time, for instance.
  • NO_REL_TS If you create an empty file called NO_REL_TS in the directory where the LANforge Resource is installed, kernel mode WanLink processes will never use relative timestamps, even if the cpufreq does not appear to be active. This is needed on at least some Intel Atom processor systems where the CPU and/or BIOS appears to run CPU-freq scaling without any help or hindrance from the OS.
  • LF_STA_BR_ANSWER_ARP Create an empty file called LF_STA_BR_ANSWER_ARP if you would like WiFi stations to answer ARP requests themselves. Also requires that the bridge IP be set for the station. You should not enable this unless you understand the consequences. This option also enables ARP from unknown devices on the bridged Ethernet port to be sent out the first WiFi station that is found. This flag also causes DHCLIENT leases to be removed before (re)starting dhclient. This last part should be moved into a proper per-port flag in future releases.
  • wpa_supplicant_args.txt You can create this file with extra arguments to be passed to the wpa_supplicant process when it is started. Can be used to influenced logging levels, etc.
  • hostapd_args.txt You can create this file with extra arguments to be passed to the hostapd when it is started. Can be used to influenced logging levels, etc.
  • LF_DONT_USE_RCVMMSG Don't use the recvmmsg call even if OS and kernel support it. This would only be useful to work around some bug with recvmmsg. No bugs are known at this time.
  • LF_DONT_USE_SENDMMSG Don't use the sendmmsg call even if OS and kernel support it. This would only be useful to work around some bug with sendmmsg. No bugs are known at this time.

Candela Technologies, Suite A, 2026 Main Street, Ferndale, WA 98248, USA | www.candelatech.com | sales@candelatech.com | +1 360 380 1618 (PST, GMT -8)

How do I set up Munin to monitor LANforge WiFIRE Stations?

Munin is a client/server tool that allows you to monitor many different types of data on your systems. Several plugins are available at the Munin Exchange. The one discussed here is: if-v2 for wireless statistics. These instructions are for a Fedora OS installation.

How do I attempt to recover a non-booting LANforge system?

  • If your system is still under warranty, please contact support@candelatech.com to notify us of the problem.
  • If the system is not booting, you can attempt a file system check to repair any minor problems.
    • Download and burn to CD a Linux Live image such as Fedora 19 Live
    • Boot the Fedora 19 Live CD and select Try Fedora
    • Select the Activities menu and search for Terminal to bring up a terminal window
    • To search for logical volumes:
      •  sudo lvscan 
    • Attempt to find and fix file system errors:
      •  sudo fsck -fvy /dev/mapper/VolGroup-lv_home 
    • To search for standard partitions:
      •  sudo fdisk -l 
    • Attempt to find and fix file system errors:
      •  sudo fsck -fvy /dev/sda1 
  • If fsck is unable to find and fix your file system errors, you may have bad hardware or otherwise unrecoverable problems with the system. You can contact support@candelatech.com for further assistance including finding out whether your system is still under warranty for possible RMA.

Candela Technologies, Suite A, 2026 Main Street, Ferndale, WA 98248, USA | www.candelatech.com | sales@candelatech.com | +1 360 380 1618 (PST, GMT -8)

lanforge-faq.txt · Last modified: 2014/06/17 09:52 by greearb