Funcionou dessa forma abaixo;.

REDE

xl0 (Rede Interna): 
IP: 192.168.0.1
REDE: 192.168.0.0 / 255.255.255.0

xl1 (ISP1):
IP: 100.100.100.100
Gateway: 100.100.100.1

xl2 (ISP2):
IP: 200.200.200.200
Gateway: 200.200.200.1# rc.firewall
00010 divert 8669 ip from any to 200.200.200.200 in recv xl2
00020 divert 8669 ip from 192.168.0.0/24 to any out xmit xl1
00030 fwd 200.200.200.1 ip from 200.200.200.200 to any
00040 divert 8668 ip from any to 100.100.100.100 in recv xl1
00050 divert 8668 ip from 192.168.0.0/24 to any out xmit xl165535 deny ip from 
any to any
#------- FIM RC.FIREWALL -------------Coloquei isso natd -s -n rl0 -p 8668natd 
-s -n rl2 -p 8669 Gateway default, configurado no rc.conf: 100.100.100.1
O problema é que eu usava o NATD.CF para fazer os nats e o SQUID tive que 
desativar porque só rodar com o LINK xl1 e para quando deixo com só o xl2 UP, 
dando o seguinte erro; O cache foi incapaz de resolver o nome do host presente 
na URL. O Servidor DNS retornou; Timeout.
 EU uso essa regra no RC.FIREWALL para ativar o proxy transparente.
50005 fwd localhost,3189 tcp from 192.0.0.0/8 to not 100.100.100.0/24 80
-------------------------
Histórico: http://www.fug.com.br/historico/html/freebsd/
Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd

Responder a