我無法從主機存取 Apache 伺服器。
我在 Windows 7 上安裝了 Fedora 15 VM VirtualBox。
不知道我還能做些什麼來讓它運作。
這是我的配置。主機作業系統IP:
IPv4 Address. . . . . . . . . . . : 192.168.0.10
Subnet Mask . . . . . . . . . . . : 255.255.255.0
Default Gateway . . . . . . . . . : 192.168.0.2
對於虛擬機,我安裝了兩個網路適配器:
- NAT使VM機器可以存取Internet,它可以工作。
- 僅主機適配器。
這是訪客上的配置:
[root@localhost network-scripts]# ifconfig
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:14 errors:0 dropped:0 overruns:0 frame:0
TX packets:14 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:1394 (1.3 KiB) TX bytes:1394 (1.3 KiB)
p2p1 Link encap:Ethernet HWaddr 08:00:27:DD:DD:EA
inet addr:10.0.2.15 Bcast:10.0.2.255 Mask:255.255.255.0
inet6 addr: fe80::a00:27ff:fedd:ddea/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:1289 errors:0 dropped:0 overruns:0 frame:0
TX packets:1207 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:936406 (914.4 KiB) TX bytes:137003 (133.7 KiB)
p7p1 Link encap:Ethernet HWaddr 08:00:27:44:A3:DB
inet addr:192.168.56.101 Bcast:192.168.56.255 Mask:255.255.255.0
inet6 addr: fe80::a00:27ff:fe44:a3db/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:313 errors:0 dropped:0 overruns:0 frame:0
TX packets:386 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:30505 (29.7 KiB) TX bytes:44783 (43.7 KiB)
當我ping 192.168.56.101
從主機執行此操作時,我會得到正確的回應,但所有存取 Web 服務的嘗試都會失敗。我收到超時錯誤。
答案1
通常,當允許 ICMP 流量(例如,ping)到達虛擬化來賓但 TCP 流量(例如,HTTP 請求)被阻止時,問題出在來賓作業系統上運行的軟體防火牆。
筆記:本說明中的指令語法是 Fedora Core 特定的,但可以抽像出一般步驟以用於其他 Linux 發行版。
Fedora Core 的預設安裝已啟用 IPTables。檢查 IPTables 服務的狀態以查看是否處於「活動」狀態。
[root@gauss ~]# /bin/systemctl status iptables.service
此外,若要查看目前活動的 IPTables 規則,請檢查 IPTables 初始化腳本的狀態。
[root@gauss ~]# /usr/libexec/iptables.init status
如果 INPUT 鏈中存在類似於下麵包含的規則的 IPTables,則它負責阻止到主機的 TCP/IP 和 UDP 流量。
REJECT all -- 0.0.0.0/0 0.0.0.0/0 reject-with icmp-host-prohibited
關於如何啟用HTTP 流量,有多種選項(例如,在INPUT 鏈中新增IPTables 規則,以明確接受來自虛擬機器管理程式的僅主機網路IP 192.168.56.1 的連接埠80 上的TCP 流量,刪除INPUT 中的通用DROP 規則鍊等)。
由於來賓不面向外界且位於僅主機網路上,因此最簡單的選擇是停止 IPTables 並停用它,以便它不會在重新啟動時自動啟動。
[root@gauss ~]# /bin/systemctl stop iptables.service
[root@gauss ~]# /bin/systemctl disable iptables.service
完成此操作後,Fedora Core 來賓將能夠透過其公共介面提供 HTTP 請求,並且可以透過在瀏覽器或任何其他 HTTP 用戶端中輸入 192.168.56.101 在 Windows 7 虛擬機器管理程式上查看頁面。