Перейти к содержимому
Калькуляторы

Страница предупреждения как создать?

Здравствуйте! Надеюсь написал в том разделе.

Задача - сделать разовую страничку предупреждения(объявления) для пользователей в сети. (Должна показаться пользователю 1 раз).

Железки:

Интернет <-> (основной маршрутизатор Debian)<-> Сеть 192.168.0.0/24

<-> ещё маршрутизатор(Debian) <-> сеть 192.168.1.0/24

Имеются 2 сети, 2 маршрутизатора: основной(с одной сеткой), к нему подключен другой маршрутизатор (со второй сеткой).

Все пользователи благополучно пользуются интернетом.

Появилась необходимость показать пользователю страничку с объявлением(1 раз на 1 пользователя), когда он пытается открыть любой сайт.

Подскажите в какую сторону копать на основном маршрутизаторе. как отсеивать пользователей кто видел эту страницу, а кто нет?

Возможно ли это сделать через iptables. Или проще поднять squid(если там есть такое).

Поделиться сообщением


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

как отсеивать пользователей кто видел эту страницу, а кто нет?

Единственный способ - кнопка на странице "Я фсио прочитал, го инет".

 

Иначе, в интернет у пользователя вперёд него пойдёт аська/скайп и "просмотрит" эту страничку.

 

Сделать можно так:

1. Поднимаеи http сервер и кладём на него страничку, как индексную. Чтобы страничка выскакивала прямо по ip сервера.

2. в iptables делаем так:

iptables -A PREROUTING -s <Абонент, который видел1> -j ACCEPT

iptables -A PREROUTING -s <Абонент, который видел2> -j ACCEPT

.........

iptables -A PREROUTING -p TCP --dport 80 -j DNAT --to <ip уеб сервера>

 

3. По нажатию кнопки на страничке для абонентика скриптом добавляется iptables -I PREROUTING -s <Абонент, который видел1> -j ACCEPT

Поделиться сообщением


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

Возможно ли это сделать по MAC? Маршрутизатор не один же.

Как определять пользователей?

Тоесть PHP на web сервере по нажатию ссылки "видел" запишет в iptables нужные данные? или какой скрипт?

Другая подсеть находиться на NAT'ом просто.

По ip не вариант.

Изменено пользователем Nekit73rus

Поделиться сообщением


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

Возможно ли это сделать по MAC?
В локальной (той, ктороая физически подключена к маршрутизатору) можно. В сети, которая за маршрутизатором - нет. В этом и есть суть работы маршрутизатора.

 

Как определять пользователей?
Вам виднее. Что вообще такое "пользователь" с технической стороны?

 

Тоесть PHP на web сервере по нажатию ссылки "видел" запишет в iptables нужные данные? или какой скрипт?
СКРИПТ из трёх сточек, написанный на PHP или на чём вы там осилите его написать, добавит строчку в iptables. Вероятно, воспользовавшись механизмом sudo. Готовых решений нет в виду тривиальности задачи.

 

Другая подсеть находиться на NAT'ом просто.

По ip не вариант.

 

а. Вытаскивайте сеть из за ната.

б. Делайте аналогичную схему на втором маршрутизаторе. Сейчас "основной маршрутизатор" не знает НИЧЕГО о вашей второй сети. Для него это один ip адрес и один MAC адрес "ещё маршрутизатора".

Поделиться сообщением


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

из за NAT не получиться вытащить никак.

Схема на самом деле сложнее

Интернет <-> Основной маршрутизатор <-> Маршрутизатор 1 <-> Маршрутизатор 2

<-> Маршрутизатор 3

На каждом маршрутизаторе висит по сетке. Всё за NAT'ом.

Итого 4 сети изолированных друг от друга но с доступом в инет.

Изменить или вытащить из NAT уже проблема.

 

Видимо с такой схемой задача не решаема?

Хотя основной маршрутизатор отправляет же пакеты обратно клиентам? Он же сортирует их как то.

За что ещё можно зацепиться?

Подобная схема в Московском метро работает. Нажал "авторизоваться" и пользуешься.

Поделиться сообщением


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

Видимо с такой схемой задача не решаема?
Реализуёте всё на КАЖДОМ маршрутизаторе. На одном - невозможно.

 

Хотя основной маршрутизатор отправляет же пакеты обратно клиентам? Он же сортирует их как то.
Он отправляет пакеты НЕ КЛИЕНТАМ. Он отправляет пакеты соседнему маршрутизатору а по клиентам пакеты "сортирует" уже сосед.

 

Невозможность вынуть сети из за НАТа связана с административными преградами? Просто, технических проблем я не вижу.

 

Подобная схема в Московском метро работает.
Мне неизвестны столь интимные подробности работы вафли в московкой подземке. Там действительно многократный НАТ?!

Поделиться сообщением


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

это ограничение тут на 3 сообщения :(

В общем в случае с NAT'ом - есть маршрутизаторы в кабинетах... их не получиться вывести из за ната же.

Жаль что основной маршрутизатор не может выдернуть MAC адреса :(

Тогда придётся крутиться как то с cookies браузера.

 

Уж не знаю сколько НАТов в подземке но смысл там такой: зашёл в поезд, при открытии любой страницы перекидывает на ихнюю.. там нажимаешь "Авторизоваться" и начинает работать инет, пока не зайдёшь в другой поезд.

 

В моей теме многократный НАТ точно не избежен. Если б дело было только в маршрутизаторах, то на каждом можно было бы поднять веб сервак и т.п. Ещё используются роуторы, компы подключенные к ним получаются тоже за NAT'ом.

Изменено пользователем nkt73rus

Поделиться сообщением


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

это ограничение тут на 3 сообщения :(
А вы начните не только брать из форума, но и отдавать на форум. После 10 постов не в свои темы ограничение снимется.

 

В общем в случае с NAT'ом - есть маршрутизаторы в кабинетах...
Вы поймите, тут был один телепат, так помер.. От перегрузки. Не знаем мы тут ни про какие кабинеты... И структуру сети вы выдаёте по каплям и противоречиво. В начале было два роутера на дебиане, теперь миллион роутеров по кабинетам. И все друг за другом.

 

Попытайтесь объяснить, для чего построена именно такая сложно-кривая структура. Почему сделана не плоская сеть, не сегментированная сеть с роутерами? Что за устройство подразумевается под "роутерами по кабинетам" и посему они обязательно должны НАТтить и не могут просто роутить, без ната?

Поделиться сообщением


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

Развели там какой то зоопарк и теперь страдаете.

Ваша проблема больше организационная/административная, чем техническая.

Поделиться сообщением


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

Жаль что тут не было ни одного полезного ответа, а лишь упрёки в "зоопарке" сети.

Всё это просто реализуется с помощью прозрачного squid на ура, который успешно работает с сессиями.

Порт 80 заворачивается на порт squid и воуля.

Спасибо всем за бесполезную информацию!

Тема закрыта.

Поделиться сообщением


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

Всё это просто реализуется с помощью прозрачного squid на ура, который успешно работает с сессиями.
Школоло детектед.

 

Мессир, коли вы такой вумный, поделитесь с местными утюгами магической технологией прозрачного кальмара с ура-сессиями. Будьте ласковы.

Поделиться сообщением


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

Join the conversation

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

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 смайлов.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.