setfib -F 0 ping ya.ru
setfib -F 1 ping ya.ru
Используется FreeBSD 13.1, ipfw, natd (поднятый на обоих сетевых интерфейсах на разных портах).
Задача выпускать (заставлять работать, используя строго канал setfib 1) часть избранных пользователей из локалок, подключенных к этому шлюзу. Для этого добавляю ip нужных мне пользователей в ipfw table:
Код: Выделить всё
...
# To backup ISP start
${fwcmd} table 25 flush
/bin/cat /usr/local/etc/squid/bc_ch.list | while read ip; do
${fwcmd} table 25 add $ip
done
# To backup ISP end
...
Код: Выделить всё
...
# NATD Backup ISP forward users
${fwcmd} add 460 divert natd2 ip from table\(25\) to any
${fwcmd} add 470 fwd IP_GW_BACKUP_ISP ip from IP_BACKUP_ISP to any
...
${fwcmd} add divert natd2 ip from any to IP_BACKUP_ISP in via igb3
...
${fwcmd} add pass all from table\(25\) to any keep-state
...
В связи с чем у меня возникают сомнения в корректности указанной схемы использования строго второго канала для занесенной в таблицу группы пользователей.
Усложнение правил ipfw с вариациями использования с setfib пока ясности не добавило, хотелось бы услышать экспертные мнения по реализации задуманного.