The Core Linux is a small modular Linux distribution that provides only a command line interface and tools that allows you to build your own application extensions. Thanks to these extensions you can easily turn your Core installation to a custom appliance such as network host, router, switch, server. Moreover choosing the Core Linux as an operating system for your appliance significantly reduces the size of the appliance.
Two weeks ago I started to build a network host that can handle network traffic. I installed the latest 64 bit Linux Core 6.3 on VMware virtual disk and loaded Core with extensions that can generate traffic, measure bandwidth, route, forward and filter traffic. A list of the extensions, their purpose and configuration changes is mentioned here.
I share my own network host VMware disk in Linux Core download section. You can create a new virtual machine (VirtualBox, VMware Workstation/Player, Qemu) with the disk attached and use it in your GNS3 labs in order to simulate network host. The disk contains the following tcz extensions:
bash - 4.3.39(1) with patches up to 39
bash-completion - 2.1
d-itg - 2.8.1-r1023
hping3 - 3.0.0-alpha-1
iperf3 - 3.1b3
iproute2 - 3.14.0
iptables - 1.4.21
ipv6-3.16.6-tinycore64 - 3.16.6
libpcap - 1.7.4
mtr - 0.86
ncat - 6.40
netfilter-3.16.6-tinycore64
nmap - 6.40
openssh - 6.0p1
openssl-1.0.0
tcpdump - 4.7.4
Note:
If you want to use application which is not on the list, install appropriate extension with the command:
$ tce-load -wi your_extension.tcz
If the extension is not available in Tinycore public repository (HTTP/1.1 404) you have to create it by yourself. Once you have it ready, copy the files extension.tcz, extension.tcz.md5.txt and extension.tcz.dep to the directory /mnt/sda1/tce/optional/. You also need to update the list of after boot loaded extension - file /mnt/sda1/tce/onboot.lst. If you want to know more about a file architecture check this picture.