Table of Contents

Piotr Jaroszyński: Usermode debugging under Linux

How to use Linux usermode

Building

$ make bin-x86_64-linux/gpxe.linux

Runing

$ ./bin-x86_64-linux/gpxe.linux --net tap,if=tap3,mac=52:54:00:12:34:56 --net tap,if=tap4,mac=52:54:00:12:34:57 # etc

Setting up tap

Prerequisites

  CONFIG_BRIDGE=y
  CONFIG_TUN=y

Setting up the bridge

Assuming eth0 is the primary network interface used for networking.

  # brctl addbr br0
  # brctl addif br0 eth0
  # dhclient br0

At this point networking should be working as normal.

Setting up the tap interfaces

  # tunctl -u $USER -t tap1 # -u so that we don't need root to access the device
  # ifconfig tap1 up
  # brctl addif br0 tap1

At this point the tap1 interface should be usable in gPXE usermode. Multiple interfaces can be added like that.