Virtualbox บน Ubuntu Host: เข้าถึงแขกด้วยชื่อโฮสต์


10

ฉันมีอุปกรณ์ VirtualBox หลายเครื่อง (Windows, Linux) แต่ละเครื่องกำหนดค่าไว้ด้วยอะแดปเตอร์เครือข่ายสองตัว:

  • NATสำหรับการเข้าถึงอินเทอร์เน็ต
  • โฮสต์เท่านั้นสำหรับโฮสต์ <> โฮสต์และโฮสต์ <> การสื่อสารของแขก

ปัญหาคือฉันสามารถสื่อสารด้วยที่อยู่ IP เท่านั้น ฉันต้องการสื่อสารโดยใช้ชื่อโฮสต์เช่น ฉันต้องการเข้าถึงโฮสต์จากโฮสต์อื่น ๆ (หรือแขก) โดยใช้ชื่อโฮสต์ เป็นไปได้ไหม

ฉันมีอะแดปเตอร์แบบโฮสต์เท่านั้น ( vboxnet0 ) บนเครื่องโฮสต์และระบบเครือข่ายก็ใช้ได้ แต่ฉันต้องการหลีกเลี่ยงการกำหนด IP แบบคงที่ให้กับแต่ละอุปกรณ์

คำตอบ:


3

ฉันแนะนำให้คุณใช้Multicast DNSเพื่อแก้ไขปัญหานี้

อูบุนตูใช้นี้โดยเริ่มต้นผ่านAvahi

โฮสต์ Windows ต้องการไคลเอนต์ Avahi เพื่อค้นหาบริการ Avahi อื่น ๆ หากโฮสต์ของคุณใช้ซอฟต์แวร์ Apple อยู่แล้วอาจเป็นไปได้ว่ามีบริการชื่อ Bonjour อยู่แล้ว แต่ถ้าเรื่องนี้ไม่ได้ติดตั้งแล้วรุ่นเล็กของ Bonjour นี้สามารถดาวน์โหลดได้ที่นี่: บริการ Bonjour พิมพ์ หลังจากการติดตั้งคุณควรจะสามารถเข้าถึงแขกของคุณผ่านทาง. local

หมายเหตุ:ระบบ mDNS ดูเหมือนจะใช้ postfix. local ตามค่าเริ่มต้น ดังนั้นหากชื่อโฮสต์ของคุณคือ "dev.myapp.com" ดังนั้นชื่อโฮสต์จริงจะเป็น "dev.myapp.com.local"

คัดลอกมาจากคำตอบของฉันเองที่ superuser.com


2
mDNS เป็นวิธีที่ดีที่จะไปที่นี่ ฉันต้องการที่จะชี้ให้เห็นคำตอบที่แท้จริงของ Ubuntu นี้ที่ฉันโพสต์บน UL: ตรวจสอบที่อยู่ของเครื่องอื่นในลิงค์ท้องถิ่นหรือไม่
gertvdijk

2

ตามคู่มือ (เล็กน้อยในหัวข้ออื่น ):

ไม่มีตัวแก้ไข DNS สำหรับเครือข่ายภายใน

ดังนั้นคุณจะต้องติดตั้งหนึ่งในโฮสต์เสมือนของคุณ

ที่เกี่ยวข้อง: VB Forum


สิ่งนี้จะไม่ทำงานเนื่องจากโฮสต์ VBox ทำหน้าที่เป็นเซิร์ฟเวอร์ DHCP ดังนั้นเซิร์ฟเวอร์ DNS เสมือนจะไม่สามารถแก้ไขชื่อได้ ฉันคิดว่า IP แบบคงที่เป็นวิธีเดียวที่จะทำเช่นนี้
StarNamer

ฉันรู้ว่าฉันสามารถปิดการใช้งานเซิร์ฟเวอร์ DHCP ของ VBox ดังนั้นอาจเป็นไปได้
Miguel Ping

@StarNamer คุณพูดถูกเซิร์ฟเวอร์ DNS จะไม่แก้ไขปัญหาที่เกิดจากเซิร์ฟเวอร์ DHCP ใน VB อย่างไรก็ตามแม้ว่าจะไม่สามารถใช้งานได้เซิร์ฟเวอร์ DNS สามารถกำหนดค่าให้ใช้ที่อยู่ที่กำหนดไว้ในปัจจุบันได้ แต่จะไม่ทำให้ดีกว่าการแก้ไข/etc/hostsไฟล์ สิ่งที่ @Miguel สามารถทำได้คือการปิดการใช้งานเซิร์ฟเวอร์ VB DHCP และติดตั้งในเครื่องเสมือน ฉันแนะนำให้คุณศึกษาคู่มือ Ubuntu Serverภายใต้ระบบเครือข่ายและบริการชื่อโดเมน (DNS)
lgarzo

@Igarzo นั่นอาจใช้ได้ ฉันขอแนะนำสิ่งที่คล้ายกันdnsmasqซึ่งเป็นเซิร์ฟเวอร์ DNS และ DHCP ที่รวมกัน คำถามคือที่ที่จะวางไว้; ถ้ามันเป็นหนึ่งใน VMs ของผู้เข้าพักจากนั้นหนึ่งในนั้นจะกลายเป็นพิเศษและฉันไม่แน่ใจว่ามันง่ายที่จะวางเซิร์ฟเวอร์ DHCP บนโฮสต์และรับมันเพื่อให้บริการแขก ฉันไม่เคยลองเลย
StarNamer

@StarNamer ฉันไม่คิดว่าเซิร์ฟเวอร์ DHCP โฮสต์สามารถให้บริการโฮสต์เครือข่ายภายใน โฮสต์เครือข่ายภายใน VB ไม่สื่อสารกับโลกภายนอกนอกเหนือจากโฮสต์ที่เชื่อมต่อกับเครือข่ายภายในเดียวกัน Dnsmasqแต่ดูเหมือนเป็นทางเลือกที่ดี ฉันมักจะแนะนำวิธีแก้ไขปัญหา Ubuntu Server Guide ให้ปลอดภัยเท่านั้น
lgarzo

1

คุณต้องมีเซิร์ฟเวอร์ DNS เพื่อแปลง IP เป็นชื่อโฮสต์และในทางกลับกันและสิ่งนี้โชคไม่ดีที่ไม่รองรับ Vbox


0

เพื่ออนุญาตให้คนอื่น (WINDOWS ไคลเอนต์ไคลเอนต์ที่กำหนดค่าลินุกซ์) เข้าถึงโฮสต์ของคุณด้วยชื่อโฮสต์:

  • การติดตั้ง / การกำหนดค่า / เริ่มnmbdบริการให้โดยsamba

    nmbd - เซิร์ฟเวอร์ชื่อ NetBIOS เพื่อจัดเตรียม NetBIOS ผ่านบริการการตั้งชื่อ IP ให้กับลูกค้า

ในการอนุญาตให้โฮสต์ของคุณเข้าถึงผู้อื่น (WINDOWS CLIENT, LINUX ไคลเอนต์ที่กำหนดค่า) โดย HOSTNAME:

  • แก้ไข /etc/nsswitch.conf

เปลี่ยนสาย

hosts: files dns

ถึง

hosts: files dns wins
  • ติดตั้ง winbind

    apt-get install winbind

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