Làm cách nào để khách VirtualBox (chạy Windows) truy cập Internet?


30

Tôi có một máy ảo VirtualBox. Máy chủ chạy Ubuntu. Máy khách (ảo) chạy Windows XP.

Tôi đã giải quyết vấn đề này và mọi người tuyên bố rằng họ đã khắc phục bằng cách thay đổi loại bộ điều hợp thành NAT, nhưng không có tùy chọn nào như vậy đối với tôi:

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

Bất kỳ ý tưởng?

Cập nhật:

Nó cũng không hoạt động, sau khi chuyển nó sang NAT. Dưới đây là các cài đặt hiện tại (với tất cả các chi tiết được hiển thị):

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

Dưới đây là ảnh chụp màn hình của khách hiển thị một số thông tin mạng:

(Xin lưu ý rằng câu hỏi này là về cách cấp quyền truy cập Internet VM trong VirtualBox, vì vậy sự hiện diện của một hình ảnh của Windows không tự động làm cho chủ đề này lạc đề!)

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

Hình ảnh lớn hơn ở đây.

Câu trả lời:


34

Thiết lập NAT

NAT không phải là một tùy chọn cho Loại bộ điều hợp . Thay vào đó, nó là một tùy chọn cho Đính kèm .

Nhấp vào nơi hiện đang nói Bộ điều hợp Cầu nối và bạn sẽ có thể chọn NAT .

Nhân tiện, lý do thay đổi nó thành NAT đôi khi không cụ thể đối với khách Windows. Thay vào đó, nếu PC vật lý (máy chủ) của bạn nằm trên mạng LAN, Bộ điều hợp cầu nối (cũng như NAT ) thường hoạt động tốt. Nếu PC vật lý của bạn chỉ có kết nối mạng cho một máy tính - như trường hợp thường được cắm trực tiếp vào modem cáp / DSL / ISDN chỉ có một cổng Ethernet trên đó - thì không có mạng cục bộ nào để kết nối Vì vậy, sau đó bạn phải sử dụng NAT .

Nếu bạn sử dụng Bridged Adaptor và máy chủ của bạn nằm trên mạng LAN vật lý, máy khách của bạn sẽ tự động có thể nhìn thấy và được nhìn thấy bởi các máy tính trong mạng LAN. Nếu bạn sử dụng NAT trên mạng LAN, máy khách sẽ có thể thấy các máy tính khác trong mạng LAN nhưng các máy tính khác trong mạng LAN (ngoài máy chủ ảo hóa) sẽ không thể nhìn thấy nó.

Nếu bạn quan tâm đến nhiều chi tiết hơn, hãy xem các bài viết này về bắc cầu mạngdịch địa chỉ mạng .

Nếu điều đó làm việc, tuyệt vời. Nếu không thì...

Kiểm tra cấu hình mạng của khách

Trong máy ảo, mở cấu hình Kết nối mạng (từ Bảng điều khiển hoặc trong Menu bắt đầu> Cài đặt). Trừ khi bạn đã cấu hình thủ công nhiều giao diện cho các máy khách trong VirtualBox (hoặc có bộ điều hợp mạng thực tế được gắn với nó bằng chuyển tiếp USB), bạn sẽ chỉ thấy một giao diện và trừ khi bạn đổi tên, nó sẽ được gọi là Khu vực cục bộ Kết nối (có lẽ với một số sau nó).

Nhấp chuột phải vào đó và nhấp vào Thuộc tính .

máy khách, Kết nối mạng Windows XP: đây là nơi đầu tiên nhấp vào "Thuộc tính"

Trong Kết nối sử dụng các mục sau đây , nhấp Giao thức Internet (TCP / IP) và nhấp vào Thuộc tính .

máy khách, Windows XP "Local Area Connection" hiển thị danh sách các giao thức và dịch vụ

Hãy chắc chắn rằng cấu hình là chính xác.

Đối với kết nối cầu nối

Nếu bạn giữ bộ điều hợp mạng của VM được bắc cầu trong VirtualBox, thay vì chuyển nó sang NAT, thì như thể có một bộ chuyển đổi mạng lớp 2 kết nối ba thiết bị:

  • Máy ảo.
  • Các máy chủ vật lý.
  • Dù máy chủ vật lý được kết nối với (trên bộ điều hợp mạng máy chủ cụ thể đã được bắc cầu). Ví dụ: nếu máy tính của bạn được cắm vào bộ định tuyến, thì có vẻ như công tắc được cắm vào bộ định tuyến. Nếu nó được kết nối không dây với một điểm truy cập, thì nó giống như công tắc là một cây cầu không dây .

Vì vậy, VM của bạn "tương đương" về mặt mạng với máy chủ của bạn . Bất cứ cài đặt nào nó có (tất nhiên ngoại trừ địa chỉ IP của nó), máy ảo của bạn nên có.

Đối với kết nối NAT

