ทำ Template VM Ubuntu ตั้งแต่ 18.04 ขึ้นไปให้ Clone แล้ว dhcp แล้วได้ IP Address ไม่ซ้ำกัน
สำหรับ Linux Distro ที่ใช้ netplan ในการควบคุมการทำงานของ Network ตั้งแต่ Ubuntu 18.04 เป็นต้นมานั้น โดยพื้นฐานจะอิงค่าจาก /etc/machine-id ซึ่งจะเป็นค่าเฉพาะ เมื่อ dhcp server assign IP มาให้ หากตัว VM ที่ clone มานั้นมีค่า machine-id เหมือนกัน จะได้เบอร์ IP Address เหมือนกัน
หาก Clone เครื่องเดียวใช้ สามารถแก้ไขตามวิธีนี้
- เปิด VM ที่ Clone มา รันคำสั่งตามด้านล่างนี้
ลบไฟล์ machine-id
rm /etc/machine-id
rm /var/lib/dbus/machine-id
systemd-machine-id-setup - Restart VM
แต่หากต้องการทำเป็น VM template เพื่อที่เวลา Clone VM จาก template ที่สร้างไว้ จะได้รับ dhcp โดยอิงจาก mac address ของการ์ดแลน ใน VM ซึ่งจะทำการคอนฟิกไฟล์ /etc/netplan/*.yaml โดยในไฟล์มีเนื้อหา ดังนี้
จากตัวอย่างเป็นคอนฟิกจาก Ubuntu 20.04 Desktop ซี่งใช้ NetworkManager บน GUI ด้วย หากเป็นฝั่ง Server ให้เปลี่ยนบรรทัด renderer เป็น renderer: networkd
ปิด VM ลง และทดสอบ Clone VM จาก template และเปิด VM ขึ้นมาจะพบว่าได้ IP ใหม่เรียบร้อย