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

isg на mpd

А возможно ли реализовать сабж? Погуглил, толком нечего не нашел....у когонить есть информация по данному вопросу?

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


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

Можно. Купив 7201/asr1002 и поставив его сверху на сервак с выключенным mpd.

Без сервака все равно не обойдетесь.

 

Зачем изобретать велосипед? Нет денег на нормальную железку, поставь рядом сервак с линухом и скажи спасибо пишущим lisg.

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


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

если прочесть пост

О туннелях (PPPoE, PPTP, L2TP) речи не идет. Делалось для классического IPoE.
а мне хотелось бы PPPoE развернуть :)

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


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

#!/usr/bin/perl                                                                                  
#
#  /etc/rc.local:
#    /path/to/htredir >> /var/log/htredir.log 2>&1 &
#  Firewall settings:
#    ipfw allow <non-blocked-users>
#    ipfw add 1700 fwd 127.0.0.1,81 tcp from any to any 80 via $lan_nic in
#    ipfw add 1701 allow            tcp from any 80 to any via $lan_nic out
#    ipfw deny all
#
use strict;
use warnings;

use IO::Handle;
use IO::Socket;

my $url = (@ARGV ? shift @ARGV : 'http://labs.homelink.ru/ISG/');

sub tprint {
        my ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = localtime;
        printf("[ %04d.%02d.%02d %02d:%02d:%02d ]  @_\n",
                $year+1900, $mon+1, $mday, $hour, $min, $sec);
}

my $server = IO::Socket::INET->new (
        LocalPort => 81,
        Type      => SOCK_STREAM,
        Reuse     => 1,
        Listen    => 10);

STDOUT->autoflush(1);
tprint("Ready for connections...");

while (my $conn = $server->accept()) {
        tprint("Connected from ".($conn->peerhost() || 'unknown'));
        binmode $conn;
        print $conn "HTTP/1.0 302 Found\nLocation: $url\n\n\n";
        $conn->close();
}

tprint "Done. Error code: $!";

## EOF ##

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


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

#!/usr/bin/perl                                                                                  
#
#  /etc/rc.local:
#    /path/to/htredir >> /var/log/htredir.log 2>&1 &
#  Firewall settings:
#    ipfw allow <non-blocked-users>
#    ipfw add 1700 fwd 127.0.0.1,81 tcp from any to any 80 via $lan_nic in
#    ipfw add 1701 allow            tcp from any 80 to any via $lan_nic out
#    ipfw deny all
#
use strict;
use warnings;

use IO::Handle;
use IO::Socket;

my $url = (@ARGV ? shift @ARGV : 'http://labs.homelink.ru/ISG/');

sub tprint {
        my ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = localtime;
        printf("[ %04d.%02d.%02d %02d:%02d:%02d ]  @_\n",
                $year+1900, $mon+1, $mday, $hour, $min, $sec);
}

my $server = IO::Socket::INET->new (
        LocalPort => 81,
        Type      => SOCK_STREAM,
        Reuse     => 1,
        Listen    => 10);

STDOUT->autoflush(1);
tprint("Ready for connections...");

while (my $conn = $server->accept()) {
        tprint("Connected from ".($conn->peerhost() || 'unknown'));
        binmode $conn;
        print $conn "HTTP/1.0 302 Found\nLocation: $url\n\n\n";
        $conn->close();
}

tprint "Done. Error code: $!";

## EOF ##

а можно поподробней что это?

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


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

А возможно ли реализовать сабж? Погуглил, толком нечего не нашел....у когонить есть информация по данному вопросу?

Единого програмного пакета(свободного) аналогичного isg для freebsd пока нет. Можете глянуть в сторону СоА, mpd(начиная с v5.4) давно уже научился его понимать. Если поработать немного напильником, разработать свой captive портал у вас все получится.

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

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


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

а можно поподробней что это?
Это утилита, которая запускается на Интернет-шлюзе при старте системы и слушает 81 порт.

Правилами файрволла на неё заворачиваются все запросы на 80 порт от заблокированных клиентов.

Она отвечает на них ссылкой на страницу проверки баланса, ввода пароля и т.д.

 

Или хочется чего-то более продвинутого?

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

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


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

Охото что авторизация была по dhcp opt82 тоесть чтоб инициатором сессии был dhcp пакет, но авторизовывалась pppoe сессия

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


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

Охото что авторизация была по dhcp opt82 тоесть чтоб инициатором сессии был dhcp пакет, но авторизовывалась pppoe сессия
мудрО!

А если клиентское устройство не использует локалку и не запрашивает сетевые реквизиты по dhcp за ненадобностью, а сразу устанавливает pppoe-соединение?

Ведь для pppoe не требуется иметь IP-адрес, маршруты, dns и всё остальное, что сообщает dhcp.

Кроме того, pppoe при соединении проходит авторизацию.

Вы хотите, чтобы у всех был пустой логин-пароль? Или чтобы логин-пароль мог быть произвольным?

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


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

Стыд. По-моему, ТС путает черное с шершавым.

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


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

