VirtualBox: Cách thiết lập mạng để cả máy chủ và khách có thể truy cập internet và nói chuyện với nhau


120

Tôi đã tự hỏi nếu ai đó có thể cho tôi một hướng dẫn đơn giản về cách thiết lập mạng ảo trong VirtualBox (4.0.2) để các tình huống sau hoạt động:

  • Cả Host và Guest đều có thể truy cập Internet
  • Máy chủ có thể ping Khách và ngược lại
  • Máy chủ có thể truy cập ví dụ máy chủ web apache chạy trên Guest và ngược lại

Tôi đã loay hoay với các Bộ điều hợp mạng khác nhau có sẵn trong cài đặt cho Khách của mình, nhưng tôi không thể tìm ra. Bất cứ ai có thể giúp tôi ra khỏi đây?

Máy chủ đang chạy Windows 7 32 bit và khách đang chạy Ubuntu 10.10 32 bit.


Tôi có cùng một thiết lập được thiết lập với mạng cầu nối. Tôi gặp vấn đề khi sử dụng bộ điều hợp mạng paravirtualsed, nó rất dễ hỏng. Các nics mô phỏng là tốt mặc dù.
ollybee

Tôi đã xé tóc ra vì điều này, tôi đã sử dụng Chế độ cầu. Thứ tôi cần thay đổi là tên của bộ chuyển đổi cầu nối - đó là mạng Wifi của tôi. Khi tôi đổi nó thành mạng LAN, nó bắt đầu hoạt động một cách kỳ diệu. Không cần khởi động lại VM.
Sridhar Sarnobat

Câu trả lời:


114

Thử đi:

  1. Thiết lập hộp ảo để sử dụng 2 bộ điều hợp:
    • Bộ điều hợp đầu tiên được đặt thành NAT (sẽ cung cấp cho bạn kết nối internet).
    • Bộ điều hợp thứ hai được đặt thành chỉ lưu trữ .
  2. Khởi động máy ảo và gán IP tĩnh cho bộ điều hợp thứ hai trong Ubuntu (ví dụ 192.168.56.56 ). Máy chủ Windows sẽ có 192.168.56.1 làm IP cho mạng bên trong (Mạng chỉ dành cho máy chủ VirtualBox là tên trong các kết nối mạng trong Windows). Những gì điều này sẽ cung cấp cho bạn là có thể truy cập máy chủ apache trên ubfox, từ windows, bằng cách truy cập 192.168.56.56. Ngoài ra, Ubuntu sẽ có quyền truy cập internet, vì bộ điều hợp đầu tiên (được đặt thành NAT) sẽ đảm nhiệm việc đó.
  3. Bây giờ, để cung cấp kết nối theo cả hai cách (truy cập máy chủ windows từ máy khách Ubuntu) vẫn còn một bước nữa phải được thực hiện. Windows sẽ tự động thêm mạng chỉ máy chủ hộp ảo vào danh sách các mạng công cộng và điều đó không thể thay đổi. Điều này đòi hỏi rằng tường lửa sẽ ngăn chặn truy cập thích hợp.
  4. Để khắc phục điều này và không thực hiện bất kỳ vi phạm bảo mật nào trong thiết lập của bạn:
    • đi đến phần tường lửa của windows, trong bảng điều khiển,
    • nhấp vào cài đặt nâng cao. Trong trang bật lên,
    • bấm vào quy tắc trong (cột bên trái), sau đó vào quy tắc mới (cột bên phải). Chọn quy tắc tùy chỉnh, đặt quy tắc để cho phép tất cả các chương trình và bất kỳ giao thức nào. Đối với phạm vi, hãy thêm vào hộp đầu tiên (địa chỉ IP cục bộ) 192.168.56.1 và trong hộp thứ hai (IP từ xa) 192.168.56.56. Nhấp vào tiếp theo, chọn cho phép kết nối, tiếp theo, kiểm tra tất cả các cấu hình, tiếp theo, đặt tên và lưu.

Đó là nó, bây giờ bạn có giao tiếp 2 chiều, với apache / bất kỳ dịch vụ nào khác có sẵn cũng như internet. Bước cuối cùng là thiết lập một chia sẻ. Không sử dụng tính năng thư mục dùng chung trong hộp ảo, nó khá lỗi, đặc biệt là với windows 7 (và 64 bit). Thay vào đó hãy sử dụng cổ phiếu samba - nhanh chóng và hiệu quả.

