LINUX.ORG.RU
ФорумAdmin

[FreeBSD закопать]pf+nat+bsd проблемы


0

1

Доброго времени суток. Подбили меня поставить на домашний сервак БСД, заманили zfs и jail'ами. Про то, как я плевался во время установки и настройки здесь писать не буду, скажу лишь, что FreeBSD - не нужна.

Теперь к сути. Есть бздя. На ней есть 2 интерфейса: re0 и msk0. re0 смотрит в интернеты, msk0 смотрит в сеть. Надо раздавать интернеты в локальную сеть. re0 получает настройки по dhcp. msk0 пока настраиваю вручную:

 ifconfig msk0 192.168.1.1 netmask 255.255.255.0 
В ядре включаю поддержку pf и запиливаю конфиг пфа:
 nat pass on re0 from 192.168.1.0/24 to any -> re0 

Затем на арченоуте делаю:

 ifconfig eth0 192.168.1.2 netmask 255.255.255.0; route add default gw 192.168.1.1
Добавляю в resolv.conf nameserv 8.8.8.8 и получаю крайне странную штуку:

при попытке пинговать пинги проходят через раз. То есть, пингуем в первый раз, ждем сколь угодно долго - пинги не идут. Пингуем во второй раз - пинги идут бодренько и сколь угодно долго. На третий раз повторяется ситуация из 1 пункта. И так до бесконечности.

Кроме того, попытка запинговать хост по его домену не удается никогда: адрес хоста резолвится и на этом все заканчивается.

По ip-адресу я, опять же, через раз могу получать странички и другую инфу.

В чем дело я решительно не понимаю, тк конфиги слизаны с мануалов.

Deleted

Приведите содержимое pf.conf.

iZEN ★★★★★ ()
Ответ на: комментарий от iZEN

smd@hellheim /sys >>> cat /etc/pf.conf
nat pass on re0 from 192.168.1.0/24 to any -> re0

Deleted ()
Ответ на: комментарий от iZEN

smd@hellheim /sys >>> sudo pfctl -s nat
No ALTQ support in kernel
ALTQ related functions disabled
nat pass on re0 inet from 192.168.1.0/24 to any -> 95.143.221.124

Deleted ()
Ответ на: комментарий от Deleted

Всё круто, всё работает.

Пока судорожно всё правили и ресетили, забыли про алиас на интерфейсе, оставшийся от джейла. Поэтому правильный выхлоп pfctl, сигнализирующий о проблеме:

nat pass on re0 inet from 192.168.1.0/24 to any -> { 95.143.221.124, 10.0.1.2 }

и решение после двух минут чтения openbsd.org:

nat pass on re0 from 192.168.1.0/24 to any -> re0:0

заставляет pf игнорировать алиасы, в которые роутить трафик нам не нужно.

thriller ★★ ()
Ответ на: комментарий от iZEN

Хорошая документация по PF (не до конца переведённая, правда):

Следует учесть только, что она для последней версии pf в openbsd, а во freebsd9 последняя версия pf аналогична версии 4.5 в openbsd.

zgen ★★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.