A camada de rede recebe o pacote para o MAC 22: 22: 22: 22: 22, mas como o endereço MAC não pertence a tap1, o pacote é ignorado. Definir a interface como promíscua não desabilita essa verificação, apenas a move para mais tarde no código de rede.
Encaminhar pacotes que têm um destino MAC que não é o da interface na qual o pacote é recebido é chamado de ponte. Se você conectar pacotes através da máquina B, você poderá configurar as máquinas A e C normalmente sem as rotas ARP estáticas, e parece que é isso que você quer fazer.