Last modified 2017-09-25 00:25:11 CDT


The BeagleBone Network Multitool (beaglenmt) is a lightweight buildroot-based, X11-free, networking-centric, IPv6-ready distribution for the BeagleBone platform. beaglenmt includes an assortment of networking tools so that it may be used as a secure proxy or for various networking experiments:

The resulting system is 135MB in size. Follow the instructions below to build it.


The configuration files and instructions to build beaglenmt are available here:

Booting up

Insert the SD card, press and hold the boot button, apply power to the BeagleBone, then release the boot button.

beaglenmt is accessible from first boot via the serial port, ethernet (DHCP), and usbnet (static IP

The first boot may take a few extra seconds as sshd automatically generates server keypairs for SSH.

Serial Port

Start your favorite serial port terminal attached to the console serial port device (e.g. /dev/ttyUSB0). In the case of a BeagleBone Black, connect a USB to UART cable (e.g. TTL-232R-3V3) to the console UART header in advance (black pin towards ethernet port). Observe the boot in your serial port terminal.


beaglenmt brings up the eth0 interface with DHCP on boot. Ethernet connectivity must be present at boot for the DHCP client to obtain a lease. Once the BeagleBone is online, connect to it over SSH with user root.


beaglenmt loads the USB Ethernet Gadget module on boot to enable the usb0 interface, and brings up the interface with the static IP address and network mask To connect to the BeagleBone over usbnet, bring up your host’s usb0 interface (or whichever name it takes on your system) with a static IP address on the same subnetwork.

host $ sudo ifconfig usb0 up
host $ ping
PING ( 56(84) bytes of data.
64 bytes from icmp_seq=1 ttl=64 time=0.595 ms
64 bytes from icmp_seq=2 ttl=64 time=0.475 ms
64 bytes from icmp_seq=3 ttl=64 time=0.407 ms
--- ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 1999ms
rtt min/avg/max/mdev = 0.407/0.492/0.595/0.079 ms
host $

Connect to the BeagleBone at IP address over SSH with user root.


# passwd
# adduser foobar
# addgroup foobar wheel
host $ ssh-copy-id foobar@beagleboneip

All done!


Creative Commons License