ฉันมีเครื่องที่ใช้ Windows Vista ซึ่ง VirtualBox ใช้งาน Ubuntu อยู่
ในอูบุนตูฉันใช้งานเว็บเซิร์ฟเวอร์ตามที่อยู่http://127.0.0.1:3000/
ฉันจะเข้าถึงที่อยู่นี้จากเครื่องโฮสต์ของฉัน (กล่องหน้าต่าง) ได้อย่างไร
ฉันมีเครื่องที่ใช้ Windows Vista ซึ่ง VirtualBox ใช้งาน Ubuntu อยู่
ในอูบุนตูฉันใช้งานเว็บเซิร์ฟเวอร์ตามที่อยู่http://127.0.0.1:3000/
ฉันจะเข้าถึงที่อยู่นี้จากเครื่องโฮสต์ของฉัน (กล่องหน้าต่าง) ได้อย่างไร
คำตอบ:
คุณสามารถเปลี่ยนโหมดเครือข่ายแขกจาก NAT เป็น Bridged เพียงแค่ปิดแขก Ubuntu ของคุณไปที่หน้าการตั้งค่าใน VirtualBox เลือกประเภทเครือข่ายและเปลี่ยนกล่องรายการ Attached to จาก NAT เป็น Bridged Mode
หลังจากทำตามขั้นตอนข้างต้นรีสตาร์ท Ubuntu และ IP ที่จัดสรรจะแสดงบนหน้าจอต้อนรับหลังจากโหลด เช่นในข้อความต้อนรับควรพูดดังนี้:
ที่อยู่ IP สำหรับ eth0: 192.168.1.3
ใช้ที่อยู่นี้ในแถบเบราว์เซอร์ของเครื่องโฮสต์ตามด้วยพอร์ตที่คุณใช้ หากเป็นอย่างอื่นนอกเหนือจากพอร์ต 80 เช่นถ้าคุณตั้งค่าให้ใช้พอร์ต 666 ที่อยู่จะเป็น 192.168.1.3:666
อีกวิธีในการค้นหา IP คือการเชื่อมต่อกับเซิร์ฟเวอร์ HTTP ในตัวเราเตอร์ของคุณและค้นหาการตั้งค่า LAN ทุกเครื่องในเครือข่ายควรแสดงรายการโดยชื่อโฮสต์และ IP ที่เราเตอร์ของฉันคนอื่น ๆ ส่วนใหญ่ที่ฉันเคยมีคุณสามารถทำได้โดยพิมพ์ 192.168.1.1 ในแถบที่อยู่ ถ้านั่นล้มเหลวลองที่อยู่เดียวกันที่พอร์ต 81 ถ้าล้มเหลวอ่านด้วยตนเอง
ขึ้นอยู่กับว่าคุณติดตั้งระบบเครือข่ายบน Ubuntu guest OS อย่างไร หากคุณตั้งค่าให้ใช้ NAT และคุณมีเซิร์ฟเวอร์ DHCP ที่ทำงานบนเครือข่ายของคุณให้รันสิ่งนี้:
ifconfig | grep inet
บนกล่อง Ubuntu - คุณจะเห็นที่อยู่ IP ที่กำหนดให้กับแขกของ Ubuntu
ตัวอย่าง:
#ifconfig | grep inet
inet addr:10.0.0.2 Bcast:10.255.255.255 Mask:255.255.255.0
inet addr:127.0.0.1 Mask:255.0.0.0
จากนั้นก็กดhttp://10.0.0.2:3000
กล่อง Windows ของคุณและกล่อง Ubuntu (ไม่ว่าจะเป็นจริงหรือเสมือนไม่สำคัญในอินสแตนซ์นี้) ทั้งคู่ต้องมีที่อยู่ IP บนซับเน็ตเดียวกันเพื่อให้สามารถพูดคุยกันผ่าน TCP / IP ได้ คุณสามารถกำหนดที่อยู่เพิ่มเติมให้กับแต่ละระบบปฏิบัติการโดยใช้หนึ่งในเครือข่ายย่อย IP ส่วนตัว (ดูRFC 1918 ) เมื่อพวกเขาทั้งสองมีที่อยู่ในซับเน็ตเดียวกันให้กำหนดค่าเว็บเซิร์ฟเวอร์ให้ฟังที่คุณให้กับ Ubuntu จากนั้นใช้ IP นั้นในเบราว์เซอร์ภายใน Windows เพื่อโหลดขึ้นมา
IP ที่คุณกำหนดค่าตอนนี้คือ 127.0.0.1 เป็นที่อยู่ลูปแบ็คสำหรับอินเทอร์เฟซเครือข่ายท้องถิ่น คุณจะไม่ใช้ที่อยู่นั้นเพื่อเข้าถึงบางสิ่งในระบบที่แตกต่างกันเพียงเพื่ออ้างอิงกลับไปที่ระบบเดิมที่คุณใช้งานอยู่ เมื่อใช้ระบบเสมือนให้ทำเหมือนว่าคุณใช้คอมพิวเตอร์แยกจากจุดยืนของเครือข่าย
เพื่อแก้ปัญหาของคุณผม sugest ที่คุณเพิ่มใหม่อะแดปเตอร์เครือข่ายและการกำหนดค่าเป็นอะแดปเตอร์โฮสต์เท่านั้น
ตอนนี้คุณเรียกใช้อินสแตนซ์ของกล่องเสมือนแล้วอะไรที่ fsckin ติดขัดเพื่อดูว่าIP ของเครือข่ายใหม่คืออะไร
วิธีนี้คุณจะมีซับเน็ตพร้อมคอมพิวเตอร์และเครื่องเสมือนของคุณ
ก่อนอื่นคุณต้องทำสิ่งที่คำตอบ 1 พูดว่า:
"คุณสามารถเปลี่ยนโหมดเครือข่ายแขกของคุณจาก NAT เป็น Bridged เพียงปิดแขก Ubuntu ของคุณไปที่หน้าการตั้งค่าใน VirtualBox เลือกหมวดหมู่เครือข่ายและเปลี่ยนกล่องรายการ Attached เป็น NAT จากโหมด Bridged"
จากนั้นรับที่อยู่ IP ของคุณ:
บนเครื่องเสมือนของคุณเปิดพร้อมท์คำสั่งและทำ:
ip addr show
คุณอาจเห็นบรรทัดที่มีลักษณะดังนี้:
inet 192.168.43.96/24 ....
นอกจากนี้ยังมีสายก่อนหน้านั้นด้วย
inet 127.0.0.1
แต่คุณไม่ต้องการมัน! คุณต้องการที่อยู่ 192 แห่ง นั่นคือที่อยู่ของเครื่องเสมือนของคุณในเครือข่ายท้องถิ่นของคุณ มันควรจะสามารถเข้าถึงได้โดยอุปกรณ์ใด ๆ ที่เชื่อมต่อกับเครือข่ายท้องถิ่นเดียวกัน
ตอนนี้บนเครื่องโฮสต์ให้แก้ไขไฟล์ / etc / hosts (ไม่ใช่ ~ / etc) ชื่อไฟล์คือโฮสต์ (ไม่ใช่ชื่อโฟลเดอร์)
เพิ่มบรรทัดที่มีลักษณะดังนี้:
192.168.43.96 myvm.nameofmywebsite.com
ตอนนี้ไปที่เบราว์เซอร์ของเครื่องโฮสต์และพิมพ์ใน myvm.nameofmywebsite.com
หวังว่าจะทำมัน!
อย่างไรก็ตามคุณอาจมีเราเตอร์ที่มีคุณสมบัติด้านความปลอดภัยที่จะช่วยให้คุณเห็นที่อยู่ในพื้นที่ของคุณ สิ่งที่คุณสามารถทำได้คือใช้ฮอตสปอตของมือถือเป็นเครือข่ายของคุณ ที่เหมาะกับฉัน เพียงจำไว้ว่าเมื่อคุณเปลี่ยนเครือข่ายบนเครื่องโฮสต์ที่คุณต้องรีสตาร์ท VirtualBox ของคุณ