1

Тема: PF Редирект из абонентской сети на внутреннюю страницу.

Вообще задача стоит следующего плана, мне нужно написать информационную страницу для абонентов в сети, скрипт берет из биллнга ипы и заносит их в файл, я этот файл просто цепляю в pf.conf и он отрабатывает редирект всего трафика, с 80 порта абонентов, на нас с 81. И тем самым пользователь читает новость затем нажимает кнопку ознакомлен, тут уже выполняется скрипт на удаление из файла с правила. И его перенаправляет на тот сайт куда он шел.
сами страницы готовы и могут работать, а вот правила не срабатывают.
и пользователь как шел на ya.ru так туда и заходит.

Проблема именно в правилах кто что может посоветовать? То ли я что-то не понимаю.

Сразу говорю конфиги не я настраивал, поэтому кидаться тухлыми яйцами не надо.

Техническая часть:
NAS FreeBSD 9.0 он же сервер биллинга mikbill
Используется связка MPD+PF+Radius.
Скрипт работает на php.

2 интерфейса:

em0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
        options=2198<VLAN_MTU,VLAN_HWTAGGING,VLAN_HWCSUM,TSO4,WOL_MAGIC>
        ether 68:05:ca:02:c9:46
        inet6 fe80::6a05:caff:fe02:c946%em0 prefixlen 64 scopeid 0x1
        inet 5.153.128.66 netmask 0xfffffff8 broadcast 5.153.128.71
        inet 5.153.128.67 netmask 0xfffffff8 broadcast 5.153.128.71
        nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
        media: Ethernet autoselect (1000baseT <full-duplex>)
        status: active
bge0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
        options=c0198<VLAN_MTU,VLAN_HWTAGGING,VLAN_HWCSUM,TSO4,VLAN_HWTSO,LINKSTATE>
        ether 00:22:64:cc:39:fb
        inet6 fe80::222:64ff:fecc:39fb%bge0 prefixlen 64 scopeid 0x6
        inet 10.0.50.254 netmask 0xfffffc00 broadcast 10.0.51.255
        inet 10.0.17.254 netmask 0xfffffe00 broadcast 10.0.17.255
        inet 10.0.70.254 netmask 0xffffff00 broadcast 10.0.70.255
        nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
        media: Ethernet autoselect (1000baseT <full-duplex>)
        status: active

Соединение абонов происходит по ng* интерфейсам.

mpd5.conf

startup:
      2 # configure mpd users
      3     set user admin admin admin
      4 # configure the console
      5     set radsrv peer 127.0.0.1 testing123
      6     set radsrv self 127.0.0.1 3799
      7     set radsrv open
      8     set console self 127.0.0.1 5005
      9     set console open
     10 # configure the web server
     11     set web self 0.0.0.0 5006
     12     set web open
     13
     14 default:
     15     load pppoe_server
     16 #    load pptp_server
     17
     18 pptp_server:
     19     create bundle template C
     20     set iface idle 0
     21     set iface enable tcpmssfix
     22     set ipcp yes vjcomp
     23     set ipcp ranges 172.28.0.1/32 ippool pool1
     24 #    set ipcp dns 10.1.2.3 194.44.58.85
     25     set ipcp dns 212.66.32.194 212.66.32.202
     26 #    set ipcp dns 8.8.8.8 8.8.4.4
     27     set bundle enable compression
     28     set iface enable nat
     29     create link template L  pptp
     30     set link action bundle C
     31     set link enable multilink
     32     set link yes acfcomp protocomp
     33     set link no eap
     34     set link no chap-msv1
     35     set link no chap-msv2
     36     set link no chap-md5
     37     set link enable chap pap
     38     set link enable
     39     set link keep-alive 30 120
     40     set link mtu 1480
     41     set link mru 1480
     42     set link enable peer-as-calling
     43 set pptp self 10.2.0.1
     44     load server_common
     45
     46 pppoe_server:
     47
     48     create bundle template B
     49     set iface idle 0
     50     set iface enable tcpmssfix
     51     set ipcp no vjcomp
     52     set ipcp ranges 172.28.0.1/32 ippool pool1
     53 #    set ipcp dns 10.1.2.3 194.44.58.85
     54 #    set ipcp dns 212.66.32.202 212.66.32.194
     55     set ipcp dns 8.8.8.8 8.8.4.4
     56     set bundle enable compression
     57     create link template common pppoe
     58     set link mtu 1460
     59     set link mru 1460
     60     set link enable multilink
     61     set link action bundle B
     62     set link no eap
     63     set link no chap-msv1
     64     set link no chap-msv2
     65     set link no chap-md5
     66     set link enable chap pap
     67     set link enable
     68 ....
     69     set link yes acfcomp protocomp
     70     set link enable report-mac
     71     set link enable multilink
     72     load server_common
     73     set pppoe service "*"
     74
     75     create link template bge0 common
     76     set pppoe iface bge0
     77     set link enable incoming
     78
     79
     80 server_common:
     81     set link no eap
     82     set link yes chap-md5
     83     set link keep-alive 30 120
     84     set link enable incoming
     85     set link no acfcomp protocomp
     86     load radius
     87
     88 radius:
     89     set radius config /usr/local/etc/mpd5/radius.conf
     90     set radius retries 3
     91     set radius timeout 3
     92     set radius me 127.0.0.1
     93     set radius identifier NAS
     94     set auth acct-update 300
     95     set auth enable radius-auth
     96     set auth enable radius-acct
     97     set radius enable message-authentic


pf.conf

1#MACRO
      2 ext_if="em0"
      3 me="5.153.128.67"
      4
      5 set limit states 120000
      6
      7 rdr on em0 proto tcp from 172.28.50.17 to any port 80 -> 5.153.128.67 port 81 //Мое правило для теста которое неработает.
      8 nat on em0 from 172.28.0.0/16 to any -> 5.153.128.67
      9 #nat on vlan41 from 172.16.5.0/24 to any -> 5.153.128.67

Заранее благодарен. Если решим проблему, могу потом скриптом поделится.

2

Re: PF Редирект из абонентской сети на внутреннюю страницу.

172.28.50.17 а вы с этого адреса пытаетесь тестировать? Логируйте правила, смотрите что отрабатывает

3

Re: PF Редирект из абонентской сети на внутреннюю страницу.

crash пишет:

172.28.50.17 а вы с этого адреса пытаетесь тестировать? Логируйте правила, смотрите что отрабатывает

Да я по тимвиву к клиенту зашел, и проверил, разные домены и нигде не ридеректит.

4

Re: PF Редирект из абонентской сети на внутреннюю страницу.

я спрашиваю адрес с которого пытаетесь выходить в инет 172.28.50.17?