1

Я новичок в сети и конфигурации виртуальных ящиков, я потратил несколько дней на решение этой проблемы. Моя цель - заставить работать мостовую сеть.
Когда я пытаюсь подключиться к интерфейсу UP в моей виртуальной виртуальной машине , он пытается получить несколько сообщений DHCPDISCOVER , но в итоге я не получаю ни одного DHCPOFFERS .
Я нахожу, где проблема.
На моем хосте у меня есть следующая конфигурация сетевого интерфейса (интерфейс, с которым я хочу иметь мост).

HWADDR=5c:9a:d8:68:45:ff
DEFROUTE=yes
PEERDNS=yes
PEERROUTES=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes
IPV6_FAILURE_FATAL=no
NAME=enp3s0
DEVICE=enp3s0
ONBOOT=yes
NM_CONTROLLED=no
BOOTPROTO=static
IPADDR=195.XX.YY.ZZ
NETMASK=255.255.255.0
NETWORK=195.XX.YY.0
GATEWAY=195.XX.YY.GGG
BROADCAST=195.XX.YY.255
DNS1=195.XX.YY.DDD
DNS2=8.8.8.8
DOMAIN=some.domain.com

Так что конфигурация статична.
Если использовать BridgedAdapter на интерфейсе, который, в свою очередь, использует dhcp для доступа к Интернету, все работает отлично. как и ожидалось.
Полагаю, что я что-то пропустил, или настройку нужно выполнить по-другому, если честно, я не очень понимаю, как работает внутренняя сеть.
Может быть, проблема может быть легко решена, но недостаточно знаний, чтобы решить ее самостоятельно, поэтому я спрашиваю здесь.
Пожалуйста, помогите решить эту проблему. Спасибо всем заранее за любую помощь

1 ответ1

1

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

Если вы настаиваете на использовании общедоступного IP-адреса для вашего гостя (и, повторяю, вы делаете это вопреки моему совету), вы можете использовать тот же метод, который используется, когда это разрешено законом, то есть, например, когда вы пытаюсь занять личный адрес.

Вам нужно будет найти IP, который еще не занят. Предположим, вы определили, что X - это бесплатный IP-адрес в вашем диапазоне. Тогда все, что вам нужно сделать, это настроить гостя для статического IP.

Отредактируйте файл гостя /etc/network/interfaces и сделайте так, чтобы он выглядел следующим образом:

 auto lo
 iface lo inet loopback

 auto eth0
 iface eth0 inet static
    address X
    netmask 255.255.255.0
    gateway TheIP.Of.Your.Gateway
    dns-nameservers 8.8.8.8 8.8.4.4

Выше предполагается, что eth0 является именем сетевой карты гостя, если она не использует соответствующую (enp3s0?). Теперь перезагрузите гостевую виртуальную машину, и все будет хорошо.

Как вы узнаете адрес X? Прежде всего вам нужно будет прослушивать трафик на вашем обычном (enp3s0) интерфейсе. Используйте Wireshark для этого, вы можете Google, чтобы узнать, как его использовать. Тогда у вас есть два варианта.

  1. используйте бесплатный X ip-адрес, то есть тот, который вы никогда не видели. Возможно, у вашего провайдера есть контрмеры, чтобы заблокировать это, после того, как весь ваш трафик должен пройти через его шлюз, и, если он не хочет, чтобы вы украли публичный IP-адрес, я не смог бы его винить.

  2. используйте занятый IP-адрес. Примите к сведению как IP - адрес и MAC - адрес ПК в вашем диапазоне IP, а затем подменить его. Другими словами, в сетевой панели VirtualBox вставьте поддельный MAC-адрес для MAC-адреса гостевой сетевой карты и используйте IP-адрес в качестве своего X-адреса выше. Эта штуковина будет хорошо работать, когда исходный компьютер простаивает, но наверняка вызовет проблемы в других ситуациях из-за конфликта, присущего наличию двух машин с одинаковыми MAC и IP-адресами.

Позвольте мне также добавить, что существуют методы отслеживания использования поддельного IP-адреса для вас.

По этим и юридическим причинам я настоятельно призываю вас использовать NAT.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .