Jump to content
Калькуляторы

freebsd + mpd + http redirect freebsd + mpd + http redirect

Всем привет,

интересует кто как делает http редирект на личный кабинет в случае отрицательного баланса? Попробовал добавление правила ipfw fwd при подключении туннеля - пакеты действительно пробрасываются на узел назначения, но поскольку dst ip не меняется, ответ не приходит. Еще пробовал трафик заворачивать через divert на natd, но у natd не нашел возможности установить правило типа - у всех пакетов с dst port = 80 изменить dst ip на нужный адрес сервера. На сервере nat-a нет, адреса абонентам выдаются белые. Правила задаю через радиус атрибут "mpd-rule".

Спасибо.

Share this post


Link to post
Share on other sites

Всем привет,

интересует кто как делает http редирект на личный кабинет в случае отрицательного баланса? Попробовал добавление правила ipfw fwd при подключении туннеля - пакеты действительно пробрасываются на узел назначения, но поскольку dst ip не меняется, ответ не приходит. Еще пробовал трафик заворачивать через divert на natd, но у natd не нашел возможности установить правило типа - у всех пакетов с dst port = 80 изменить dst ip на нужный адрес сервера. На сервере nat-a нет, адреса абонентам выдаются белые. Правила задаю через радиус атрибут "mpd-rule".

Спасибо.

Я делаю таким образом.

Опишу суть. Когда клиента подключается к брасу если у него + баланс , то все ок. Как только произошло списание, клиент сидит еще на сервере, то через CoA отправляется mpd-table-static #2. Следовательно, Framed-IP-Address Клиента добавляется в таблицу. Смоотрите описание таблицы.# no money. Как только клиент пополнил баланс , через CoA отправляются шейперы и тп, кроме mpd-table-static #2, и клиент снова работает! Вот как то так)


#allow default Что разрешаем по умолчанию,def_net DNS, Личный кабинет и тп.
${fwcmd} add allow all from $vpn_net to $def_net # via ng*
${fwcmd} add allow all from  $def_net to $vpn_net # via ng*


#no money
${fwcmd} add fwd 127.0.0.1,8888 ip from 'table(2)' to any dst-port 80,8080,8081 via ng*
${fwcmd} add allow tcp from any 80,8080,8081   to 'table(2)' via ng*
${fwcmd} add deny all from any to 'table(2)' via ng*
${fwcmd} add deny all  from 'table(2)' to any via ng*

#allow inet for vpn_net
${fwcmd} add allow all from any to $vpn_net 
${fwcmd} add allow all from $vpn_net to any 
#############################################################################


 

На брасе случает nginx 127.0.0.1,8888

Конфиг nginx. 192.168.0.11- тут укжите свой веб сервер с сообщение об отрицательном балансе.

server {
       listen       127.0.0.1:8888;
       #listen       somename:8080;
       rewrite  ^  http://192.168.0.11:8888 ;
       server_name  somename  alias  another.alias;

       location / {
           root   html;
           index  index.html index.htm;
       }
   }


Edited by roysbike

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.