Перейти до

Редирект на внешний сайт при отрицательном балансе


Рекомендованные сообщения

Всем привет, столкнулся с такой проблемой, оплата для абонента находится на внешнем сайте, и для этого требуется что бы при отрицательном балансе был редирект на этот сайт, собственной сам вопрос стоит в том что как сделать что бы этот сайт (ип) был доступен и с балансом и без, заранее спасибо

Ссылка на сообщение
Поделиться на других сайтах

треба додати його у виключення і також ДНС не забути, якщо перенаправляєте на сторінку, а не на ІР

Ссылка на сообщение
Поделиться на других сайтах

 

 

как сделать что бы этот сайт (ип) был доступен и с балансом и без,

Создайте отдельный список или таблицу (в случае использования в качестве NAS сервер на freebsd) и добавьте разрешающие правила для него.

Само перенаправление я делал слудующим образом. Все должников перенаправлял на локальную машину на порт 81 (так как 80 там был занят) А там уже делал переадресацию запросов на какой-либо внешний ресурс.

Ссылка на сообщение
Поделиться на других сайтах

 

 

надо добавить его в исключения и также ДНС не забыть, если перенаправляете на страницу, а не на ИР

А каким образом добавить в исключение? 

Ссылка на сообщение
Поделиться на других сайтах

 

 

А каким образом добавить в исключение?

У вас клиенты на чем обслуживаются. Локальный НАС (он же сервер биллинга), уделанный НАС rscriptd или Mikrotik?

Ссылка на сообщение
Поделиться на других сайтах

В таком случае попробуйте в /etc/firewall.conf добавить

В начале, где описана таблица 2

${FwCMD} table 15 add X.X.X.X

где X.X.X.X - сетевой адрес или сеть внешнего ресурса. Номер таблицы необязательно должен быть 15, но не должен совпадать с теми, что уже созданы.

${FwCMD} add  62101 allow all from table\(47\) to table\(15\) via ${LAN_IF}
${FwCMD} add  62102 allow all from table\(15\) to table\(47\) via ${LAN_IF}

имя интерфейса зависит от того, через какой интерфейс будет доступен ресурс. ${WAN_IF} - внешний или  ${LAN_IF} -локальный.

 

Теперь вопрос: у вас какой-то редирект настроен для 47 таблицы (таблица с должниками)?

Відредаговано Golthana
Ссылка на сообщение
Поделиться на других сайтах

В таком случае попробуйте в /etc/firewall.conf добавить

В начале, где описана таблица 2

${FwCMD} table 15 add X.X.X.X

где X.X.X.X - сетевой адрес или сеть внешнего ресурса. Номер таблицы необязательно должен быть 15, но не должен совпадать с теми, что уже созданы.

${FwCMD} add  62101 allow all from table\(47\) to table\(15\) via ${LAN_IF}
${FwCMD} add  62102 allow all from table\(15\) to table\(47\) via ${LAN_IF}

имя интерфейса зависит от того, через какой интерфейс будет доступен ресурс. ${WAN_IF} - внешний или  ${LAN_IF} -локальный.

 

Теперь вопрос: у вас какой-то редирект настроен для 47 таблицы (таблица с должниками)?

Не помогло

 

в index.php

<?php
    function rcms_redirect($url, $header = false) {
            if($header){
	                @header('Location: ' . $url);
			        } else {
				            echo '<script language="javascript">document.location.href="' . $url . '";</script>';
					            }
						        }
							 
							 
							    $userip=$_SERVER['REMOTE_ADDR'];
							     
							        if (strpos($userip,'172.32.')===false)  {
								        rcms_redirect("http://remont-tv38.ru/dolg.html");
									    } else {
									            rcms_redirect("http://10.110.0.9/uhw/");
										        }
											?>

#!/bin/sh
 
# firewall command
FwCMD="/sbin/ipfw -q"
${FwCMD} -f flush
 
# Interfaces setup
LAN_IF="em0"
WAN_IF="em1"
 
# Networks define
${FwCMD} table 2 add 172.16.109.1/24
${FwCMD} table 15 add 31.170.165.86/24
 
#NAT
${FwCMD} add  62101 allow all from table\(47\) to table\(15\) via ${LAN_IF}
${FwCMD} add  62102 allow all from table\(15\) to table\(47\) via ${LAN_IF}
${FwCMD} nat 1 config log if ${WAN_IF} reset same_ports
${FwCMD} add 6000 nat 1 ip from table\(2\) to not table\(9\) out xmit ${WAN_IF}
${FwCMD} add 6001 nat 1 ip from any to me in recv ${WAN_IF}
 
#Shaper - table 4 download speed, table 3 - upload speed
${FwCMD} add 12001 pipe tablearg ip from any to table\(4\) via ${LAN_IF} out
${FwCMD} add 12000 pipe tablearg ip from table\(3\) to any via ${LAN_IF} in
 
