ไม่สามารถ ping ไปยังกล่องคนเร่ร่อน


12

ฉันกำลังพยายามสร้างกล่องฐาน Vagrant ที่ติดตาม 2 แหล่งข้อมูลที่นี่:

ใช้ Ubuntu 12.10 (กับ LAMP) เป็นระบบปฏิบัติการฉันมีปัญหา 1 ข้อ ฉันไม่สามารถ ping IP คนจรจัดซึ่งเป็น 10.0.2.15 แม้ว่าฉันจะสามารถ SSH ผ่าน vagrant ssh.

ฉันจะตั้งค่าเพื่อให้สามารถเข้าถึงเว็บเซิร์ฟเวอร์จากโฮสต์ของฉันได้อย่างไร

VirtualBox: 4.2.10
ระบบปฏิบัติการทั่วไป: Ubuntu12.10
โฮสต์: OSX 10.8.3


ทำ superuser.com/a/705625/103551 มีทางออกหรือไม่ ถ้าเป็นเช่นนั้นโปรดยอมรับมันเป็นคำตอบ
Cees Timmerman

ฉันมีปัญหาที่คล้ายกันและฉันคิดว่ามันเป็นความแปลกประหลาดของ IP หลังจากเปลี่ยน IP (ซึ่งโดยพลการอยู่แล้ว) มันเริ่มทำงานอีกครั้ง: superuser.com/a/1214376/74576
Ryan

คำตอบ:


15

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

วิธีที่ง่ายที่สุดในการเข้าถึงบริการในกล่อง Vagrant ของคุณคือการกำหนดค่าการส่งต่อพอร์ต ใน Vagrantfile ของคุณดูในส่วน Vagrant.configure และตั้งค่าสำหรับ config.vm.network :forwarded_port. ตัวอย่างเช่นการกำหนดค่าต่อไปนี้ส่งต่อพอร์ต 4567 บนระบบโลคัลของคุณไปยังพอร์ต 80 บนกล่อง Vagrant:

Vagrant.configure("2") do |config|
  config.vm.box = "precise32"
  config.vm.provision :shell, :path => "bootstrap.sh"
  config.vm.network :forwarded_port, host: 4567, guest: 80
end

หลังจากทำการเปลี่ยนแปลงนี้แล้วให้เรียกใช้ vagrant reload เพื่อใช้การเปลี่ยนแปลง หลังจากใช้การเปลี่ยนแปลงคุณควรจะสามารถชี้เว็บเบราว์เซอร์ของคุณไปที่ http://127.0.0.1:4567 เพื่อให้อินสแตนซ์ Vagrant Apache ให้บริการหน้าเว็บ คุณสามารถอ่านเพิ่มเติมเกี่ยวกับเรื่องนี้ได้ใน เอกสารประกอบ Vagrant V2 หรือบน หน้าเครือข่ายคนจรจัด .


2

ฉันต้องเริ่มเครือข่ายด้วยตนเองในระบบโฮสต์ของฉันเป็น ip addr แสดงให้เห็นว่ามันลง:

sudo ip link set up dev vboxnet0

1

ฉันพบวิธีแก้ปัญหา: http://docs.vagrantup.com/v2/getting-started/networking.html

เพียงแค่ต้องทำการตั้งค่าการส่งต่อพอร์ต


4
ขณะนี้เห็นได้ชัดว่าตอบคำถามมันจะเป็นที่ต้องการถ้าคุณจะสรุปเนื้อหาของลิงค์นั้นและโพสต์ลิงค์เป็นเพียงการอ้างอิง ด้วยวิธีนี้หากลิงก์ตกคำตอบนี้ยังคงมีข้อดีอยู่
Canadian Luke

2
ลิงก์เฉพาะคำตอบ = ไม่ดีจะเกิดอะไรขึ้นเมื่อลิงก์ตาย
Andrew

1

ฉันมีปัญหาที่คล้ายกันเพียงแค่มีการตั้งค่าเครือข่ายส่วนตัวและ IP แบบคงที่ ที่อยู่ IP ที่ฉันใช้เป็นเวลาหลายเดือน ( 192.168.10.10 ) ไม่สามารถเข้าถึงได้ในทันทีแม้ว่าฉันจะสามารถเข้าถึงเครื่องเสมือนได้ vagrant ssh.

การเปลี่ยน IP แบบสแตติกเป็น 192.168.10.192 แก้ไขปัญหา วิธีแก้ไขที่นี่คือการเปลี่ยน IP ดังนั้นมันจึงไม่ชนกับเครื่องอื่น ๆ

ที่นี่ คุณสามารถค้นหาบันทึกย่อต่อไปนี้:

ขึ้นอยู่กับผู้ใช้เพื่อให้แน่ใจว่า IP แบบคงที่ไม่ได้ชนกับเครื่องอื่น ๆ ในเครือข่ายเดียวกัน

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

สำหรับระบบปฏิบัติการบางระบบจะมีตัวเลือกการกำหนดค่าเพิ่มเติมสำหรับที่อยู่ IP แบบคงที่เช่นการตั้งค่าเกตเวย์เริ่มต้นหรือ MTU

คำเตือน! อย่าเลือก IP ที่ทับซ้อนกับพื้นที่ IP อื่น ๆ ในระบบของคุณ นี่อาจทำให้เครือข่ายไม่สามารถเข้าถึงได้

ใน Vagrantfile คุณสามารถกำหนดค่า IP แบบคงที่เช่นนี้

Vagrant.configure("2") do |config|
  config.vm.network "private_network", ip: "192.168.10.192"
end

หรือในกรณีที่คุณใช้ Homestead อย่างที่ฉันทำเพียงแค่อัปเดตของคุณ Homestead.yaml ไฟล์การกำหนดค่า:

---
ip: "192.168.10.192"
# the rest of the configuration...

และบันทึกย่อในตอนท้าย - ปัญหาของฉันอาจไม่เหมือนที่นี่ แต่เนื่องจากฉันสะดุดกับคำถามนี้ผู้ใช้รายอื่นอาจจะเช่นกัน


0

ฉันคิดว่าแหล่งข้อมูลนี้สามารถช่วย: http://docs-v1.vagrantup.com/v1/docs/host_only_networking.html

โชคดี ;)


1
โปรดอธิบายขั้นตอนที่นี่เพราะลิงก์มักจะจบลงด้วยความตาย
tumchaaditya

กรุณาอย่าให้คำตอบที่เป็นเพียงการเชื่อมโยง นี่คือสาเหตุบางประการ: meta.stackexchange.com/questions/8231/... meta.stackexchange.com/questions/7515/why-is-linking-bad
That Brazilian Guy

-1

บน Ubuntu 12 host / Ubuntu 12 guest ต่อไปนี้ใช้ได้กับฉันด้วยวาทกรรม

ฉันเพิ่มโฮสต์ IP ที่กำหนดโดย Vagrant และเกสต์ IP ของผู้เยี่ยมชมที่กำหนดโดย Vagrant ให้กับข้อยกเว้นไฟร์วอลล์


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