Theo liên kết này để biết cách thiết lập: https://wiki.ubfox.com/MountWindowsSharesPternal


2
Điều này làm việc hoàn hảo. Cảm ơn. Không phải chạm vào tường lửa, vv Vẫn có vấn đề với cầu.
FractalSpace

1
Điều này cũng hoạt động cho VirtualBox 5.0 / Windows 10
Jess

Tôi đã phải kết nối với máy chủ WIndows Server 2012 và phải đặt quy tắc gửi đến trên cả hai tường lửa. Bây giờ tất cả đều hoạt động hoàn hảo :)
Alan Fluka 6/10/2015

không hoạt động với khách mac os
Fire in the Hole

Nhưng tôi không thể kết nối với internet trên máy khách (Mac OS X El Capitan)
Mansuu ....

33

Cách tốt nhất để làm điều này là sử dụng một bộ chuyển đổi cầu trong hộp ảo. Trong hộp ảo, hãy chuyển đến cài đặt cho máy của bạn-> Mạng-> Bộ điều hợp 1 và chọn Bộ điều hợp cầu nối. Điều này sẽ làm cho bạn một phần máy ảo của mạng chính của bạn.

Nếu bạn có một máy chủ dhcp, nó sẽ cung cấp một địa chỉ, vv cho máy ảo sẽ cho phép nó giao tiếp với phần còn lại của hệ thống của bạn và ngược lại.


Khi tôi làm điều này, tôi không thể ping Máy chủ từ Khách. Tôi có thể làm điều này? Có phải đó là thứ gì đó trong Máy chủ của tôi chặn ping không?
Svish

1
Bạn có thể phải cho phép ping thông qua tường lửa windows của bạn xem ở đây để biết cách làm điều đó.
dùng9517

Nếu bạn vẫn gặp sự cố với các máy khác, hãy đảm bảo rằng bộ điều hợp Cầu nối được kết nối với thẻ NIC chính xác của máy chủ. Vì một số lý do, đôi khi VirtualBox gắn Bộ điều hợp Cầu nối sai hoặc vào Thẻ mạng không tồn tại trên Máy chủ.
isapir

@Hanginonrowietdesperation liên kết bạn cung cấp về cách vượt tường lửa đã chết
Francesco Dondi

1
làm việc cho tôi (mac os khách)
Fire in the Hole

11

Đưa ra các yêu cầu, tôi sẽ chọn một bộ chuyển đổi "bắc cầu".

nhập mô tả hình ảnh ở đây


Nhưng nếu tôi chọn Bridged Adaptor thì nó sẽ tắt nút OK.
Gopal00005

1

Thiết lập mạng chỉ lưu trữ trên máy chủ và cho phép chia sẻ kết nối internet cho mạng đó. Bằng cách này, bạn sẽ có giao diện ảo trên máy chủ sẽ được kết nối với khách.


Làm thế nào tôi có thể làm điều này? Tôi đã cố sử dụng mạng chỉ dành cho máy chủ cho khách, nhưng sau đó dường như sử dụng ipv6 và tôi không thể ping theo bất kỳ hướng nào tôi có thể hiểu được ...
Svish

Bạn có thể tự thiết lập địa chỉ IPv4 ở cả hai đầu.
gelraen

IP tĩnh của bạn là gì? Không có cách nào để khách có được IP của họ từ DHCP? Hay họ sẽ giống như đằng sau một NAT? Ngoài ra, ý của bạn là gì khi "cho phép chia sẻ kết nối internet cho mạng đó"? Làm thế nào tôi có thể làm điều đó?
Svish

Có, IP tĩnh. Tốt hơn là nên gán IP tĩnh nếu bạn muốn giao tiếp với khách. Với khách chỉ có máy chủ sẽ được hiển thị trực tiếp từ máy chủ. Chia sẻ kết nối Internet trong windows® được định cấu hình trên tab cuối cùng trong các thuộc tính của kết nối internet của bạn.
gelraen

0

TRÊN hộp ảo 5.2, thật dễ dàng: Thiết lập bộ chuyển đổi cầu nối cho khách.

Khi bạn bắt đầu khách, nó sẽ sử dụng cùng một mạng với máy chủ, sử dụng DHCP để lấy địa chỉ IP của chính nó.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.