net.br0 не поднимается при загрузке системы, но вручную стартует

собстенно, сабж.
имеется банальная потребность: eth0 + wlan0 == br0
был собран и поставлен hostapd, настроен на бридж.
конфиг /etc/conf.d/net:

config_eth0="null"
config_wlan0="null"
bridge_br0="eth0"
config_br0="192.168.1.1/24"

далее разумеется

ln -s /etc/init.d/net.lo /etc/init.d/net.br0
rc-update add net.br0 boot

после проделанного ручками пишу /etc/init.d/net.br0 start && /etc/init.d/hostapd start и мост собирается как положено, однако стоит тачку перезагрузить, как сталкиваюсь с такой проблемой: openRC в упор не хочет даже _пытаться_ стартануть мост. вообще ниодного упоминания в стартовом логе. будто я вообще не делал линк на net.br0 и не засовываол его в ранлевел.

P.S. сразу wlan0 в бридж не добавляю по той причине, что чуть позже его добавляет hostapd, если добавлять сразу вылезают другого рода косяки. но даже если с ними бороться, первоначальная проблема остаётся: мост после ребута сам не собирается.

решил что касяк из-за того что указан один интерфейс, попробывал так: bridge_br1="eth2 eth3" (благо на машине 5 интерфейсов). та же ситуация - мост сам автоматом не собирается. только ручками командой /etc/init.d/net.br1

почему OpenRC игнорит бриджи? кто-нибудь сталкивался с подобной проблемой?

мб кому поможет, вот обходной

мб кому поможет, вот обходной путь:
в ранлевел добавляем интерфейсы, входящие в состав моста (в моём случае я добавил только eth0) и br0.
конфиг net:

config_eth0="null"
config_wlan0="null"
bridge_br0="eth0"
bridge_add_eth0="br0"
config_br0="192.168.1.1/24"
depend_br0() {
    need net.eth0
}

bridge_add_ethX="br0" для каждого входящего в состав моста устройства.
в итоге устройства стартуют, создают бридж добавляют себя туда, потом стартует (почему-то теперь openrc его начинает стартовать) мост, разрушает созданный ранее br0, создаёт его заново и запихивает туда интерфейсы описаные в bridge_br0.

в принципе хоть способ и наносит ущерб карме, но работает. вопрос правда всёравно остаётся в силе: почему openrc не хочет стартовать бридж, если предварительно этот бридж в системе не был создан?

Всего-то надо было прочесть

Всего-то надо было прочесть документацию:

Цитата:
#-----------------------------------------------------------------------------
# Bridging (802.1d)
# For bridging support emerge net-misc/bridge-utils

# To add ports to bridge br0
#bridge_br0="eth0 eth1"
# or dynamically add them when the interface comes up
#bridge_add_eth0="br0"
#bridge_add_eth1="br0"

# NOTE: If you want to manually start an empty bridge, and then dynamically add
# ports to it you must set at least one of the following variables based on the
# interface name, so that we can pick it up from your configuration. Even an
# empty value variable is fine, but at least one of them must be set:
# brctl_IFVAR

# You need to configure the ports to null values so dhcp does not get started
#config_eth0="null"
#config_eth1="null"

# Finally give the bridge an address - dhcp or a static IP, this is assigned to
# the bridge when the bridge is explicitly started.
#config_br0="dhcp" # may not work when adding ports dynamically
#config_br0="192.168.0.1/24"

# If any of the ports require extra configuration - for example wireless or
# ppp devices - we need to depend on them like so.
#rc_need_br0="net.eth0 net.eth1"

config_eth0="null"
config_wlan0="null"
bridge_br0="eth0"
config_br0="192.168.1.1/24"
rc_need_br0="net.eth0"

Не грусти, товарищ! Всё хорошо, beautiful good!

Настройки просмотра комментариев

Выберите нужный метод показа комментариев и нажмите "Сохранить установки".