Страница 1 из 1

ipfw+ppp_nat

Добавлено: 2012-03-27 11:24:59
zikfrid
Доброго всем дня!
Ковыряю этот вопрос очень долго, нигде не могу найти мануалов на тему ppp_nat. Скорее всего я что- не понимаю. Допустим:
- Многие используют kernel_nat, там все понятно: пишем правила и там же пишем правила для nat, допустим для редеректа.
- natd. Как я понял пишем правила в ipfw далее с помощью diver заводим пакеты в natd по 6880 порту, а уже в конфиге natd прописываем все что нам надо.
А вот дальше тупняк:
Есть сервак на котором поднято ppp0e средствами ppp, пишу ему правила для ipfw+natd..инет на сервека есть, локалка выходит в инет, с внешки я могу додрубиться к серваку по ssh и тд. но с внешки меня не пускает в локалку, следовательно нередиректит natd.
Причем если я убираю natd и включаю ppp_nat, то все работает:) Кто может рассказать принципы ppp_nat и нужно ли как-то в правилах ipfw упоминать про ppp_nat?

Re: ipfw+ppp_nat

Добавлено: 2012-03-27 14:44:18
dikens3

Код: Выделить всё

/etc/ppp/ppp.conf

default:

Internet:
    set log Phase tun command
    set device PPPoE:rl1
    set authname login
    set authkey password
    set mru 1492
    set mtu 1492
    enable lqr
    set lqrperiod 10
    enable lqr echo
    enable echo
    set dial
    set login
    set timeout 0
    set redial 0 0

# NAT
   nat enable yes
# Тут порт Radmin прокидываем
   nat port tcp 192.168.1.1:6666        6666
   nat log no
   nat same_ports yes
   nat unregistered_only yes
   nat deny_incoming no

Код: Выделить всё

/etc/rc.conf
# PPPoE
ppp_enable="YES"
ppp_profile="Internet"
ppp_mode="ddial"
ppp_user="root"
ppp_nat="YES"

Надо объяснять что делает cтрока?:

Код: Выделить всё

   nat port tcp 192.168.1.1:6666        6666
или эта?

Код: Выделить всё

   nat deny_incoming no

Re: ipfw+ppp_nat

Добавлено: 2012-03-28 8:45:28
zikfrid
А не могли бы вы выложить правила ipfw и ipfw show?Если вы его используете:) С этим как раз все понятно...

При поднятии ppp0e поднимается tun*. Везде народ пишет по разному. Некоторые в правилах ipfw указывают внешним интерфейсом tun* некоторые реальный внешний интерфейс, как по феншую?:) Если я использую natd, то при указании в правилах "add divert natd ip from ${NetIn} to any out via ${LanOut}" ,где ${LanOut}=nfe0(внешний интерфейс), пакеты не заходят в НАТ, а идут все через "02100 83093 63367051 allow tcp from any to any established", но если указать ${LanOut}=tun0, то пакеты попадают в нат, но редиректа на внутренние компы НЕТ. Но с этим еще можно поковыряться, так как мануалов на эту тему много:)

Re: ipfw+ppp_nat

Добавлено: 2012-03-28 11:47:11
dikens3
Я не понимаю зачем вам natd? В приведённой мной конфигурации всё будет работать даже без ipfw. (forward разрешить и всё)

цепочка выглядит так:
LAN- интерфейс LAN

Клиент (192.168.1.2) -> LAN сервер (192.168.1.1) -> PPPNAT -> TUN* -> интернет
Обратно аналогично.
Некоторые в правилах ipfw указывают внешним интерфейсом tun* некоторые реальный внешний интерфейс, как по феншую?
При подключении вполне может выдаваться разный IP-Адрес и разный tun интерфейс (если соединение зависнет например). Лучше использовать tun*, если у Вас одно PPPoE подключение.
А не могли бы вы выложить правила ipfw и ipfw show?Если вы его используете:)
http://www.lissyara.su/articles/freebsd ... /pbr+ipfw/


P.S. Вопросы ваши задавайте IPFW LOG ...