C'est compliqué !
Il semblerait que le paramètre
bridge (
/etc/board.d/03_box) produise un effet de bord avec le paramètre
macaddr (
/etc/board.d/02_network). Les deux ne sont apparemment pas compatibles.
config device
option name 'switch0.832'
option macaddr '11:22:33:44:55:66'
Ci-dessus, on peut s'apercevoir qu'un nouveau périphérique réseau Ethernet a été créé.
[ -n "$bridge" ] && {
[ -z "$ports" ] && ports="$device"
if [ -z "$vlan" ]; then
bridge_vlan_id=$((bridge_vlan_id + 1))
vlan=$bridge_vlan_id
fi
generate_bridge_vlan $1 $bridge "$ports" $vlan
device=$bridge.$vlan
type=""
}
if [ -n "$macaddr" ]; then
uci -q batch <<-EOF
add network device
set network.@device[-1].name='$device'
set network.@device[-1].macaddr='$macaddr'
EOF
fi
En y regardant de plus près, on peut s'apercevoir que c'est l'assignation de la valeur
$bridge.vlan à la variable
device qui produit un bogue. L'idée est d'obtenir
notre VLAN
$vlan en créant automatiquement le périphérique Ethernet virtuel « 802.1q » lorsqu'on spécifie un nom d'interface composé d'un point suivi d'un nombre.
Le problème étant que ce nom
switch.832 ne désigne plus implicitement le VLAN
832 car il a été repris auparavant pour créer un périphérique Ethernet virtuel
usuel (sans VLAN).
config interface 'wan'
option device 'switch0.832'
option proto 'dhcp'
An equivalent configuration in implicit notation is shown below. Note that the device sections are missing and the VLAN ID and parent interface is derived from the ifname option value in dot-notation.
config interface 'lan'
option type 'bridge'
option ifname 'eth0.106'
option proto 'static'
option ipaddr '192.168.1.1'
option netmask '255.255.255.0'
config interface 'wan'
option ifname 'eth0.204'
option proto 'dhcp'
Source : https://openwrt.org/docs/guide-user/network/vlan/switch_configuration#creating_driver-level_vlans
Note : ifname semble avoir été déprécié et remplacé par device.