Добрый день.
Захотелось поднять на сети доступа такую "фишку": при отключении абонента ему на любой HTTP-запрос возвращается страничка а ля "Вы были отключены от Интернет за неуплату, позвоните туда-то."
Как можно реализовать это посредством Cisco и веб-сервера? Идеальным было бы решение через ACL, конечно. Cisco старенькая, 7120, c7100-jk9o3s-mz.123-12e.bin.
>Добрый день.
>Захотелось поднять на сети доступа такую "фишку": при отключении абонента ему на
>любой HTTP-запрос возвращается страничка а ля "Вы были отключены от Интернет
>за неуплату, позвоните туда-то."
>Как можно реализовать это посредством Cisco и веб-сервера? Идеальным было бы решение
>через ACL, конечно. Cisco старенькая, 7120, c7100-jk9o3s-mz.123-12e.bin.помещение клиента в АКЛ например,
+ роутмап переброс всех запросов на вебсервер со страничкой.
>помещение клиента в АКЛ например,
>+ роутмап переброс всех запросов на вебсервер со страничкой.Не поделитесь примерчиком роутмапа?
Сейчас крутится так:access-list 199 deny ip any host [dns-1]
access-list 199 deny ip any host [сервер статистики]
access-list 199 dynamic test1 permit ip any any
access-list 199 deny ip any anyroute-map OTK permit 10
match ip address 199
set interface Null0
>[оверквотинг удален]
>Сейчас крутится так:
>
>access-list 199 deny ip any host [dns-1]
>access-list 199 deny ip any host [сервер статистики]
>access-list 199 dynamic test1 permit ip any any
>access-list 199 deny ip any any
>
>route-map OTK permit 10
> match ip address 199
> set interface Null0access-list 101 permit host IP any eq 80
route-map redirect permit 10
match ip address 101
set ip next-hop Web-server
схема у меня была такая.
веб сервер в ДМЗ, клиенты лоченые натятся под определенным ИП в эту дмз - и полученные пакеты от этого ИП на порт 80 фаервол редиректит на порт скажем 3333 - на котором висит вирт хост апача с нужной страничкой.либо если поставить выделенный вебсервер - со страницей по умолчанию с инфо о неоплате - можно без ната сделать.
Спасибо, уже дотумкал сам.
А подмену чем делали?
>Спасибо, уже дотумкал сам.
>А подмену чем делали?подмену чего?
>>Спасибо, уже дотумкал сам.
>>А подмену чем делали?
>
>подмену чего?Destination IP, чтоб на Apache пакет отправить. Это один из способов, как я понимаю.
>>>Спасибо, уже дотумкал сам.
>>>А подмену чем делали?
>>
>>подмену чего?
>
>Destination IP, чтоб на Apache пакет отправить. Это один из способов, как
>я понимаю.access-list 101 permit host IP any eq 80
route-map redirect permit 10
match ip address 101
set ip next-hop Web-server
Всем спасибо за помощь.На Web-сервере, принимающем трафик достаточно прописать в iptables цепочку
-A PREROUTING -d ! [Web-server] -p tcp --dport 80 -j DNAT --to-destination [Web-server]:81И создать виртуальный хост в апаче, который будет смотреть на нужную страничку:
Listen 81
NameVirtualHost *:81
<VirtualHost *:81>
DocumentRoot "/www/htdocs/access_denied"
</VirtualHost>(Лишние строчки конфига опущены.)
>Всем спасибо за помощь.
>
>На Web-сервере, принимающем трафик достаточно прописать в iptables цепочку
>-A PREROUTING -d ! [Web-server] -p tcp --dport 80 -j DNAT --to-destination
>[Web-server]:81Как то же самое сделать на FreeBSD ipfw?
>>Всем спасибо за помощь.
>>
>>На Web-сервере, принимающем трафик достаточно прописать в iptables цепочку
>>-A PREROUTING -d ! [Web-server] -p tcp --dport 80 -j DNAT --to-destination
>>[Web-server]:81
>
>Как то же самое сделать на FreeBSD ipfw?Спасибо сам разобрался. Если кому интересно, связка natd+ipfw
natd
redirect_port tcp webserver:80 80ipfw
add fwd webserver,80 tcp from any to any 80 via nat_interface