>Boris Polevoy, большое спасибо за ответ. С его помощью решу вторую проблему.
>А первую решил после того как вы проигнорировали первую. :) Подумал,
>что наверное я чего-то совсем несуразное делаю. Оказывается, грузиться правилам мешали
>конструкции from 1.1.1.1 to tun0.
>Фича удобная, но корявая - не найдя такого интерфейса pfctl пытался эти
>имена разрешить. Но не так уж это и надо было... man pf.conf:
Host name resolution and interface to address translation are done
at ruleset load-time. When the address of an interface (or host
name) changes (under DHCP or PPP, for instance), the ruleset must
be reloaded for the change to be reflected in the kernel. Sur-
rounding the interface name (and optional modifiers) in parentheses
changes this behaviour. When the interface name is surrounded by
parentheses, the rule is automatically updated whenever the inter-
face changes its address. The ruleset does not need to be
reloaded. This is especially useful with nat.
Если задать имя интерфейса в круглых скобках (tun0), то при проверке правила будет браться текущий адрес интерфейса.