IPXE
PXEの実装
iPXEは、サポートされている ネットワークインターフェースカード （NIC）上に存在する標準PXE ROMを置き換え(re-flashing) るか、NICの標準PXE ROMでブートし、iPXEバイナリを chainloading するかでコンピュータによって起動出来るので、NICを再書き込みせずにその機能を使う事ができる。iPXEファームウェアは、その構成スクリプトをファームウェアイメージに埋め込むことが出来るので、何らかの構成変更は、NICの再書き込みを必要とする。
iPXEは、iPXEによって提供されるネットワークカードドライバを使うか、iPXEが標準PXE ROMからiPXEがチェーンロードされた場合、標準 PXE UNDI ドライバのどちらかを使う、固有のPXEスタックを実装する。独立したPXEスタックの実装は、NIC上に標準 PXE ROMがないクライアントが、代替の媒体からロードすることにより、代替 iPXEスタックを使えるようにする。
ブートマネージャ
基本的な役割が、PXEスタックを実装することにもかかわらず、iPXEは、エンドユーザーがメニューベースで対話しながら操作する限定的な機能を持つ、ネットワークブートマネージャとして使用することができる。iPXEは、たとえばTFTP, NFS, HTTP または FTP.のような複数のネットワークプロトコルを使ってブートファイルを読み出せる。
iPXEは、マルチブートをサポートする、Linux カーネル用のブートローダとして振る舞うことが出来る。他のOS向け、たとえば Windows CE では、iPXEは、適切なMicrosoft ブートローダをチェインロードする。更に、iPXEは、スクリプトによる設定が可能で、 COMBOOT とCOM32 SYSLINUX 拡張をロード出来る。たとえば、SYSLINUXベースのグラフィカルメニューにネットワークブートを有効にする。