Локальная сеть с реальными адресами из блока 1.1.1.0/25 подключена к провайдеру по Ethernet. Для выхода в интернет между шлюзом сети (FreeBSD) и шлюзом провайдера (Linux) установлен туннель на IPSec. В IPSec используется ESP для аутентификации и шифрования.
На FreeBSD был создан gif-интерфес. /etc/rc.conf:
gif_interfaces="gif0"
gifconfig_gif0="10.0.1.21 2.2.2.1"
ifconfig_gif0="inet 1.1.1.1/25 2.2.2.2"
defaultrouter="-interface gif0"
10.0.1.21 - локальный адрес на сетевухе FreeBSD, 2.2.2.1 - реальный адрес со стороны провайдера. Роутинг между 10.0.1.21 и 2.2.2.1 локальный через Ethernet. Далее, туннелю на верхнем уровне со стороны FreeBSD присваивается адрес 1.1.1.1 из блока 1.1.1.0/25, со стороны провайдера я указывал вообще произвольный адрес (какой смысл вообще этот адрес имеет?), в данном случае 2.2.2.2. Роутинг по умолчанию заворачивается на интерфейс gif0.
route get на все адреса интернета показывает, что они идут именно через интерфейс gif0. Однако tcpdump -i gif0 не показывает вообще ничего. Т.е. трафик интернета выходит не идет через интерфейс gif0? А зачем тогда этот интерфейс нужен?