Nếu bạn đã chọn NAT cho Đính kèm trong VirtualBox, thì có vẻ như máy tính thực sự của bạn hoạt động giống như một bộ định tuyến nhà / văn phòng nhỏ . Máy chủ của bạn chạy một máy chủ DHCP chỉ có thể truy cập vào các máy ảo VirtualBox và khách sẽ nhận được tất cả thông tin cấu hình mạng từ nó.

Máy chủ VirtualBox DHCP sẽ cung cấp cả địa chỉ IP và thông tin DNS cho khách, vì vậy cả hai tùy chọn này phải được chọn:

  • Tự động lấy địa chỉ IP
  • Tự động lấy địa chỉ máy chủ DNS

máy khách, cài đặt TCP / IP Windows XP, tab Chung

Đây là chìa khóa.

Đây là vấn đề cụ thể, cho hệ thống trong câu hỏi này. Nếu đây là vấn đề duy nhất với cấu hình, thì việc khắc phục điều này sẽ giải quyết vấn đề hoàn toàn.

Bạn có cài đặt thủ công, thay vì DHCP.

Điều đó có thể hoạt động, nhưng cài đặt thủ công sẽ cần phải chính xác và bạn cũng muốn đảm bảo IP không nằm trong dải địa chỉ IP mà bộ định tuyến của bạn gán từ (hoặc có thể xảy ra xung đột với thiết bị khác trên mạng).

Trong trường hợp này, cài đặt thủ công hoàn toàn không chính xác, bởi vì:

  1. Địa chỉ IP của máy chủ trên giao diện mạng mà qua đó nó cung cấp kết nối Internet cho khách không giống với địa chỉ IP của nó trên mạng vật lý. Ngay cả khi địa chỉ IP của máy tính của bạn là 192.168.1.1 "trong cuộc sống thực", khách vẫn không thể truy cập theo cách đó.

    • Nhiều khả năng, nếu bạn tự thiết lập theo cách này, bạn có thể đã nghĩ rằng bạn nên đặt địa chỉ IP của bộ định tuyến nhà / văn phòng thực tế (thường là 192.168.1.1) làm cổng mặc định và máy chủ DNS chính.

    Nhưng khách không thể truy cập trực tiếp vào bộ định tuyến NAT vật lý trên bàn của bạn (hoặc bất cứ nơi nào), bởi vì mọi dữ liệu được truyền giữa VM và bộ định tuyến thực phải qua bộ định tuyến của VM và bộ định tuyến của VM là máy tính của bạn (được truy cập qua mạng ảo đặc biệt đó giao diện).

  2. Vì cổng mặc định là sai, không có định tuyến xảy ra và VM không thể truy cập bất kỳ thiết bị mạng vật lý nào bên ngoài máy tính của bạn.

  3. Vì địa chỉ IP của VM nằm ngoài phạm vi chính xác (thường là 10.2.2. *) Và mặt nạ mạng con là 255.255.255.0, nên nó không thể truy cập vào phạm vi chính xác. (Mặt nạ mạng con là chính xác, nhưng cùng với IP, nó xác định mạng con sai.)

  4. Máy chủ DNS cũng phải được sửa chữa hoặc không có máy chủ nào có thể được truy cập thông qua tên miền của họ (như Askubfox.com).

Nếu vì lý do nào đó bạn cần sử dụng "IP tĩnh", tức là không sử dụng DHCP, thì bạn sẽ phải lấy thông tin chính xác từ VirtualBox và nhập nó. Vui lòng cho tôi biết nếu bạn cần trợ giúp về điều đó (tôi có thể mở rộng điều này để bao gồm các hướng dẫn).

Giả sử DHCP ổn với bạn, bạn có thể giải quyết vấn đề bằng cách tạo Giao thức Internet (Thuộc tính TCP / IP) , cài đặt tab Chung trông giống như ảnh chụp màn hình ở trên.

Vẫn không có kết nối Internet? Thời gian để khắc phục sự cố

Nó có thể giúp thu thập thêm một số thông tin từ phía khách. Trong hệ thống Windows XP ảo hóa không kết nối được với Internet một cách bí ẩn, hãy cài đặt các bổ sung dành cho khách VirtualBox (bằng cách nhấp vào Thiết bị > Cài đặt Bổ sung khách ; xem hướng dẫn để biết thêm thông tin). Khởi động lại và xem bạn có thể kết nối Internet không. Nếu bạn không thể, bạn vẫn hoàn thành một cái gì đó hữu ích, bởi vì bây giờ bạn có thể sao chép và dán giữa các bảng khách và máy chủ lưu trữ.

Vì vậy, mở Command Prompt trong Windows. Một cách để làm điều đó là chạy:

Bắt đầu> Chạy ...> cmd.exe

Bây giờ hãy chạy lệnh này để nhận thông tin về các kết nối và giao diện mạng của hệ thống khách Windows.

