====== 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 ==== * Linux config: <code> CONFIG_BRIDGE=y CONFIG_TUN=y </code> * ''tunctl'' tool * ''brctl'' tool ==== Setting up the bridge ==== Assuming ''eth0'' is the primary network interface used for networking. * Disable current networking * Add a bridge <code> # brctl addbr br0 </code> * Add ''eth0'' to the bridge <code> # brctl addif br0 eth0 </code> * Start networking on ''br0'' <code> # dhclient br0 </code> At this point networking should be working as normal. ==== Setting up the tap interfaces ==== * Create a tap device <code> # tunctl -u $USER -t tap1 # -u so that we don't need root to access the device </code> * Enable it <code> # ifconfig tap1 up </code> * Add it to the bridge <code> # brctl addif br0 tap1 </code> At this point the tap1 interface should be usable in gPXE usermode. Multiple interfaces can be added like that.