วิธีการเข้าถึง localhost: 8080 ทำงานบน ubuntu จาก windows ที่ทำงานบนกล่องเสมือน?


29

ฉันมีที่อยู่ IP สำหรับเครื่อง Ubuntu และฉันต้องการเข้าถึงแอปพลิเคชันที่ทำงานบน localhost ใน Ubuntu จากกล่องเสมือนของ Windows มีวิธีทำหรือไม่? การพิมพ์ [ที่อยู่ inet]: 8080 ไม่ทำงาน

คำตอบ:


30

Windows มี "ของตัวเอง" localhostดังนั้นคุณต้อง "ช่วย" หาของอูบุนตู

ในเครื่องเสมือนของคุณไปที่ ip นี้http://10.0.2.2/และมันควรจะทำงาน คุณสามารถแก้ไขไฟล์โฮสต์ windows เพื่อให้localhostชี้ไปที่ไอพีนั้นดังนั้นคุณไม่จำเป็นต้องจำมัน

ใน: C:\Windows\System32\drivers\etc\hosts

เพิ่ม:

10.0.2.2 localhost

! น่ากลัว ทำงานเหมือนจับใจ!
Ivan Demchenko

10

คุณสามารถตั้งค่าเครื่องเสมือนให้ใช้การเชื่อมต่อบริดจ์ วิธีดังกล่าวเครื่องเสมือนจะได้รับที่อยู่ IP ของตนเองและคุณควรจะสามารถเชื่อมต่อกับเครื่องโฮสต์ได้

  1. คลิกขวาที่เครื่องเสมือน (ในขณะที่ไม่ได้ทำงาน)
  2. เลือก ' การตั้งค่า '
  3. เลือก ' เครือข่าย '
  4. ใต้แท็บ' อะแดปเตอร์ 1 ' ให้ตั้ง ' แนบกับ ' เป็น ' อะแดปเตอร์ที่เชื่อมต่อแล้ว '

4

ขั้นแรกตรวจสอบให้แน่ใจว่ากระบวนการเซิร์ฟเวอร์เว็บทำงานอยู่ พิมพ์localhost:8080ในหน้าต่างเบราว์เซอร์บนเครื่อง Ubuntu ของคุณ หากคุณได้รับหน้าเว็บที่คุณคาดว่าจะดำเนินการในขั้นตอนถัดไปมิฉะนั้นให้เริ่มกระบวนการเว็บเซิร์ฟเวอร์และลองอีกครั้ง

ประการที่สองตรวจสอบให้แน่ใจว่าเครื่องทั้งสองอยู่ในเครือข่ายย่อยเดียวกัน เช่นสิ่งที่ชอบ192.168.x.y/255.255.255.0และ192.168.x.z/255.255.25.0ถ้าไม่ทำการปรับเปลี่ยนที่จำเป็นและดำเนินการขั้นตอนต่อไป

ประการที่สามตรวจสอบว่าไฟร์วอลล์ทำงานบนเซิร์ฟเวอร์อูบุนตูของคุณหรือไม่ ถ้าเป็นเช่นนั้นตรวจสอบว่าพอร์ตที่ต้องการเปิด ( 8080ในกรณีของคุณ) หากคุณไม่ต้องการที่จะเปิดพอร์ตเพื่อการเข้าถึงสาธารณะคุณสามารถกำหนดค่ากฎเพื่อยอมรับการรับส่งข้อมูลจากเครือข่ายย่อยท้องถิ่น

แก้ไข: ขั้นตอนที่ 0 ทำการตั้งค่าที่แนะนำในคำตอบโดย @Eeroz


2

หากคุณใช้ Ubuntu คุณต้องปิดไฟร์วอลล์ก่อน

sudo ufw disable

ตอนนี้หาที่อยู่ ipv4 ของคุณจากการตั้งค่าระบบ -> เครือข่ายและคลิกที่ลูกศรของ wifi ที่เชื่อมต่อเพื่อรับข้อมูลเพิ่มเติมเกี่ยวกับมันคุณจะพบที่อยู่ ipv4 ของพีซีของคุณ จากนั้นคุณสามารถใช้ localhost ของพีซีของคุณเป็น

http: // IPv4: portno / yourpagename

อย่าลืมเปิดใช้งานไฟร์วอลล์หลังจากทำงานเสร็จใช้งาน -

sudo ufw enable

ไชโย


0

หากคุณระบุว่าเป็นไฟร์วอลล์ของคุณฉันขอแนะนำให้เพิ่มกฎนี้แทนการปิดใช้งานไฟร์วอลล์ของคุณ:

sudo ufw allow 8080

เมื่อเสร็จแล้วคุณควรเรียกใช้:

sudo ufw status numbered

ค้นหาตัวเลขในวงเล็บ พูดมัน[ 1]และ[ 3]:

sudo ufw delete 1 3

แล้วถ้าคุณอยู่ในกล่องเสมือนคุณจะนำทางไปถ้าคุณมีชุดเครือข่ายของคุณเป็นhttp://10.0.2.2:8080 NATคุณสามารถทำเช่นนี้กับพอร์ตใดก็ได้และมันจะทำงานเหมือนกัน

แม้ว่านี่จะเป็นงานพิเศษ แต่คุณไม่ควรปิดไฟร์วอลล์ในเครือข่ายที่ปลอดภัย

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