ipconfig /all

Sau đó sao chép tất cả văn bản trong dấu nhắc lệnh vào bảng tạm. Chức năng này có thể truy cập được trong menu ngữ cảnh được nâng lên bằng cách nhấp chuột phải vào bất cứ đâu trong cửa sổ nhắc lệnh. Sau đó, bạn có thể chỉnh sửa câu hỏi của mình trên hệ thống máy chủ Ubuntu nơi bạn có kết nối Internet đang hoạt động và dán nó vào.

  • Nói chung, đối với những người khác ngoài người hỏi câu hỏi này:

    Sau đó, bạn có thể dán nó vào các ứng dụng trong hệ thống máy chủ Ubuntu của mình, cho phép bạn tham khảo nó khi máy ảo Windows của bạn bị treo / tắt. Bạn có thể cung cấp nó cho bất cứ ai đang cố gắng giúp bạn. Bạn có thể đưa nó vào câu hỏi của riêng bạn ở đây trên Hỏi Ubuntu

    (Tuy nhiên, nếu sự cố mạng của bạn nằm trong cài đặt ảo, thay vì phần cứng ảo hoặc phần mềm VirtualBox - ví dụ: nếu VM của bạn truy cập Internet tốt cho đến khi bạn cài đặt một số phần mềm Windows khác ngoài phần bổ sung của khách - thì vấn đề của bạn có thể sẽ bị coi là lạc đề đối với Hỏi Ubuntu. Tuy nhiên, đây có thể là chủ đề dành cho Siêu người dùng .)


2
Tôi đã thay đổi tự động lấy IP và DNS và nó đã hoạt động! Câu trả lời của bạn rất chính xác và chi tiết, cảm ơn bạn rất nhiều vì điều này, tôi chắc chắn đó sẽ là tài nguyên rất hữu ích cho những người khác gặp vấn đề tương tự. Tôi đã chấp nhận câu trả lời của bạn và bắt đầu một tiền thưởng, sẽ thêm 100 danh tiếng hiện tại của tôi cho bạn sau 24h. Cảm ơn!
umpirsky

Vẫn cần một TL; dr. BTW, bạn khắc phục sự cố Windows!
Braiam

Cảm ơn bạn và Chúa ban phước cho bạn trong tên của Chúa Giêsu! Câu trả lời đã giúp rất nhiều! Việc chuyển đổi (sử dụng NAT) sang DHCP ở cả hai phía đã giải quyết được vấn đề!
lexeme

@Eliah, Bạn đã nói " nếu bạn sử dụng NAT trên mạng LAN, máy khách sẽ có thể thấy các máy tính khác trên mạng LAN ". Làm thế nào là có thể? Không phải khách chỉ có thể nhìn thấy máy chủ và mọi kết nối phải đi qua máy chủ?
Pacerier

@Pacerier Không. Điều này tương tự như trường hợp bạn cắm một bộ định tuyến NAT vào một bộ định tuyến NAT khác cung cấp quyền truy cập vào Internet. Giả sử máy tính A đứng sau NAT router X và cả máy tính B và NAT router X đều đứng sau một bộ định tuyến NAT Y khác, cung cấp quyền truy cập vào các thiết bị trên Internet như máy tính C. Điều này cho phép A (và B) giải quyết C trong khi giữ C và ngay cả B từ địa chỉ A. Nhưng nó cũng cho phép A giải quyết B. Từ góc nhìn của B, A bị ẩn đằng sau X. Từ góc nhìn của A, B hoàn toàn không bị ẩn - B, giống như Y, là máy chủ lưu trữ trên mạng mà A có thể truy cập qua cổng X.
Eliah Kagan

10

Giải pháp này đã hoạt động hoàn hảo đối với tôi (Host OS: Ubuntu 14.04; Guest OS: Windows XP SP3):

Chọn " PCnet-PCI II (Am79C970A) " tại 'NAT' -> 'Advanced' -> 'Loại bộ điều hợp'.


1
Làm việc trên Windows 7 với tư cách là chủ nhà và Windows XP với tư cách là khách
Musa Haidari

Đã làm việc trên Windows 8.1 với tư cách là máy chủ lưu trữ và Ubuntu 14.04 với tư cách là khách
dùng11153

@frostmann, Tại sao điều này hoạt động?
Pacerier

đã làm việc ... trong win8
chandil03 15/03/2016

hoạt động trong WinXP là tốt!
Trung Tà

4

NAT nằm trong danh sách thả xuống Đính kèm .

Loại bộ chuyển đổi là nâng cao và không phải thay đổi trong hầu hết các trường hợp ..

Cầu nối cũng hoạt động tốt, nhưng bạn phải điều chỉnh giao diện mạng. Tên phải được đặt thành giao diện internet của bạn trên máy chủ của bạn (rất có thể là wlan cho không dây, eth cho ethernet).

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.