Preboot Execution Environment หรือ PXE (อ่านว่า "พิกซี") เป็นสภาพแวดล้อม client-server ที่ทำให้คอมพิวเตอร์เครือข่ายสามารถบูทผ่าน network interface card (NIC) แทนที่จะเป็นจาก CD-ROM หรือฮาร์ดดิสก์
PXE network boot ทำงานโดยใช้โปรโตคอลเครือข่ายหลายตัว: Internet Protocol (IP), Dynamic Host Configuration Protocol (DHCP), User Datagram Protocol (UDP) และ Trivial File Transfer Protocol (TFTP)
PXE มีบทบาทสำคัญช่วย IT managers จัดการเครื่อง client ที่ไม่มีอุปกรณ์จัดเก็บข้อมูล เนื่องจาก PXE เป็น vendor-independent จึงอนุญาตให้เพิ่มระบบใหม่เข้าเครือข่าย และช่วยลดความซับซ้อนในการบำรุงรักษาระบบ
มาตรฐานอุตสาหกรรมเปิดนี้เป็นส่วนหนึ่งของ Wired for Management (WfM) framework ที่ Intel และ Microsoft กำหนดในปี 1998 แม้ Active Management Technology จะมาแทนที่ PXE แต่ PXE ยังคงเป็นเครื่องมือสำคัญสำหรับ network administrators ในองค์กร
ทำความเข้าใจกระบวนการ PXE booting
คอมพิวเตอร์บูทผ่านเครือข่ายได้หลายวิธี PXE เป็นหนึ่งในนั้น PXE ทำงานกับ NIC ของระบบ ทำให้ NIC ทำหน้าที่เหมือน boot device PXE พัฒนาจากยุคก่อนคอมพิวเตอร์มี internal disk drives
ขั้นตอนกระบวนการ PXE booting
- NIC ที่เปิดใช้งาน PXE บน client system ส่ง broadcast request ไปยัง DHCP server ในรูปแบบ "discover" packet
- DHCP server ตัดจับ request นี้
- ตอบกลับด้วย "offer" packet ที่มีที่อยู่ TFTP server (ที่เก็บ boot files), boot image (pxelinux.0), และข้อมูลมาตรฐาน: IP address, subnet mask, DNS ฯลฯ
- Client system ได้รับข้อมูลจาก server
- วิเคราะห์ offer ของ server แล้วได้รับ network parameters ต่างๆ (IP address, subnet mask)
- Client ติดต่อ PXE boot server (TFTP server) ขอ boot image
- PXE boot server ส่ง boot image ผ่าน TFTP
- Client รัน boot image
- Boot image ค้นหา directory pxelinux.cfg บน TFTP server สำหรับ boot configuration files
- Client ดาวน์โหลดและโหลดไฟล์เกี่ยวกับ kernel และ root system
- สุดท้าย Client system reboot
ใน DHCP server ตั้งค่า Option 66 หรือ 67 ภายใต้ scope หรือ server options ด้วยข้อมูลที่จำเป็น Option 66 ระบุ server ที่ต้องติดต่อ Option 67 ระบุชื่อไฟล์ที่ต้องขอ วิธีนี้ช่วยโหลดและเปิดใช้ boot files สำหรับ client system ทำงานดีเมื่อ client และ server อยู่ network segment เดียวกัน และใช้ device architecture เดียว
ข้อได้เปรียบของ PXE booting
PXE network booting มีประโยชน์ในสภาพแวดล้อมไม่มีดิสก์ บูทผ่าน routers และอุปกรณ์ที่จัดการแบบรวมศูนย์ ข้อได้เปรียบสำคัญ:
- Client ไม่ต้องมี OS หรืออุปกรณ์จัดเก็บข้อมูล
- ส่วนใหญ่ทำงานระยะไกล ประหยัดเวลาและความพยายามของ IT managers
- จัดเก็บและควบคุมข้อมูลแบบรวมศูนย์ได้ ให้ความปลอดภัยข้อมูลน่าเชื่อถือมากขึ้น
- PXE เป็น vendor agnostic เพิ่ม client ใหม่เข้าเครือข่ายได้ง่ายตามความต้องการธุรกิจ
การปิดใช้งาน PXE boot
PXE เปิดใช้งานโดยค่าเริ่มต้นบนคอมพิวเตอร์ทุกเครื่อง แต่สามารถปิดได้ ขั้นตอนแตกต่างตาม vendor แต่โดยทั่วไป ปิด PXE ได้เฉพาะจาก BIOS (Basic Input Output System) interface บางเครื่อง BIOS เรียกว่า System Setup screen
ขั้นตอนปิดใช้งาน PXE boot
- เข้า "Setup" เมื่อเปิดเครื่อง ปกติกด F2, F12 หรือ ESC เมื่อโหลด splash screen เริ่มต้น
- คลิกแท็บ Advanced หาตัวเลือก "Integrated Devices"
- หาตัวเลือก "Network Interface Controller"
- ตั้งค่าเป็น "On" แทน "On with PXE" เพื่อปิด PXE (คำพูดอาจต่างตาม vendor)
- สิ้นสุดการปิด PXE
- บางระบบไม่มีตัวเลือก PXE ให้ไปที่ "Boot Order" หรือ "Boot Sequence" (อาจอยู่ในแท็บ Advanced)
- ย้าย network card ไปด้านล่างสุดของรายการ boot order ปิด PXE ทำให้บูทจาก hard drive หรือ media อื่นแทน NIC
- บันทึกการเปลี่ยนแปลงและออกจาก BIOS setup
ความแตกต่างระหว่าง PXE และ iPXE
PXE และ TFTP ออกแบบสำหรับเครือข่ายไม่เสถียร ความเร็วต่ำ แต่ตอนนี้ Gigabit networks กลายเป็นที่นิยม PXE และโปรโตคอลเกี่ยวข้องล้าสมัย iPXE เป็น network boot firmware โอเพนซอร์ส license GNU GPL iPXE รวมอยู่ในผลิตภัณฑ์จากผู้ผลิต network card และ OEM หลายแห่ง
iPXE ขยายกระบวนการ PXE boot แบบดั้งเดิม ให้บูทจาก:
- web server ผ่าน HTTP
- เครือข่ายไร้สาย
- WAN
- คลาวด์
- iSCSI SAN
- fiber channel SAN ผ่าน FCoE
- ATA over Ethernet (AoE) SAN
- Infiniband network
- USB media
- USB Ethernet
iPXE ให้แอดมินควบคุมกระบวนการบูทด้วยสคริปท์ iPXE แทนที่ PXE ROM บน NIC ของคอมพิวเตอร์ได้ ผู้ใช้ยังสามารถ chain load เข้า iPXE ใช้ฟีเจอร์โดยไม่ต้อง reflash