A priorização de interfaces de rede é feita pela atribuição de métricas. Interfaces com uma maior métrica (custo) são menos desejáveis. No Windows e no Linux, pelo menos, as métricas também são suportadas diretamente nas rotas, além das interfaces.
No FreeBSD, você pode passar opções arbitrárias para ifconfig
através de uma variável ifconfig_<ifname>
em rc.conf
:
ifconfig_em0="inet 192.0.2.129/27 metric 10"
ifconfig_em1="inet 192.0.2.129/27 metric 20"
Eu não tenho uma VM para verificar a sintaxe exata agora, mas basicamente é assim que funciona.
Informações oficiais estão disponíveis no rc.conf (5) e ifconfig (8) páginas man.