lxd с собственным br0 Сеть недоступна в centos context

Когда я запускаю lxd init, я выбираю этот параметр.

Would you like to create a new network bridge (yes/no)? no

, потому что я создал свой собственный br0 в / etc / network / interfaces

source /etc/network/interfaces.d/*

auto lo
iface lo inet loopback

auto br0
iface br0 inet static
    address x.x.50.2
    netmask 255.255.252.0
    broadcast x.x.x.255
    network x.x.x.0
    gateway x.x.53.254
    dns-nameservers 8.8.8.8

    bridge_ports eth0
    bridge_stp off
    bridge_fd 0
    bridge_maxwait 0

iface eth0 inet manual

Затем я запускаю lxd centos и запускаю

 lxc config device add first eth0 nic nictype=bridged parent=br0
 lxc config device set first eth0 ipv4.address x.x.51.2
 lxc config device set first eth0 security.mac_filtering true

и меняю конфигурацию в

 /var/lib/lxd/containers/second/rootfs/etc/sysconfig/network-scripts/ifcfg-eth0

 DEVICE=eth0
 BOOTPROTO=none
 ONBOOT=yes
 HOSTNAME=LXC_NAME
 NM_CONTROLLED=no
 TYPE=Ethernet
 IPADDR=x.x.51.2
 NETMASK=255.255.255.255
 GATEWAY=x.x.53.254
 DNS1=8.8.8.8
 DNS2=x.x.x.x
 MTU=
 DHCP_HOSTNAME=x.x.50.2

. Когда я пытаюсь выполнить ping 8.8.8.8, я получаю Connection: Network is Unreachable

/etc/resolv.conf

 nameserver 8.8.8.8
 search lxd
 nameserver x.x.x.x

Что я делаю не так, я не могу понять, может быть, у меня отсутствует какая-то концепция?

1
задан 12 July 2017 в 20:34
1 ответ

Используете ли вы выделенную сетевую карту для своих контейнеров? Вам не нужно устанавливать статический IP-адрес на вашем мосту:

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

iface eth0 inet manual

И если вы устанавливаете свой IP-адрес внутри вашего рассмотрения, я обычно не устанавливаю его на уровне конфигурации lxc

lxc config device unset first eth0 ipv4.address

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

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

  1. На хосте:
    • Временно удалите мост из своей конфигурации (просто закомментируйте его) и установите статический IP-адрес на eth0.
      • Можно ли пинговать eth0 пинговать 192.168.0.10 ? Если да, то eth0 включен и работает. Если нет, значит, у вас проблема с вашим сетевым адаптером.
      • Можете ли вы пропинговать шлюз ping 192.168.0.1 ? Если да, то подключение уровня 2 работает. Если нет, то у вас проблема уровня 2. Проверьте свои соединения, коммутатор и т. Д. (Любая фильтрация на основе MAC).
      • Можете ли вы пинговать за пределами шлюза пинговать 8.8.8.8 ? Если да, то подключение уровня 3 работает. Если нет, то, скорее всего, у вас проблема уровня 3. Проверьте таблицу маршрутизации ip route show , маршрутизатор и т. Д.
    • Если все они работают, вы знаете, что eth0 работает отлично. Теперь вы снова создаете свой мост, снова установите для eth0 ручной режим и дадите ему этот IP-адрес вашему мосту. Повторите 3 дополнительных шага выше. Если все они успешны, то вы знаете, что проблема не в хосте, а в контейнере.
    • Удалите IP-адрес с вашего моста и верните его в ручной режим. Переходите к следующему шагу.
  2. В контейнере:
    • Можно ли пинговать eth0 пинговать 192.168.0.10 ? Если да, значит, сетевая карта работает, продолжайте. Если «Нет», значит, проблема с самой сетевой картой, вы не сможете подключиться к сети. Проверьте журналы LXD, журналы ядра, запустите тесты Ethernet и т. Д. Если это так, то проблема, скорее всего, связана с конфигурацией, поскольку вы уже протестировали фактическое устройство eth0 на хосте и обнаружили, что оно работает, чтобы зайти так далеко. .
    • Можете ли вы пропинговать шлюз ping 192.168.0.1 ? Если да, значит слой 2 работает, продолжаем. Если нет, значит, у вас проблема уровня 2.
    • Можете ли вы пинговать за пределами шлюза (мы уже знаем, что вы не можете) пинговать 8.8.8.8 ? Есть проблема уровня 3. Проверить маршруты ip route show
0
ответ дан 4 December 2019 в 04:48

Теги

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