Второй интерфейс Virtualbox NAT переадресация не работает.

Вопрос или проблема

У меня Virtualbox с 4 сетевыми адаптерами.

  1. адаптер только хост
  2. адаптер внутренний
  3. адаптер только хост
  4. адаптер NAT

РЕДАКТИРОВАТЬ:
NAT первый интерфейс:

route -n

0.0.0.0         10.0.2.2        0.0.0.0         UG    100    0        0 enp0s3
10.0.2.0        0.0.0.0         255.255.255.0   U     100    0        0 enp0s3
10.0.2.2        0.0.0.0         255.255.255.255 UH    100    0        0 enp0s3
10.0.2.3        0.0.0.0         255.255.255.255 UH    100    0        0 enp0s3
10.10.0.0       0.0.0.0         255.255.255.0   U     100    0        0 enp0s8
203.0.133.0     0.0.0.0         255.255.255.0   U     100    0        0 enp0s9


1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host noprefixroute
       valid_lft forever preferred_lft forever
2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 08:00:27:46:e4:90 brd ff:ff:ff:ff:ff:ff
    inet 10.0.2.15/24 metric 100 brd 10.0.2.255 scope global dynamic enp0s3
       valid_lft 86198sec preferred_lft 86198sec
    inet6 fd00::a00:27ff:fe46:e490/64 scope global dynamic mngtmpaddr noprefixroute
       valid_lft 86201sec preferred_lft 14201sec
    inet6 fe80::a00:27ff:fe46:e490/64 scope link
       valid_lft forever preferred_lft forever
3: enp0s8: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 08:00:27:fc:34:9c brd ff:ff:ff:ff:ff:ff
    inet 10.10.0.6/24 metric 100 brd 10.10.0.255 scope global dynamic enp0s8
       valid_lft 398sec preferred_lft 398sec
    inet6 fe80::a00:27ff:fefc:349c/64 scope link
       valid_lft forever preferred_lft forever
4: enp0s9: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 08:00:27:fb:36:58 brd ff:ff:ff:ff:ff:ff
    inet 203.0.133.5/24 metric 100 brd 203.0.133.255 scope global dynamic enp0s9
       valid_lft 398sec preferred_lft 398sec
    inet6 fe80::a00:27ff:fefb:3658/64 scope link
       valid_lft forever preferred_lft forever
5: enp0s10: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 08:00:27:82:93:6b brd ff:ff:ff:ff:ff:ff
    inet6 fe80::a00:27ff:fe82:936b/64 scope link
       valid_lft forever preferred_lft forever

Только хост первый интерфейс и NAT второй интерфейс:

route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         10.0.2.2        0.0.0.0         UG    100    0        0 enp0s8
10.0.2.0        0.0.0.0         255.255.255.0   U     100    0        0 enp0s8
10.0.2.2        0.0.0.0         255.255.255.255 UH    100    0        0 enp0s8
10.0.2.3        0.0.0.0         255.255.255.255 UH    100    0        0 enp0s8
10.10.0.0       0.0.0.0         255.255.255.0   U     100    0        0 enp0s3
203.0.133.0     0.0.0.0         255.255.255.0   U     100    0        0 enp0s9

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host noprefixroute
       valid_lft forever preferred_lft forever
2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 08:00:27:46:e4:90 brd ff:ff:ff:ff:ff:ff
    inet 10.10.0.5/24 metric 100 brd 10.10.0.255 scope global dynamic enp0s3
       valid_lft 462sec preferred_lft 462sec
    inet6 fe80::a00:27ff:fe46:e490/64 scope link
       valid_lft forever preferred_lft forever
3: enp0s8: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 08:00:27:fc:34:9c brd ff:ff:ff:ff:ff:ff
    inet 10.0.2.15/24 metric 100 brd 10.0.2.255 scope global dynamic enp0s8
       valid_lft 85962sec preferred_lft 85962sec
    inet6 fd00::a00:27ff:fefc:349c/64 scope global dynamic mngtmpaddr noprefixroute
       valid_lft 85964sec preferred_lft 13964sec
    inet6 fe80::a00:27ff:fefc:349c/64 scope link
       valid_lft forever preferred_lft forever
4: enp0s9: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 08:00:27:fb:36:58 brd ff:ff:ff:ff:ff:ff
    inet 203.0.133.5/24 metric 100 brd 203.0.133.255 scope global dynamic enp0s9
       valid_lft 462sec preferred_lft 462sec
    inet6 fe80::a00:27ff:fefb:3658/64 scope link
       valid_lft forever preferred_lft forever
5: enp0s10: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 08:00:27:82:93:6b brd ff:ff:ff:ff:ff:ff
    inet6 fe80::a00:27ff:fe82:936b/64 scope link
       valid_lft forever preferred_lft forever

Я не могу подключиться к своей виртуальной машине с использованием NAT и переадресации портов, когда NAT находится на второй, третьей или последней позиции в сетевом интерфейсе.

Он всегда должен быть на первой позиции.

Может кто-то объяснить почему?

Спасибо

Этот ответ был отозван.

Ответ или решение

Настройка подключений в VirtualBox, особенно в контексте работы с несколькими сетевыми адаптерами, может вызвать ряд вопросов. Вы столкнулись с ситуацией, когда NAT работает только в том случае, если он установлен как первый сетевой интерфейс, и не работает, если он находится на второй, третьей или последней позиции. Давайте разберемся, почему это происходит и как можно решить данную проблему.

Теория

VirtualBox предоставляет возможность использовать различные типы сетевых адаптеров для виртуальных машин, включая NAT, Host-Only, Internal и Bridge. Каждый из них имеет свои особенности и предназначен для различных целей.

NAT (Network Address Translation) используется для предоставления виртуальной машине доступа в интернет через сетевой интерфейс хоста. Этот тип подключения особенно полезен, когда вам необходимо обеспечить основной доступ в интернет без изменения конфигурации сети хоста.

Важный момент: первый сетевой адаптер в виртуальной машине в VirtualBox часто задает основные параметры маршрутизации и, по умолчанию, назначается маршрут по умолчанию. Это критично, когда вы имеете дело с NAT, поскольку именно через него осуществляется трансляция адресов и маршрутизация трафика из виртуальной машины.

Пример

Из предоставленного описания видно, что NAT-соединение работает корректно, только если оно находится на первой позиции. Если вы добавляете NAT на более поздние позиции (второй, третий или четвертый адаптер), то подключение не работает.

Причина этого в том, как система определяет маршрут по умолчанию. Рассмотрим вашу текущую конфигурацию сети. Когда NAT установлен первым адаптером, команда route -n указывает маршрут по умолчанию на интерфейс NAT (например, 0.0.0.0 10.0.2.2 UG 100 0 0 enp0s3). Это означает, что весь интернет-трафик будет отправляться через этот интерфейс. Однако, когда NAT назначается другим адаптером, этот маршрут по умолчанию может быть изменен или вовсе отсутсвует, что приводит к неработающей транcпортировке.

Применение

Чтобы решить проблему, вы можете попробовать следующее:

  1. Проверка конфигурации маршрутизации: Убедитесь, что маршрут по умолчанию всегда указывает на NAT-интерфейс. Можно вручную изменить маршруты, используя команду route или ip route в зависимости от вашей системы.

  2. Автоматическа маршрутизация через VirtualBox: Через VBoxManage или графический интерфейс VirtualBox убедитесь, что NAT всегда связан с первой позицией или установлен правильный маршрут.

  3. Настройка правил портов: Иногда проблема может быть связана не только с маршрутизацией, но и с настроенными правилами трансляции портов. Убедитесь, что правила подходят текущему интерфейсу NAT.

  4. Настройка вручную пути маршрута на виртуальной машине: Используйте команды системы (например, ip route add) для добавления необходимых маршрутов, чтобы трафик NAT знал, через какой интерфейс выходить.

  5. Проверка DHCP-клиента и сервиса DNS: Иногда конфликты могут возникать из-за настроек DHCP или DNS, убедитесь, что эти службы корректно настроены для работы с NAT интерфейсами.

При выполнении этих шагов ваша конфигурация должна стабилизироваться, и NAT должен начать корректно работать, даже если он не на первом положении. Такой подход требует понимания общей концепции сетевой маршрутизации и специфики работы NAT в VirtualBox, что поможет вам более эффективно решать аналогичные задачи в будущем.

Оцените материал
Добавить комментарий

Капча загружается...