Вы можете использовать r вместо bc:
A=$(echo "x=( ( ($a / $b) ** .3 ) -1 );print (x)" | r)
, но, конечно, больше языков программирования может решить эту проблему.
Проблема с источником была простой проблемой последовательности в отношении интерфейса vlan. Мой файл сохраняемости сетевого интерфейса изначально был неправильно сконфигурирован:
# WAN vlan 832 internet
auto enp1s0.832
iface enp1s0.832 inet dhcp
up ip link set enp1s0.832 type vlan egress 0:0 1:0 2:0 3:0 4:0 5:0 6:6 7:0
iface enp1s0.832 inet6 dhcp
up ip link set enp1s0.832 type vlan egress 0:0 1:0 2:0 3:0 4:0 5:0 6:6 7:0
request_prefix 1
accept_ra 2
Плохая часть это инструкция "вверх". Сопоставление выхода делается слишком поздно, когда первоначальный ARP/DHCP/NDP уже произошел. Исправление действительно простое, достаточно использовать pre -up вместо:
# WAN vlan 832 internet
auto enp1s0.832
iface enp1s0.832 inet dhcp
pre-up ip link set enp1s0.832 type vlan egress 0:0 1:0 2:0 3:0 4:0 5:0 6:6 7:0
iface enp1s0.832 inet6 dhcp
pre-up ip link set enp1s0.832 type vlan egress 0:0 1:0 2:0 3:0 4:0 5:0 6:6 7:0
request_prefix 1
accept_ra 2
При этом начальное рукопожатие ARP/DHCP/NDP выполняется с правильным приоритетом QoS.