CentOs 本地主機僅在連接到網際網路時才工作

CentOs 本地主機僅在連接到網際網路時才工作

我三個月來一直試圖(斷斷續續地)解決這個問題,但仍然無法讓它發揮作用,甚至無法理解它為什麼會發生。

場景:

{HP 32bit, Windows 7}我的筆記型電腦上安裝了 VirtualBox

在此 VB 中,我安裝了 CentOs 6.5、Nginx、PHP-FPM,沒有任何問題。

簡而言之,一切順利。

問題

問題是我只有locahost連接到互聯網才能訪問。

當連接到互聯網時,如果我http://192.168.1.100/一切正常,我可以index.html很好地看到我的文件,但是一旦我離線,我什麼也得不到,就好像我試圖在沒有連接到互聯網的情況下訪問谷歌一樣。

這是我的 Vbox 設定的螢幕截圖:

在此輸入影像描述

這也是配置/etc/sysconfig/network-scripts/ifcfg-eth0:

在此輸入影像描述

我已經多次做過以下操作。

嘗試iptables停用/啟用
嘗試僅主機、NAT 橋接適配器
嘗試使用靜態 IP 和 DHCP..
多次刷新網絡

我確信答案就在某個地方,因為我仍然沒有完美的設定配置,但在我做的過程中混合了很多東西,所以仍然無法讓它工作。

答案1

在 VirtualBox 網路設定中,您可以使用靜態 IP 位址將 CentOS 電腦「橋接到」您的 WiFi 網路。

您的筆記型電腦的 WiFi 連線沒有固定的 IP 位址;當您沒有連接到 WiFi 時,Windows 沒有網路連線啟動和運行,並且不知道如何存取 CentOS 伺服器。當您連接到 WiFi 時,您的路由器會為 Windows 提供同一網路上的位址,然後它可以存取 CentOS 伺服器。

它們在同一台電腦上運行,但它們是獨立的,並且彼此之間不能自動通訊。解決方法是以某種方式更改網路設置,而如何更改它取決於您想要執行的操作。

最簡單的方法可能是前往 Windows 控制面板、網路連接,然後找到您的有線網路介面卡(假設您的筆記型電腦有一個並且您不使用它),然後轉到屬性並設定 TCP/IP 網路位址 192.168.1.101,子網路遮罩 255.255.255.0,無網關。

這將假裝您的電腦始終與 CentOS 電腦位於同一網路上並且始終可以存取它,但仍應允許 WiFi 連接在您使用它時接管並成為您的互聯網連接,並且仍然允許 CentOS 訪問它連接WiFi 時可以訪問互聯網,並且仍然允許其他電腦連接到CentOS,並且仍然允許您的電腦在其他WiFi 網路上工作,但它會阻止您的有線連接在許多地方工作。

您也可以採取其他方法,但它們都會影響這些用例中的一個或多個,並且需要更多的工作來完成。

[編輯:我忽略了你說的「無法訪問localhost」。這可能很重要。您應該準確描述您的測試是什麼 - 您使用哪台計算機,您正在加載什麼軟體,您在哪裡輸入 localhost? ]

編輯:新建議配置

這涉及到擁有一個單獨的兩台電腦網絡,僅供 Windows 與 CentOS 通訊。

  1. 在 Windows 中,在此處顯示的圖像中https://i.stack.imgur.com/a3CIZ.jpg- 前往 VirtualBox 僅主機網路適配器的屬性,進入 Internet 協定 TCP/IP v4 屬性,設定 IP 位址 192.168.250.1 和子網路遮罩 255.255.255.0,將其他設定留空,然後確定它的。

  2. 在 CentOS 虛擬機器設定中(關閉電源),請前往網路設定並將適配器 1 設定為「僅主機適配器」。

  3. 打開 CentOS 機器的電源。編輯/etc/sysconfig/network-scripts/ifcfg-eth0並設定IP位址192.168.250.2和子網路遮罩255.255.255.0。沒有網關,沒有 DNS 伺服器。重新啟動網路或重新啟動 CentOS 電腦。

您現在應該擁有這個新的獨立網路 192.168.250.1 - 192.168.250.2 來在它們之間進行通訊。運行 NGinX,使其偵聽 192.168.250.2 位址,並http://192.168.250.2/在 Windows 中存取以存取它。

不管有沒有 WiFi,這都應該可以工作。唯一的問題是 CentOS 無法存取互聯網進行更新或安裝。如果這是一個問題:

  1. 關閉 CentOS 電腦的電源並前往網路中的 VirtualBox 設定。選擇適配器 2 選項卡,啟用它,將其設定為橋接適配器。

  2. 開啟CentOS機器電源,並配置eth1介面。設定此項目以動態/透過 DHCP 取得 IP 位址。我使用system-config-network-tui但我必須安裝它。您也許可以複製/etc/sysconfig/network-scripts/ifcfg-eth0 to /etc/sysconfig/network-scripts/ifcfg-eth1重新啟動網路以確保它出現。

它應該有一個網路連線連接到您的 WiFi,就像原來的網路連線一樣,只有在連接 WiFi 時才起作用,但 CentOS 可以使用它來存取網路。

相關內容