Есть хост-машина и контейнеры. На хосте настроил мост, контейнеры получают IP напрямую от dhcp-сервера. Хост его тоже получает, но не автоматически, а только после запуска dhclient. Как сделать так, чтобы на хосте сразу был интернет, также как и в контейнерах?
/etc/conf.d/net
config_eth0="null"
bridge_br0="eth0"
config_br0="192.168.0.2"
bridge_forward_delay_br0=0
bridge_hello_time_br0=1000
bridge_stp_state_br0=0
Вы определитесь, как Вы настраиваете сеть. Если статически, то этого мало:
config_br0="192.168.0.2"
Нужно, как минимум, указать маску сети.
Если же динамически, то:
config_br0="dhcp"
Вот, в качестве примера, мой работающий конфиг:
bridge_br0="eth0"
config_br0="dhcp"
bridge_forward_delay_br0=0
bridge_hello_time_br0=1000
В директории /etc/init.d/ создал символическую ссылку на /etc/init.d/net.lo с именем net.eth0.
Добавил net.eth0 в автозагрузку с помощью rc-update add net.eth0
В /etc/conf.d/net поменял config_eth0=“null” на config_eth0=“dhcp”
Теперь при включении хост ip-получает, но интернета на нем нет. Помогает /etc/init.d/net.eth0 restart
Пропал интернет в контейнере…
Убрал net.eth0 из автозагрузки с помощью rc-update delete net.eth0
По прежнему запускаю сеть с помощью dhclient. Интернет в контейнере так и не появился. Удалил символическую ссылку /etc/init.d/net.eth0
В контейнерах интернет есть, хост по-прежнему без команды dhclient ip-адрес не получает.
[РЕШЕНО]
проверил после включения пк статус br0
# /etc/init.d/net.br0 status
* status: stopped
# /etc/init.d/net.br0 start
# rc-update add net.br0
После этих команд интернет на хосте появился!
Пока так: когда мост включен, есть связь с контейнерами (в них интернет есть), но выход в интернет на хосте отсутствует. Чтобы выйти в интернет с хоста, нужно отключить мост.