[RHEL] แก้ปัญหา VM ที่มี 2 Network Card แล้วตัวที่ 2 ไม่ได้ IP ครับ

ปกติตอนที่ผมสร้าง VM ของ Linux ผมจะสร้าง Network Card ไว้ 2 ตัวครับ

  • ตัวแรกเชื่อมต่อแบบ NAT - เอาไว้ใช้เนตจาก Host ในการ Update Package ต่างๆ
  • ตัวสองเชื่อมต่อแบบ Bridge - เอาไว้ให้เครื่องอื่น Access เข้ามาครับ เช่น เปิดเป็น DB Server หรือ Web Server เป็นต้นครับ

ถ้าหากเป็นพวก Ubuntu มันใช้งานได้ปกตินะครับ ทั้ง NAT และ Bridge ครับ แต่พอมาเล่น Redhat หรือ CentOS ผมมักเจอปัญหาว่า Network Card ตัวแรกใช้งานได้ แต่ตัวที่สองใช้งานไม่ได้ซะงั้น

  • ถ้าลองคำสั่ง ip addr พบว่า
    • enp0s3 : NAT ได้ IP นะ
    • enp0s8 : ฺBridge ไม่ได้ IP ซะงั้น
  • ปกติแล้วพวก Config ของ Network Card ใน Linux ตระกูล RHEL (RedHat / CentOS / Fedora) ถูกเก็บไว้ที่ /etc/sysconfig/network-scripts/ โดยทุก Network Card มีรูปแบบการตั้งชื่อ ifcfg-<ชื่อ Network Card> เช่น ifcfg-enp0s3 (ของ Network Card ที่เป็น NAT) ครับ
[root@localhost ~]# ls  /etc/sysconfig/network-scripts/
ifcfg-enp0s3  ifcfg-enp0s8
  • เราต้องมาแก้ไข ให้ตอนที่เปิด VM แล้วเนี่ย ให้ Network Card ตัวที่ 2 ที่เป็น Bridge ได้ IP ด้วยครับ โดยต้องไปแก้ไขไฟล์ ifcfg-enp0s8 ซึ่ง อยู่ที่ Path /etc/sysconfig/network-scripts/ ครับ ในกรณีนี้ของใช้ VI ครับ ซึ่งคำสั่งที่ได้จะเป็นตามนี้ครับ
vi /etc/sysconfig/network-scripts/ifcfg-enp0s8
  • พอเข้ามาที่ไฟล์ ifcfg-enp0s8 สนใจที่ properties ONBOOT ครับ ของเดิมมีค่าเป็น no ครับ
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=dhcp
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=enp0s8
UUID=8524b4d2-6491-4fc4-aeeb-7cf89a512b4b
DEVICE=enp0s8
ONBOOT=no <<< ต้องแก้ให้เป็น yes ครับ
  • ต้องแก้ไขค่า properties ONBOOT จากค่า no เป็น yes ครับ ถ้าใครใช้ vi ตามขั้นตอนผมได้เลยครับ
    • กด i เพื่อเปิด insert mode
    • เลื่อน Cursor ไปยังบรรทัดที่มี properties ONBOOT แก้ไขค่าจาก no เป็น yes
    • กด Esc เพื่อออกจาก insert mode
    • จากนั้นพิมพ์ :wq! เพื่อให้ VI Save ที่แก้ และออกจากโปรแกรมครับ
  • เมื่อแก้ไขเสร็จของลองเปิดไฟล์ /etc/sysconfig/network-scripts/ifcfg-enp0s8 ตรวจทานอีกรอบ properties ONBOOT ต้องมีค่า yes
YPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=dhcp
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=enp0s8
UUID=8524b4d2-6491-4fc4-aeeb-7cf89a512b4b
DEVICE=enp0s8
ONBOOT=yes <<< แก้เรียบร้อย
  • จากนั้นพิมพ์ :q! เพื่อให้ออกจากโปรแกรมครับ
  • หลังจากแก้ไขค่าเรียบร้อยต้อง Restart Network Server เพื่อให้ตัว Network Card Update ค่าตาม Config ครับ ด้วยคำสั่ง
sudo systemctl restart NetworkManager.service
  • ทดสอบโดยใช้คำสั่ง ip addr อีกครั้งครับ

Discover more from naiwaen@DebuggingSoft

Subscribe to get the latest posts to your email.