# default block policy
${FwCMD} add 65533 deny all from table\(2\) to any via ${LAN_IF}
${FwCMD} add 65534 deny all from any to table\(2\) via ${LAN_IF}
${FwCMD} add 65535 allow all from any to any
 
#Debtors forwarding
${FwCMD} add 4 allow ip from table\(2\) to 8.8.8.8 dst-port 53 via em0
${FwCMD} add 4 allow ip from 8.8.8.8 to table\(2\) src-port 53 via em0
${FwCMD} add 4 allow ip from table\(2\) to me dst-port 80 via em0
${FwCMD} add 4 allow ip from me to table\(2\) src-port 80 via em0
${FwCMD} add 6 fwd 127.0.0.1,80 ip from table\(47\) to not me dst-port 80
${FwCMD} delete 65534
Ссылка на сообщение
Поделиться на других сайтах
Не помогло

И не должно. Это часть настроек

 

 

Теперь вопрос: у вас какой-то редирект настроен для 47 таблицы (таблица с должниками)?

А это?

И важно знать какие dns вы даете клиентам

Відредаговано Golthana
Ссылка на сообщение
Поделиться на других сайтах
вот сам конфиг firewall

днс у клиентов 8.8.8.8

для 47 таблицы не чего не настроено

#!/bin/sh

 

# firewall command

FwCMD="/sbin/ipfw -q"

${FwCMD} -f flush

 

# Interfaces setup

LAN_IF="em0"

WAN_IF="em1"

 

# Networks define

${FwCMD} table 2 add 172.16.109.1/24

${FwCMD} table 15 add 31.170.165.86/24

 

#NAT

${FwCMD} add  62101 allow all from table\(47\) to table\(15\) via ${LAN_IF}

${FwCMD} add  62102 allow all from table\(15\) to table\(47\) via ${LAN_IF}

${FwCMD} nat 1 config log if ${WAN_IF} reset same_ports

${FwCMD} add 6000 nat 1 ip from table\(2\) to not table\(9\) out xmit ${WAN_IF}

${FwCMD} add 6001 nat 1 ip from any to me in recv ${WAN_IF}

 

#Shaper - table 4 download speed, table 3 - upload speed

${FwCMD} add 12001 pipe tablearg ip from any to table\(4\) via ${LAN_IF} out

${FwCMD} add 12000 pipe tablearg ip from table\(3\) to any via ${LAN_IF} in

 

# default block policy

${FwCMD} add 65533 deny all from table\(2\) to any via ${LAN_IF}

${FwCMD} add 65534 deny all from any to table\(2\) via ${LAN_IF}

${FwCMD} add 65535 allow all from any to any

 

#Debtors forwarding

${FwCMD} add 4 allow ip from table\(2\) to 8.8.8.8 dst-port 53 via em0

${FwCMD} add 4 allow ip from 8.8.8.8 to table\(2\) src-port 53 via em0

${FwCMD} add 4 allow ip from table\(2\) to me dst-port 80 via em0

${FwCMD} add 4 allow ip from me to table\(2\) src-port 80 via em0

${FwCMD} add 6 fwd 127.0.0.1,80 ip from table\(47\) to not me dst-port 80

${FwCMD} delete 65534

Ссылка на сообщение
Поделиться на других сайтах

Для 47 таблицы разрешите dns

 

 

${FwCMD} add 4 allow ip from table\(2\) to 8.8.8.8 dst-port 53 via em0

${FwCMD} add 4 allow ip from 8.8.8.8 to table\(2\) src-port 53 via em0

 

Вот пример у вас есть

И после этого попробуйте пропинговать удаленный ресурс с тестового компа, который заведомо должен быть должником, то есть быть в 47 таблице

Відредаговано Golthana
Ссылка на сообщение
Поделиться на других сайтах

 

 

Для 47 таблицы разрешите dns
 

извеняюсь конечно, но это как?) я просто с firewall ещё не очень сильно дружу так что не бейте)

Ссылка на сообщение
Поделиться на других сайтах
31.170.165.86/24

Уберите /24, или если хотите добавить всю подсеть, то надо сделать 31.170.165.0/24

Відредаговано Golthana
Ссылка на сообщение
Поделиться на других сайтах

 

 

Уберите /24, или если хотите добавить всю подсеть, то надо сделать 31.170.65.0/24
 

