После большого количества форумов RTFM и чтения у меня все еще есть проблемы и мне нужен совет. Я использую Virtualbox в Ubuntu и установил сервер Centos в качестве гостя. Моя проблема в том, что я не могу получить доступ к веб-серверу на гостевой ОС с хост-ОС.
Вот подробности: ОС хоста - Ubuntu 12.04 LTS (ядро 3.2.0-24-generic) 64-битная.
Я использую Virtualbox 4.1.12.
Я получаю свой IP-адрес от моего беспроводного маршрутизатора:
eth0 Link encap:Ethernet HWaddr 18:03:73:42:3d:ac
UP BROADCAST MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
Interrupt:47 Base address:0xe000
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:3784 errors:0 dropped:0 overruns:0 frame:0
TX packets:3784 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:378673 (378.6 KB) TX bytes:378673 (378.6 KB)
wlan0 Link encap:Ethernet HWaddr 64:27:37:69:c5:d2
inet addr:192.168.1.15 Bcast:192.168.1.255 Mask:255.255.255.0
inet6 addr: fe80::6627:37ff:fe69:c5d2/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:124013 errors:0 dropped:0 overruns:0 frame:0
TX packets:82469 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:164307087 (164.3 MB) TX bytes:9744555 (9.7 MB)
Итак, я установил CentOS в качестве гостевой ОС и хочу получить доступ к ее http-серверу. В настройках сети в Virtualbox у меня есть это: подключен к мостовому адаптеру
Имя: wlan0
Я разрешаю режим Promiscuous для виртуальных машин.
И «Кабель подключен» отмечен галочкой.
На машине CentOS интерфейс eth0 взял IP-адрес 192.168.1.20 с маской 255.255.255.0. Пока все выглядит нормально, две системы могут пинговать друг друга. Я запустил веб-сервер, и он прослушивает порт 80 - проверено с помощью netstat. (Однако не измените файл конфигурации по умолчанию веб-сервера.)
Когда я хочу подключиться к веб-серверу на компьютере CentOS, я не могу. «Невозможно подключиться», говорит Firefox, Chrome также недоволен: Chrome не может подключиться к 192.168.1.20. (Я не использую никакого прокси здесь.)
Я попытался telnet к порту 80 на гостевой системе - не радость:
:~$ telnet 192.168.1.20 80
Trying 192.168.1.20...
telnet: Unable to connect to remote host: No route to host
Не уверен, что это важно, но таблица маршрутов на гостевой ОС здесь:
[root@centos ~]# route
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
192.168.1.0 * 255.255.255.0 U 0 0 0 eth0
link-local * 255.255.0.0 U 1002 0 0 eth0
default 192.168.1.1 0.0.0.0 UG 0 0 0 eth0
(Забавно, просто понял, что я могу использовать SSH из Ubuntu в CentOS.)
Я пробовал разные настройки в Virtualbox, но вышесказанное ближе всего к тому, что люди предлагают на разных форумах. Пробовал NAT с переадресацией портов, адаптер только для хоста, но мне не удалось это исправить.
Кто-нибудь может пролить немного света для меня, пожалуйста? ура
Ответы:
Решением было открыть порт на брандмауэре гостевой ОС, как описано здесь: http://wiki.centos.org/HowTos/Network/IPTables
Настройки сети в Virtualbox были в порядке - мостовая сеть является правильной настройкой.
источник
firewall-cmd --zone=external --add-service=http --permanent; firewall-cmd --reload
Отключение внутреннего брандмауэра гостевой ОС, как показано ниже, позволит вам получить доступ. Тип
в командной строке, когда в гостевой ОС.
источник