ฉันมีเครื่อง VirtualBox ที่ใช้งาน CentOS 6.5 ฉันสร้างอะแดปเตอร์เครือข่าย 2 ตัวสำหรับการตั้งค่าเครือข่ายของ VirtualBox สำหรับเครื่อง อย่างแรกคือ NAT ซึ่งฉันต้องการให้แขกใช้เชื่อมต่อกับอินเทอร์เน็ตและครั้งที่สองที่ฉันตั้งไว้ที่ Host-only ซึ่งฉันจะใช้กับ SSH และเข้าถึงเว็บเซิร์ฟเวอร์จากโฮสต์คอมพิวเตอร์ บทช่วยสอนนี้ที่ฟอรัม VirtualBoxคือสิ่งที่ฉันต้องการบรรลุ แต่ฉันไม่สามารถค้นหา/etc/network/interfaces
ไฟล์บน CentOS 6.5 ได้ดังนั้นฉันจึงสันนิษฐานว่าการกำหนดค่านั้นแตกต่างกัน
มีการติดตั้งทั้งอะแดปเตอร์ NAT และโฮสต์เท่านั้นฉันเริ่มต้น VM และทำip addr show
และฉันมี 2 อินเทอร์เฟซeth0
และeth2
(ฉันไม่รู้ว่าทำไมeth1
ถูกข้ามอย่างใด) ดังนั้นฉันจึงกำหนดค่าifcfg-ethX
ไฟล์ทั้งสอง/etc/sysconfig/network-scripts
ตั้งeth0
เป็น DHCP (สำหรับ NAT) และeth2
เป็น IP แบบคงที่ (สำหรับโฮสต์เท่านั้น) สำหรับeth0
, ONBOOT=yes
ในขณะที่สำหรับ,eth2
ONBOOT=no
ด้วยการตั้งค่านี้ฉันสามารถping
ใช้อินเทอร์เน็ตping -c 3 www.google.com
และได้รับการตอบสนองดังนั้นฉันจึงรู้ว่าฉันสามารถเชื่อมต่ออินเทอร์เน็ตeth2
ได้
ifup eth2
ต่อไปผม จากเครื่องโฮสต์ฉันใช้ SSH แบบคงที่กับ IP ที่ฉันตั้งไว้และสามารถเชื่อมต่อได้โดยไม่มีปัญหา แต่เมื่อฉันทำping -c www.google.com
ในเวลานี้มันล้มเหลวและฉันรู้ว่าฉันขาดการเชื่อมต่อกับอินเทอร์เน็ตแม้ว่าeth0
จะยังไม่หมด การทำroute -n
แสดงให้ฉันเห็นตารางเอาท์พุทที่มีeth2
การขึ้นแถวแรกและแถวสุดท้ายในขณะที่eth0
อยู่ในระหว่าง (ขออภัยฉันไม่สามารถโพสต์เอาท์พุทที่เกิดขึ้นจริงเพราะฉันลบ VM ออกจากแห้ว ... )
ฉันได้สร้าง CentOS VM ใหม่และต้องการดำเนินการตั้งค่าต่อไป ระบบเครือข่ายของฉันใกล้จะไม่มีตัวตนดังนั้นฉันจึงเป็น n00b ฉันต้องการเคล็ดลับบางอย่างเกี่ยวกับวิธีการทำอย่างถูกต้อง (เช่นวิธีการตั้งค่าอะแดปเตอร์ NAT กับการใช้งานeth0
และการตั้งค่าอะแดปเตอร์โฮสต์เฉพาะกับการใช้eth1
และไม่ได้eth2
วิธีการเพื่อให้eth0
ยังคงใช้งานแม้ว่าeth1
/ eth2
และทำงาน)
ปรับปรุง
ดังนั้นฉันจึงได้ VM ใหม่และทำงานและดูเหมือนว่าจะทำงานตอนนี้ถ้าฉันมีอะแดปเตอร์แรกที่กำหนดให้โฮสต์เท่านั้นและอะแดปเตอร์ที่สองตั้ง NAT มันตั้งค่าเช่นนั้น:
การตั้งค่าเครือข่าย VirtualBox
- อะแดปเตอร์เครือข่าย 1: โฮสต์เท่านั้น (
vboxnet0
ตั้งค่าที่อยู่ IP เป็น10.3.0.1
เครือข่ายหน้ากาก255.255.255.0
และ DHCP ปิดอยู่) - อะแดปเตอร์เครือข่าย 2: NAT (DHCP)
CentOS VM /etc/sysconfig/network-scripts/ifcfg-ethX
settings
# ifcfg-eth0
DEVICE=eth0
HWADDR=08:00:27:EC:6C:B9
TYPE=Ethernet
UUID=1339bc30-...
ONBOOT=yes
NM_CONTROLLED=yes
BOOTPROTO=static
DHCPCLASS=
IPADDR=10.3.0.100
NETMASK=255.255.255.0
GATEWAY=10.3.0.1
# ifcfg-eth2
DEVICE=eth2
HWADDR=08:00:27:EB:73:BA
TYPE=Ethernet
UUID=1339bc30-...
ONBOOT=yes
NM_CONTROLLED=yes
BOOTPROTO=dhcp
ผลลัพธ์ของ ip route
10.0.3.0/24 dev eth2 proto kernel scope link src 10.0.3.15
10.3.0.0/24 dev eth0 proto kernel scope link src 10.3.0.100
169.254.0.0/16 dev eth0 scope link metric 1002
169.254.0.0/16 dev eth2 scope link metric 1003
default via 10.0.3.2 dev eth2
ผลลัพธ์ของ ip addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue state UNKNOWN
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 08:00:27:ec:6c:b9 brd ff:ff:ff:ff:ff:ff
inet 10.3.0.100/24 brd 10.3.0.255 scope global eth0
inet6 fe80::a00:27ff:feec:6cb9/64 scope link
valid_lft forever preferred_lft forever
3: eth2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 08:00:27:eb:73:ba brd ff:ff:ff:ff:ff:ff
inet 10.0.0.15/24 brd 10.0.3.255 scope global eth2
inet6 fe80::a00:27ff:feeb:73ba/64 scope link
valid_lft forever preferred_lft forever
vboxnet0
ตั้งค่าโฮสต์ (เท่านั้นถ้า) 192.168.56.1
ดังนั้นฉันเดาว่าเป็นสิ่งที่เกตเวย์เริ่มต้นคือ ฉันจำไม่ได้สำหรับอินเทอร์เฟซ NAT
ip route
บน VM ใหม่ ... ip addr
และที่ของ