กำลังเชื่อมต่อกับแขก VirtualBox (Ubuntu) จากโฮสต์ (osx) ผ่าน NAT หรือไม่


7

ฉันมีแขก VirtualBox (ใช้ Ubuntu) ที่กำหนดค่าด้วย NAT ผ่านแล็ปท็อปโฮสต์ (ใช้ OSX) มันเป็นความเข้าใจของฉันว่าด้วย NAT ที่กำหนดค่าฉัน ได้ เข้าถึงแขกจากโฮสต์ (โดยไม่มีการส่งต่อพอร์ตใด ๆ ) แต่ ไม่ได้มาจากเครื่องภายนอก ... ฉันคิดผิดหรือไม่?

ผม คงจะ ใช้เครือข่าย bridged แต่ทุกครั้งที่ฉันสลับเครือข่าย (@ home, @ work, ผูกติดอยู่กับโทรศัพท์ของฉัน) ip ของแขกจะเปลี่ยนใช่ไหม

คำตอบ:


15

หากคุณต้องการเข้าถึงแขกจากโฮสต์จากนั้นคุณต้องการระบบเครือข่าย "โฮสต์เท่านั้น" ที่อยู่ IP จะปรากฏขึ้นหากคุณวางเมาส์เหนือไอคอนเครือข่ายในหน้าต่าง Virtualbox

หากคุณต้องการเชื่อมต่ออินเทอร์เน็ตจากผู้เยี่ยมชม VirtualBox ของคุณคุณสามารถใช้ BOTH Host เท่านั้นและ NAT (VirtualBox รองรับได้มากถึง 4 อะแดปเตอร์เครือข่ายที่แตกต่างกัน)


5
น่าสังเกต: หลังจากเพิ่มอะแดปเตอร์เครือข่ายรองฉันต้องสร้างรายการอื่นด้วยตนเองใน / etc / network / interfaces (ซ้ำ eth0 เป็น eth1) และรีสตาร์ทเครือข่ายบนแขกของ Ubuntu หนึ่งในสิ่งที่ดูแลระบบประเภทที่ฉันมักจะลืม
EvanK

นี้เป็นสิ่งสำคัญ. ดึงผมของฉันเพราะทุกที่ที่ฉันอ่านมันบอกว่า "ใช้อะแดปเตอร์โฮสต์เดียวเท่านั้นและหนึ่งแน็ต") แต่ไม่มีการทำซ้ำ eth0 ใน / etc / network / interfaces ดังที่กล่าวมาแล้วมันจะไม่ทำงาน
stian

1
@EvanK FWIW ฉันไม่จำเป็นต้องทำตามขั้นตอนนี้ การติดตั้ง VirtualBox eth0 และ eth1 โดยอัตโนมัติ เนื่องจากความคิดเห็นของคุณเก่า VirtualBox รุ่นที่ใหม่กว่าอาจดูแลสิ่งนี้
Yetanotherjosh

1

โดยทั่วไปจากระยะไกลผ่าน nat เป็นความเจ็บปวด ขึ้นอยู่กับเทคโนโลยีเวอร์ชวลไลเซชันแต่ละคนเสนอวิธีการที่แตกต่างกันในการเอาชนะสิ่งนี้ Virtualbox มีตัวเลือกในการส่งต่อพอร์ต X ไปยังไคลเอนต์เสมือนจริงถ้าฉันจำอย่างถูกต้อง ... นี่จะต้องทำการเข้าถึงโฮสต์ระยะไกลของไคลเอนต์ vm ผ่าน nat


1

ฉันไม่แน่ใจเกี่ยวกับคำตอบสำหรับคำถามของคุณโดยตรง แต่ฉันเข้าถึงกล่อง Ubuntu (NAT) ผ่าน OS X โดยใช้สิ่งต่อไปนี้ แทนที่ Ubuntu ด้วยชื่อแขกของคุณ:

VBoxManage setextradata Ubuntu "VBoxInternal/Devices/pcnet/0/LUN#0/Config/ssh/HostPort" 2222
VBoxManage setextradata Ubuntu "VBoxInternal/Devices/pcnet/0/LUN#0/Config/ssh/GuestPort" 22
VBoxManage setextradata Ubuntu "VBoxInternal/Devices/pcnet/0/LUN#0/Config/ssh/Protocol" TCP

จากนั้นรีบูต (แขก) จากนั้นจาก OS X: ssh -p 2222 localhost และคุณควรจะเป็น VM ในเทอร์มินัล OS X

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.