วิธีกำหนดค่าเครือข่ายระหว่าง Guest VM และโฮสต์ใน Oracle VirtualBox
เมื่อคุณติดตั้งระบบปฏิบัติการที่แตกต่างกันใน Oracle VirtualBox แล้ว คุณอาจต้องการเปิดใช้งานการสื่อสารระหว่างโฮสต์และเครื่องเสมือน
ในบทความนี้ เราจะอธิบายวิธีที่ง่ายและตรงที่สุดในการตั้งค่าเครือข่ายสำหรับเครื่องเสมือนของแขกและโฮสต์ใน Linux
เพื่อวัตถุประสงค์ของบทช่วยสอนนี้:
- ระบบปฏิบัติการโฮสต์ – Linux Mint 18
- ระบบปฏิบัติการเครื่องเสมือน – CentOS 7 และ Ubuntu 16.10
ความต้องการ
- Oracle Virtualbox ที่ใช้งานได้ติดตั้งบนเครื่องโฮสต์
- คุณต้องติดตั้งระบบปฏิบัติการเกสต์ เช่น Ubuntu, Fedora, CentOS, Linux Mint หรือตัวเลือกใดๆ ที่คุณต้องการในกล่องเสมือนของ Oracle
- ปิดเครื่องเสมือนในขณะที่คุณทำการกำหนดค่าจนถึงขั้นตอนที่คุณต้องการเปิดใช้งาน
เพื่อให้เครื่องเกสต์และเครื่องโฮสต์สื่อสารได้ เครื่องทั้งสองจะต้องอยู่ในเครือข่ายเดียวกัน และตามค่าเริ่มต้น คุณสามารถแนบการ์ดเครือข่ายได้สูงสุดสี่การ์ดเข้ากับเครื่องเกสต์ของคุณ
การ์ดเครือข่ายเริ่มต้น (อะแดปเตอร์ 1) โดยปกติจะใช้เพื่อเชื่อมต่อเครื่องเกสต์กับอินเทอร์เน็ตโดยใช้ NAT ผ่านเครื่องโฮสต์
ข้อสำคัญ: ตั้งค่าอะแดปเตอร์ตัวแรกเพื่อสื่อสารกับโฮสต์และอะแดปเตอร์ตัวที่สองเพื่อเชื่อมต่ออินเทอร์เน็ตเสมอ
สร้างเครือข่ายสำหรับแขกและเครื่องโฮสต์
ที่อินเทอร์เฟซตัวจัดการ Virtualbox ด้านล่าง ให้เริ่มต้นด้วยการสร้างเครือข่ายที่โฮสต์และแขกจะทำงาน
ไปที่ ไฟล์ –> การตั้งค่า หรือกด Ctrl + G
:
จากอินเทอร์เฟซต่อไปนี้ มีสองตัวเลือก; เลือก เครือข่ายโฮสต์เท่านั้น โดยคลิกที่เครือข่ายนั้น จากนั้นใช้เครื่องหมาย +
ทางด้านขวาเพื่อเพิ่มเครือข่ายเฉพาะโฮสต์ใหม่
ด้านล่างนี้เป็นภาพหน้าจอที่แสดงเครือข่ายเฉพาะโฮสต์ใหม่ที่เรียกว่า vboxnet0
หากต้องการ คุณสามารถลบออกได้โดยใช้ปุ่ม -
ตรงกลาง และหากต้องการดูรายละเอียด/การตั้งค่าเครือข่าย ให้คลิกที่ปุ่ม แก้ไข
คุณสามารถเปลี่ยนค่าได้ตามความต้องการของคุณ เช่น ที่อยู่เครือข่าย เน็ตเวิร์กมาสก์ ฯลฯ
หมายเหตุ: ที่อยู่ IPv4 ในอินเทอร์เฟซด้านล่างคือที่อยู่ IP ของเครื่องโฮสต์ของคุณ
ในอินเทอร์เฟซถัดไป คุณสามารถกำหนดค่าเซิร์ฟเวอร์ DHCP ได้หากคุณต้องการให้เครื่องเกสต์ใช้ที่อยู่ IP แบบไดนามิก (ตรวจสอบให้แน่ใจว่าได้เปิดใช้งานก่อนใช้งาน) แต่ฉันแนะนำให้ใช้ ที่อยู่ IP แบบคงที่ สำหรับเครื่องเสมือน
ตอนนี้คลิก ตกลง บนอินเทอร์เฟซการตั้งค่าเครือข่ายทั้งหมดด้านล่างเพื่อบันทึกการเปลี่ยนแปลง
กำหนดการตั้งค่าเครือข่ายเครื่องเสมือน
หมายเหตุ: คุณสามารถทำตามขั้นตอนด้านล่างสำหรับเครื่องเสมือนทุกเครื่องที่คุณต้องการเพิ่มบนเครือข่ายเพื่อสื่อสารกับเครื่องโฮสต์
กลับมาที่อินเทอร์เฟซตัวจัดการกล่องเสมือน ให้เลือกเครื่องเสมือนสำหรับแขกของคุณ เช่น เซิร์ฟเวอร์ Ubuntu 16.10 หรือ CentOS 7 และคลิกที่เมนู การตั้งค่า
กำหนดค่าอะแดปเตอร์เพื่อเชื่อมต่อเครื่องเสมือนกับโฮสต์
เลือกตัวเลือกเครือข่ายจากอินเทอร์เฟซด้านบน หลังจากนั้น ให้กำหนดค่าการ์ดเครือข่ายแรก (อะแดปเตอร์ 1) ด้วยการตั้งค่าต่อไปนี้:
- ตรวจสอบตัวเลือก: “เปิดใช้งานอะแดปเตอร์เครือข่าย ” เพื่อเปิด
- ในฟิลด์แนบไปกับ: เลือก อะแดปเตอร์สำหรับโฮสต์เท่านั้น
- จากนั้นเลือกชื่อของเครือข่าย: vboxnet0
ดังภาพหน้าจอด้านล่าง และคลิก ตกลง เพื่อบันทึกการตั้งค่า:
กำหนดค่าอะแดปเตอร์เพื่อเชื่อมต่อเครื่องเสมือนกับอินเทอร์เน็ต
จากนั้นเพิ่มการ์ดเครือข่ายใบที่สอง (อะแดปเตอร์ 2) เพื่อเชื่อมต่อเครื่องเสมือนกับอินเทอร์เน็ตผ่านโฮสต์ ใช้การตั้งค่าด้านล่าง:
- ทำเครื่องหมายตัวเลือก: “เปิดใช้งานอะแดปเตอร์เครือข่าย ” เพื่อเปิดใช้งาน
- ในฟิลด์แนบไปกับ: เลือก NAT
ตั้งค่าที่อยู่ IP แบบคงที่สำหรับ Guest Virtual Machine
ในขั้นตอนนี้ ให้เปิดเครื่องเสมือนของแขก เข้าสู่ระบบและกำหนดค่าที่อยู่ IP แบบคงที่ เรียกใช้คำสั่งด้านล่างเพื่อแสดงอินเทอร์เฟซทั้งหมดบนเครื่องเกสต์และที่อยู่ IP ที่จัดสรร:
ip add
จากภาพหน้าจอด้านบน คุณจะเห็นว่ามีสามอินเทอร์เฟซที่เปิดใช้งานบนเครื่องเสมือน:
lo
– อินเทอร์เฟซแบบย้อนกลับenp0s3
(อะแดปเตอร์ 1) – สำหรับการสื่อสารเฉพาะโฮสต์ซึ่งใช้ DHCP ตามที่กำหนดไว้ในขั้นตอนใดขั้นตอนหนึ่งก่อนหน้านี้ และกำหนดค่าในภายหลังด้วยที่อยู่ IP แบบคงที่enp0s8
(อะแดปเตอร์ 2) – สำหรับการเชื่อมต่ออินเทอร์เน็ต มันจะใช้ DHCP เป็นค่าเริ่มต้น
บน Debian/Ubuntu/Linux Mint
ข้อสำคัญ: ที่นี่ ฉันใช้เซิร์ฟเวอร์ Ubuntu 16.10: ที่อยู่ IP: 192.168.56.5
เปิดไฟล์ /etc/network/interfaces โดยใช้โปรแกรมแก้ไขที่คุณชื่นชอบพร้อมสิทธิ์ผู้ใช้ขั้นสูง:
sudo vi /etc/network/interfaces
ใช้การตั้งค่าต่อไปนี้สำหรับอินเทอร์เฟซ enp0s3 (ใช้ค่าที่คุณต้องการที่นี่):
auto enp0s3
iface enp0s3 inet static
address 192.168.56.5
network 192.168.56.0
netmask 255.255.255.0
gateway 192.168.56.1
dns-nameservers 8.8.8.8 192.168.56.1
บันทึกไฟล์และออก
จากนั้นรีสตาร์ทบริการเครือข่ายดังนี้:
sudo systemctl restart networking
หรืออีกวิธีหนึ่ง ให้รีบูตระบบและตรวจสอบว่าอินเทอร์เฟซใช้ที่อยู่ IP ใหม่หรือไม่:
ip add
บน RHEL/CentOS/Fedora
ข้อสำคัญ: สำหรับส่วนนี้ ฉันใช้ CentOS 7: ที่อยู่ IP: 192.168.56.10
เริ่มต้นด้วยการเปิดไฟล์สำหรับ enp0s3 – อินเทอร์เฟซเครือข่ายเฉพาะโฮสต์ /etc/sysconfig/network-scripts/ifcfg-enp0s3 ใช้โปรแกรมแก้ไขที่คุณชื่นชอบพร้อมสิทธิ์ผู้ใช้ขั้นสูง:
sudo vi /etc/sysconfig/network-scripts/ifcfg-enp0s3
สร้าง/แก้ไขการตั้งค่าต่อไปนี้ (ใช้ค่าที่คุณต้องการที่นี่):
BOOTPROTO=static
ONBOOT=yes
IPADDR=192.168.56.10
NETWORK=192.168.56.0
NETMASK=255.255.255.0
GATEWAY=192.168.56.1
DNS=8.8.8.8 192.168.56.1
NM_CONTROLLED=no #use this file not network manager to manage interface
บันทึกไฟล์และออก จากนั้นรีสตาร์ทบริการเครือข่ายดังนี้ (คุณสามารถรีบูตได้เช่นกัน):
sudo systemctl restart network.service
ตรวจสอบว่าอินเทอร์เฟซใช้ที่อยู่ IP ใหม่ดังนี้:
ip add
จัดการเครื่องเสมือนจากโฮสต์โดยใช้ SSH
บนเครื่องโฮสต์ ให้ใช้ SSH เพื่อจัดการเครื่องเสมือนของคุณ ในตัวอย่างต่อไปนี้ ฉันกำลังเข้าถึงเซิร์ฟเวอร์ CentOS 7 (192.168.56.10) โดยใช้ SSH:
ssh [email
who
แค่นั้นแหละ! ในโพสต์นี้ เราได้อธิบายวิธีที่ตรงไปตรงมาในการตั้งค่าเครือข่ายระหว่างเครื่องเสมือนของแขกและโฮสต์ แบ่งปันความคิดของคุณเกี่ยวกับบทช่วยสอนนี้โดยใช้ส่วนคำติชมด้านล่าง