เราเคยสงสัยไหมว่า ทำไม Server แต่ละเครื่อง ถึงตั้งชื่อ Network Ineterface Card ( NIC ) ที่แตกต่างกัน ?
เมื่อก่อน = eth0 , eth1
เดี๋ยวนี้ = eno1 , eno2
และบางที = ens1 , ens2
และบางทีก็ = enp1s0 , enp2s0
และบางทีก็มี = enx78e7d1ea46da , ...
ทำไม ? เพราะอะไร ? ตกลงยังไง ? ใครกำหนดชื่อ ?
หลังจากที่แอดมินพบปัญหานี้ ตอนอัพเกรด server hardware ( pci-e ) แล้วชื่อ nic เปลี่ยนไป ทำให้ต้องค้นหาวิธี fix ให้ชื่อ nic คงที่
จึงสรุปได้ความดังนี้ ...
เมื่อก่อน
- eth0 คือตัวแรก
- eth1 คือตัวสอง , eth2 = คือตัวสาม
- บางเหตุการณ์ ถอดตัว 2 ออก แล้วเสียบตัวที่ 4 เข้าไปตัว 2 , ทำให้ชื่อ eth0,1,2,3 เปลี่ยน สลับ และเพี้ยนกันไปหมด
- ปั่นป่วน วุ่นวาย ระบบล่มเลยสิ ถ้าชื่อมันสลับกันมั่วแบบนี้
- เค้าเลยยกเลิกวิธีตั้งชื่อแบบนี้
ปัจจุบัน
- linux แต่ละ distro จึงมีวิธีตั้งชื่อ nic แตกต่างกันไป
- ไม่เพียงแต่ละ distro เพราะแต่ละ version ก็ปรับเปลี่ยนวิธีตั้งชื่อด้วย เช่น debian แต่ละ version ก็อาจจะกำหนดชื่อต่างกัน
- ปัจจุบันจึงกำหนดวิธีตั้งชื่อดังนี้ ...
- ตั้งชื่อตามลำดับของ Firmware/BIOS on-board devices
- ผลที่ได้คือ eno1 , eno2 , eno3 นั่นเอง
- จำง่ายๆว่า o คือ onboard index
- ตั้งชื่อตามลำดับของ slot PCI-E บน Firmware/BIOS
- ผลที่ได้คือ ens1 , ens2 , ens3 นั่นเอง
- จำง่ายๆว่า s คือ slot index
- ตั้งชื่อตามตำแหน่งของ Connector ที่อยู่กับเครื่อง ( physical/geographical location of the connector of the hardware )
- ผลที่ได้คือ enp1s0 , enp2s0 , enp3s0 นั่นเอง
- จำง่ายๆว่า p คือ pci และ s คือ slot ( เช่น enp3s0 คือ pci ที่ 3 และ slot ที่ 0 )
- ตั้งชื่อตาม MAC address
- ผลที่ได้คือ enx78e7d1ea46da นั่นเอง
- จำง่ายๆว่า ชื่อยาวๆแบบนี้เป็น mac address แน่ๆ
ส่วน eth0 และ eth1 นั้น เริ่มจะเลิกใช้กันแล้วครับ
บทความหน้า ... แอดมินจะแนะนำวิธีการ Fix ชื่อ NIC ให้เป็นชื่อเดิมตลอด แม้ว่าจะเปลี่ยนตำแหน่ง Slot PCI-e หรือสลับตำแหน่ง NIC กันแล้วก็ตาม
ติดตามบทความใหม่ๆ ได้ใน Facebook Pages
ปรึกษา / สอบถาม / พูดคุยกับแอดมิน ผ่าน LINE ไอดี @limitrack
: ทีมงาน www.Limitrack.com :