убрал, не помогло( файрвол перезагружаю после каждого изменения

Ссылка на сообщение
Поделиться на других сайтах

Вы после изменения firewall.conf перегружаете саму службу ipfw?

Сделайте tracert -d remont-tv38.ru

Відредаговано Golthana
Ссылка на сообщение
Поделиться на других сайтах
ipfw table 47 list

Выполните. Надо убедиться, что после перезагрузки восстанавливается 47 таблица

И посмотрите есть ли там ваш тестовый ip

Відредаговано Golthana
Ссылка на сообщение
Поделиться на других сайтах
Опубліковано: (відредаговано)
Выполните. Надо убедиться, что после перезагрузки восстанавливается 47 таблица

 

172.16.109.2/32 0 (тестовой есть)

Відредаговано kaisserhaff
Ссылка на сообщение
Поделиться на других сайтах

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Вхід

Уже зарегистрированы? Войдите здесь.

Войти сейчас
  • Зараз на сторінці   0 користувачів

    Немає користувачів, що переглядають цю сторінку.

  • Схожий контент

    • Від base
      Доброе время суток. На днях столкнулся с проблемкой. В связи с тех. поломкой на микротике не было ван подключения. Хотел перебросить клиентов на прокси страницу заглушку. Но как оказалось что при отсутствие ван подключения редирект не работает. Нашол статью :
      Заглушка для клиентов при пропадании интернета.
        Создаем правило:

      Включаем на порту 8080 web-proxy. 
      Правим error.html под свои нужды./ip proxy access
      add action=deny
      Добавляем статическую запись днс, что б клиенты смогли зарезольвить адреса:
        где  192.168.23.254 адрес роутера. ttl=10s = для быстрого переключения.
       
      Ставим в Scheduler на 5 минут:

       :local sts [/ip firewall nat get value-name=disabled [find comment=zagluchka]];
      :local PingCount 3;
      #YandexDNS
      :local PingTarget1 77.88.8.8;
      #OpenDNS
      :local PingTarget2 208.67.222.222;
      #GoogleDNS
      :local PingTarget3 8.8.8.8;
      :local PingResult1 [/ping $PingTarget1 count=$PingCount];
      :local PingResult2 [/ping $PingTarget2 count=$PingCount];
      :local PingResult3 [/ping $PingTarget3 count=$PingCount];
      :delay 180;
      :local PingResult11 [/ping $PingTarget1 count=$PingCount];
      :local PingResult22 [/ping $PingTarget2 count=$PingCount];
      :local PingResult33 [/ping $PingTarget3 count=$PingCount];
      :if (($PingResult1 + $PingResult2 + $PingResult3 + $PingResult11 + $PingResult22 + $PingResult33) >= 7) do={ if ($sts=true) do={} else={/ip firewall nat disable [find comment=zagluchka]; /ip dns static disable [find name=.*]}}  else={ if ($sts=true) do={/ip firewall nat enable [find comment=zagluchka]; /ip dns static enable [find name=.*]} else={}}
      Адреса Микротика
      ВАН 20.0.0.1
      Лан 10.0.0.1
       
      Перед Микротик стоит роутер 20.0.0.2 на котором инет.
      Клиенты статик 10.0.0.10-.... в настройках сетевых 10.0.0.10/8 шлюз 10.0.0.1 днс 20.0.0.1
       
      Но что-то идет не так. Правило срабатывает но редиректа нет. При переходе на роутер 20.0.0.2 перенапровляет на заглушку.
       
      Прошу помощи.
    • Від ghzlviv
      /ip firewall address-list
      add address=10.0.0.0/16 list=work
      add address=172.16.0.0/16 list=droping
      /ip firewall filter
      add chain=forward dst-address=192.168.41.42 src-address-list=work
      add action=drop chain=forward src-address-list=droping
      /ip firewall nat
      add action=masquerade chain=srcnat src-address-list=work
      add action=masquerade chain=srcnat src-address-list=droping
      add action=dst-nat chain=dstnat dst-port=80 protocol=tcp src-address-list=droping to-addresses=192.168.41.42 to-ports=80
       
       
      Не робить хтось може допомогти або підказати де шукати
      Дякую
    • Від ultranet
      Всем привет, суть вопроса такова. Сделали мне редирект на сервере, при отсутствие положительного баланса на счету выскакивает окно пополните счет (при открытие любого сайта). Так вот столкнулся с такой проблемой, при подключение абонента по кабелю (на прямую от сервера )всё работает отлично, а вот по беспроводной просто пишет не могу "отобразить страницу". Стоит на раздаче рокет м2 у абонента грид. Не может ли рокет либо грид блокировать?
       
      Настройки сети:
      Сервер
      mandriva+stargazer
      IP 20.0.0.1
      mask 255.0.0.0
      DNS 10.0.0.1
       
      Рокет
       
      IP 20.10.10.1
      mask 255.0.0.0
      шлюз 20.0.0.1
      DNS 10.0.0.1
       
      грид в роутере 
       
      IP 20.0.0.2
      Mask 255.0.0.0
      шлюз 20.0.0.1
      DNS 10.0.0.1
       
      Не пинайте... Зарание благодарен 
×
×
  • Створити нове...