Захотелось подключаться к VM (виртуальной машине) по статичному IP, т.е. хочу подключаться по HTTP и по SSH тоже :) сказано - сделано.
1. Нам нужен адаптер (сетевуха) с постоянным IP-адресом, поэтому настоим ее:
2. По умолчанию, адаптер vboxnet0 динамически получает IP адрес во время сессии подключения от DHCP-сервера. Для моего виртуального web-сервера Wordpress необходимо, чтобы он имел статический IP-адрес. Поэтому на вкладке "DHCP сервер" я убрал галочку с надписи "Включить сервер". Таким образом, DHCP-сервер у меня отключен.
3. Теперь захожу в настройки своей VM и на вкладке Адаптер 2 указываю:
Нажимаю ок и запускаю VM (никакие порты пробрасывать не нужно).
4. VM загрузилась, логинюсь в виртуалке под рутом и выполняю в виртуалке команду:
ifconfig eth1 192.168.56.101
по идее еще нужно выполнить команду:
netmask 255.255.255.0 up
но команда выдает у меня ошибку (на которую можно забить): netmask: unable to parse "up": Resource temporarily unavailable
все, теперь можно подключиться к нашей VM по SSH или открыть в браузере http://192.168.56.101/ и если на Вашей VM установлен Apache, то убедитесь что он работает.
Наверное у вас возник вопрос, как так, мы создали интерфейс 192.168.56.1 а подключаемся к 192.168.56.101, не переживайте, это нормально.
5. Увы, настройки описанные в пункте 4 являются временными, и чтобы все работало даже после перезагрузки VM, нужно правильно скофигурировать сетевые интерфейсы. Для Debian файл /etc/network/interfaces у меня получился такой файл:
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).# The loopback network interface
auto lo
iface lo inet loopback# The primary network interface
#allow-hotplug eth0
#iface eth0 inet dhcp
auto eth0
iface eth0 inet dhcpauto eth1
iface eth1 inet static
address 192.168.56.101
netmask 255.255.255.0
network 192.168.56.0
broadcast 192.168.56.255
* зеленым выделил то, что добавил
Для CentOS 6.5 в файле /etc/sysconfig/network-scripts/ifcfg-eth0 у меня получился такой конфиг:
DEVICE=eth0
BOOTPROTO=dhcp
ONBOOT=yes
TYPE=Ethernet
IPV6INIT=no
USERCTL=no
создайте файл /etc/sysconfig/network-scripts/ifcfg-eth1 с такими настройками:
DEVICE=eth1
IPV6INIT=no
IPADDR=192.168.56.101
NETMASK=255.255.255.0
ONBOOT=yes
TYPE=Ethernet
Теперь перезагрузите виртуалку или выполните команду:
service network restart
Этого будет достаточно, чтобы подключаться к своей виртуалке.
С Debian доступ во внешку появляется сразу, но, если Вам понадобится доступ из виртуалки CentOS во внешку, то в виртуалке выполните команду:
route add default gw 10.0.2.2
Если что, в виртуалке проверяйте настройки командой ifconfig Вы должны добиться ситуации, когда у Вас будет приблизительно такая ситуация:
# ifconfig
eth0 Link encap:Ethernet HWaddr 08:00:27:88:75:78
inet addr:10.0.2.15 Bcast:10.0.2.255 Mask:255.255.255.0
inet6 addr: fe80::a00:27ff:fe88:7578/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:16 errors:0 dropped:0 overruns:0 frame:0
TX packets:23 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:2702 (2.6 KiB) TX bytes:2441 (2.3 KiB)
eth1 Link encap:Ethernet HWaddr 08:00:27:c5:d8:41
inet addr:192.168.56.101 Bcast:192.168.56.255 Mask:255.255.255.0
inet6 addr: fe80::a00:27ff:fec5:d841/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:46 errors:0 dropped:0 overruns:0 frame:0
TX packets:52 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:6815 (6.6 KiB) TX bytes:6791 (6.6 KiB)
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:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
в CentOS # route
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
10.0.2.0 * 255.255.255.0 U 0 0 0 eth0
192.168.56.0 * 255.255.255.0 U 0 0 0 eth1
link-local * 255.255.0.0 U 1002 0 0 eth0
link-local * 255.255.0.0 U 1003 0 0 eth1
default 10.0.2.2 0.0.0.0 UG 0 0 0 eth0
default 192.168.56.1 0.0.0.0 UG 0 0 0 eth1
в Debian # route
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
default 10.0.2.2 0.0.0.0 UG 0 0 0 eth0
10.0.2.0 * 255.255.255.0 U 0 0 0 eth0
192.168.56.0 * 255.255.255.0 U 0 0 0 eth1
p.s. VirtualBox 4.3.10, удачки.
DDNS работает, но и это бесполезно, потому что соединения извне тупо закрыты провайдером.
Поэтому использую вот такой бесплатный VPN сервис - https://vpnki.ru Они не предоставляют выход в интернет, но объединяют мои туннели - один с дачи, другой с смартфона.
Вдруг кому-то это поможет.