Problema nº 1 - tipos de rede VM
Existem 3 modos de rede:
- NAT
- Somente host
- Bridged
Detalhes sobre como configurá-los
Quando usar cada um?
- # 1 : Para o desenvolvimento de aplicativos do Facebook / web que estão em outros servidores
- # 2 : se você deseja criar seu próprio aplicativo e testá-lo no host do VirtualBox (não apenas na VM convidada)
- # 3 : se você deseja criar um aplicativo e testá-lo em outros sistemas na LAN
Problema nº 2 - bloqueio de firewall?
Dependendo da distro que você está usando, o firewall pode estar impedindo o seu navegador de acessar a instância do Apache. Isso faria sentido, já que você é capaz de executar ping no sistema, mas não acessá-lo pela porta 80, que é a porta que o Apache está ouvindo.
desativando temporariamente
No CentOS, você usa este comando para desativá-lo.
$ /etc/init.d/iptables stop
verifique se o Apache está ouvindo
Você também pode confirmar que está ouvindo nesta porta.
$ netstat -antp | grep :80 | head -1 | column -t
tcp 0 0 :::80 :::* LISTEN 3790/httpd
confirme a desativação do firewall
O firewall pode ser confirmado como totalmente aberto.
$ iptables -L
Chain INPUT (policy ACCEPT)
target prot opt source destination
Chain FORWARD (policy ACCEPT)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
Se isso resolver seu problema, você poderá adicionar permanentemente uma regra que permita o tráfego via porta TCP 80.
adicionando uma regra para a porta TCP 80
$ /etc/init.d/iptables restart
$ iptables -A INPUT -p tcp -m tcp --dport 80 -j ACCEPT
$ /etc/init.d/iptables save
NOTA: Isso fará com que a regra persista entre as reinicializações.
firewall está aceitando a porta TCP 80
Um sistema com a porta 80 aberta seria algo como isto:
$ iptables -L
Chain INPUT (policy ACCEPT)
target prot opt source destination
ACCEPT all -- anywhere anywhere state RELATED,ESTABLISHED
ACCEPT icmp -- anywhere anywhere
ACCEPT all -- anywhere anywhere
ACCEPT all -- anywhere anywhere
ACCEPT tcp -- anywhere anywhere state NEW tcp dpt:ssh
ACCEPT tcp -- anywhere anywhere state NEW tcp dpt:http
ACCEPT tcp -- anywhere anywhere state NEW tcp dpt:https
ACCEPT tcp -- anywhere anywhere state NEW tcp dpt:8834
REJECT all -- anywhere anywhere reject-with icmp-host-prohibited
Chain FORWARD (policy ACCEPT)
target prot opt source destination
ACCEPT all -- anywhere anywhere state RELATED,ESTABLISHED
ACCEPT icmp -- anywhere anywhere
ACCEPT all -- anywhere anywhere
ACCEPT all -- anywhere anywhere
REJECT all -- anywhere anywhere reject-with icmp-host-prohibited
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
Edição # 3 - Apache ouvindo?
Na edição acima, vimos que o Apache estava escutando, mas às vezes é configurado incorretamente, de modo que está escutando apenas um endereço IP ou está escutando em uma interface de rede diferente. O comando netstatpode ser usado para verificar isso novamente e também para revisar os arquivos de configuração do Apache.
$ netstat -anpt | grep :80 | column -t
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 1750/httpd
Isso mostra que o Apache está escutando em todas as interfaces (IP 0.0.0.0).
Não vou repetir a resposta de @ Lekensteyn que aborda essa questão em particular em mais detalhes aqui.
Referências
:::80, o Apache está apenas ouvindo conexões IPv6. Você já tentou verificar suasListendiretrizes?