Охото что авторизация была по dhcp opt82 тоесть чтоб инициатором сессии был dhcp пакет, но авторизовывалась pppoe сессия
мудрО!

А если клиентское устройство не использует локалку и не запрашивает сетевые реквизиты по dhcp за ненадобностью, а сразу устанавливает pppoe-соединение?

Ведь для pppoe не требуется иметь IP-адрес, маршруты, dns и всё остальное, что сообщает dhcp.

Кроме того, pppoe при соединении проходит авторизацию.

Вы хотите, чтобы у всех был пустой логин-пароль? Или чтобы логин-пароль мог быть произвольным?

да чтож вы все то учить пытаетесь а не ответить на вопрос? :)

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

Клиент, воткнув кабель в комп посылает DHCP запрос, циска ловит этот запрос и поднимает нулевую сессию и отправляет (выдирая Для уникальности логина авторизации можно его делать из circuitId + remote-id) это на биллинг, если авторизация подтверждена то он гуляет в нете, если нет то его тупо релеет на какой нить хост (портал например)

Так вот вопрос, можно ли это реализовать на MPD

2 Abram Это все что вы знаете о реализации isg на mpd ?? помоемому вам нужно стыдиться а не писать в подобные темы для помощи.

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


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

Охото что авторизация была по dhcp opt82 тоесть чтоб инициатором сессии был dhcp пакет, но авторизовывалась pppoe сессия
мудрО!

А если клиентское устройство не использует локалку и не запрашивает сетевые реквизиты по dhcp за ненадобностью, а сразу устанавливает pppoe-соединение?

Ведь для pppoe не требуется иметь IP-адрес, маршруты, dns и всё остальное, что сообщает dhcp.

Кроме того, pppoe при соединении проходит авторизацию.

Вы хотите, чтобы у всех был пустой логин-пароль? Или чтобы логин-пароль мог быть произвольным?

да чтож вы все то учить пытаетесь а не ответить на вопрос? :)

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

Клиент, воткнув кабель в комп посылает DHCP запрос, циска ловит этот запрос и поднимает нулевую сессию и отправляет (выдирая Для уникальности логина авторизации можно его делать из circuitId + remote-id) это на биллинг, если авторизация подтверждена то он гуляет в нете, если нет то его тупо релеет на какой нить хост (портал например)

Так вот вопрос, можно ли это реализовать на MPD

2 Abram Это все что вы знаете о реализации isg на mpd ?? помоемому вам нужно стыдиться а не писать в подобные темы для помощи.

Причем здесь mpd ? mpd это демон для организации различных ppp соединений,

который поддерживает CoA, как и ISG в тунельном режиме

 

То что вы описываете это IPoE c идентификацией по DHCP Opt82, ISG это тоже может

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


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

Во блин, настроили и сами непоняли что О_о. Дело в том что в биллинге использовалось именно PPPoE. тоесть было и понятие о сессии как таковой, только время жизни определялось логикой биллинга, поэтому я и говорю про пппое

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


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

Можно сделать ISG на BSD =) mpd выкинуть за ненадобностью, поставить из портов dynamips, объяснить ему, что он 7201 или что-то похожее, настроить ISG. При необходимости апгрейдить процессор, ставить еще железок =)

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


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

Можно сделать ISG на BSD =) mpd выкинуть за ненадобностью, поставить из портов dynamips, объяснить ему, что он 7201 или что-то похожее, настроить ISG. При необходимости апгрейдить процессор, ставить еще железок =)

а можно поподробней...ссылок чтоль??

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


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

2 Abram Это все что вы знаете о реализации isg на mpd ?? помоемому вам нужно стыдиться а не писать в подобные темы для помощи.

Я знаю, что MPD - это Multi-link PPP Daemon. А ISG ну извините ниииииикаким раком к PPP не относится, следственно, Ваш вопрос из разряда "решить задачу по экономике с помощью коня, зубила и зубной пасты".

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


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

print $conn "HTTP/1.0 302 Found\nLocation: $url\n\n\n";

поставьте: "\r\n", не смущайте клиентов.

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


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

Можно сделать ISG на BSD =) mpd выкинуть за ненадобностью, поставить из портов dynamips, объяснить ему, что он 7201 или что-то похожее, настроить ISG. При необходимости апгрейдить процессор, ставить еще железок =)
а можно поподробней...ссылок чтоль??

> whereis dynamips

dynamips: /usr/ports/emulators/dynamips

http://google.ru

этого должно хватить.

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


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

Можно сделать ISG на BSD =) mpd выкинуть за ненадобностью, поставить из портов dynamips, объяснить ему, что он 7201 или что-то похожее, настроить ISG. При необходимости апгрейдить процессор, ставить еще железок =)
вы уверены что он более 10-50Мбит прожует?

dynamips разрабатывался для тестирования и лабораторных работ, но никак не для продакшна.

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


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

не, эмуляторы ну их...буду тогда смотреть в сторону lisg, просто фряха понравилась тем что мало требует системных ресурсов.

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


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

Join the conversation

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

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

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

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

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

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

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