Добавление устройства-крана в мост приводит к сбою DNS (иногда)

Я нахожусь на Ubuntu xenial (16.04 LTS), так как я использую виртуализацию, я решил создать мостовую сеть.

Я создал мост в /etc/network/interfaces примерно так:

iface eth0 inet manual

auto br0
iface br0 inet dhcp
  bridge_ports    eth0
  bridge_stp      off
  bridge_maxwait  0
  bridge_fd       0

, и Интернет работает просто отлично, прежде чем я создаю устройство для прослушивания. Когда я добавляю устройство крана для виртуальной машины следующим образом:

$ user=anyone
$ dev=tap0
$ ip tuntap add $dev mode tap user $usr
$ ip link set $dev up
$ ip link set $dev master br0

я могу использовать устройство крана для доступа к Интернету без проблем от моего виртуализированного гостя и иногда , у меня все еще нормально Доступ в Интернет с моего хоста (т.е. DNS работает).

Однако чаще всего происходит сбой DNS на моей хост-системе (я тестировал, проверяя связь с удаленными хостами с их IP-адресом, и он работал, с их именем не получалось). Все снова в порядке в моей хост-системе, как только я удалю устройство крана.

Я не думаю, что это проблемы с внешними сетями, поскольку у меня была такая же настройка на Fedora, и она работала безупречно. И чтобы было ясно, запускаю ли я виртуальную машину или нет, не имеет значения, как только активируется кран, я могу потерять DNS на хосте, и как только я удалю устройство, он снова заработает.

Я не могу найти ничего полезного в dmesg, syslog или ip route, чтобы помочь мне. Итак, я спрашиваю здесь, кто-нибудь знает, что не так?

С уважением

1
задан 6 November 2017 в 17:44

1 ответ

Хорошо, я решил его. Проблема состоит в том, что устройство моста использует самое низкое количество MAC-адреса своих детей как его собственное по умолчанию. Так как MAC-адреса для устройства касания более или менее случайны, оно иногда изменяет Mac моста, и иногда оно не делает. Случайный MAC заблокирован DNS в моей сети.

К счастью при присвоении MAC мосту, это сохранит его. Таким образом, я должен добавить постоянный MAC-адрес к мосту как это

ip link set br0 address {MAC-ADDRESS}

или иметь его при начальной загрузке я могу добавить пост строку к /etc/network/interfaces

iface br0 inet dhcp
  bridge_ports    eth0
  .
  .
  .
  post-up ip link set br0 address {MAC-ADDRESS}

Для получения дополнительной информации см. http://backreference.org/2010/07/28/linux-bridge-mac-addresses-and-dynamic-ports/

0
ответ дан 8 December 2019 в 05:20

Другие вопросы по тегам:

Похожие вопросы: