Две учетные записи для подключения к интернет по ADSL
slw 22 октября, 2008 - 00:42
Имеется две учетные записи:
guest@guest - для доступа к внутренним ресурсам провайдера (distfiles, portage, cpan ...)
1500-xxxxxxx-xx@beltel.by - для доступа к ресурсам интернета.
Модем настоен в режиме моста.
В файле /etc/conf.d/net:
config_eth0=("adsl")
dsl_user_eth0="1500-xxxxxxx-xx@beltel.by"
#dsl_user_eth0="guest@guest"
Как можно упростить подключение под этими учетными записями не изменяя постоянно файл /etc/conf.d/net.
Уточню:
У меня тарифный план 60-эконом, т.е. на месяц 60-часов интернета в любое время. Для этого подключения используется учетная запись 1500-xxxxxxx-xx@beltel.by. Если прописать соединение на модеме, то оно будет подключено всегда. Нужен контроль. По гостевому доступу на время и трафик ограничений нет, но и доступ только к внутренним ресурсам провайдера.
»
- Для комментирования войдите или зарегистрируйтесь

Я тоже пользуюсь услугами
Я тоже пользуюсь услугами этого провайдера. Сейчас, правда, все настройки для поднятия двух PPPoE у меня на роутере, а раньше делал примерно так:
Во-первых, ppp-интерфейсы поднимал не при загрузке, а по запросу. Для этого установил пакет net-dialup/rp-pppoe.
Во-вторых, создал следующие одинаковые файлы /etc/ppp/chap-secrets и /etc/ppp/pap-secrets вида
"XXXX-00000XX-XX@beltel.by" * "MY_PASSWORD"
"guest@guest" * "guest"
и файлы /etc/ppp/pppoe-byfly.conf вида
ETH='eth0'
USER='XXXX-00000XX-XX@beltel.by'
DEMAND=no
DNSTYPE=SPECIFY
PEERDNS=no
DNS1=82.209.213.60
DNS2=193.232.248.2
DEFAULTROUTE=yes
CONNECT_TIMEOUT=30
CONNECT_POLL=2
ACNAME=
SERVICENAME=
PING="."
PIDFILE="/var/run/$CF_BASE-pppoe-2.pid"
SYNCHRONOUS=no
CLAMPMSS=1412
LCP_INTERVAL=20
LCP_FAILURE=3
PPPOE_TIMEOUT=80
FIREWALL=NONE
LINUX_PLUGIN=rp-pppoe.so
PPPOE_EXTRA=""
PPPD_EXTRA=""
и /etc/ppp/pppoe-guest.conf вида
ETH='eth0'
USER='guest@guest'
DEMAND=no
DNSTYPE=SPECIFY
PEERDNS=no
DNS1=82.209.213.60
DNS2=193.232.248.2
DEFAULTROUTE=yes
CONNECT_TIMEOUT=30
CONNECT_POLL=2
ACNAME=
SERVICENAME=
PING="."
PIDFILE="/var/run/$CF_BASE-pppoe.pid"
SYNCHRONOUS=no
CLAMPMSS=1412
LCP_INTERVAL=20
LCP_FAILURE=3
PPPOE_TIMEOUT=80
FIREWALL=NONE
LINUX_PLUGIN=rp-pppoe.so
PPPOE_EXTRA=""
PPPD_EXTRA="unit 1" #На госте всегда поднимается ppp1
Потом написал скриптики что-то вроде
#!/bin/sh
sudo pppoe-start /etc/ppp/pppoe-byfly.conf
sleep 3
sudo pppoe-start /etc/ppp/pppoe-guest.conf
# Add Guest's routing table.
###
# Timeout before continue
sleep 3
#
### Setup routing for Guest connection ###
# new network
route add -net 86.57.151.0 netmask 255.255.255.224 dev ppp1
# game servers
route add -net 86.57.251.28 netmask 255.255.255.255 dev ppp1
# stat.byfly.by
route add -net 86.57.253.1 netmask 255.255.255.255 dev ppp1
# www.byfly.by
route add -net 193.232.248.79 netmask 255.255.255.255 dev ppp1
# www.belpak.by
route add -net 193.232.248.80 netmask 255.255.255.255 dev ppp1
# jabber
route add -net 82.209.245.151 netmask 255.255.255.255 dev ppp1
# mogilev
route add -net 194.158.206.240 netmask 255.255.255.255 dev ppp1
route add -net 194.158.206.241 netmask 255.255.255.255 dev ppp1
route add -net 194.158.206.246 netmask 255.255.255.255 dev ppp1
# grodno
route add -net 194.158.202.59 netmask 255.255.255.255 dev ppp1
# brest
route add -net 82.209.195.15 netmask 255.255.255.255 dev ppp1
# dc
route add -net 86.57.250.0 netmask 255.255.254.0 dev ppp1
route add -net 86.57.246.0 netmask 255.255.255.0 dev ppp1
route add -net 93.84.112.0 netmask 255.255.248.0 dev ppp1
# extmedia at dc
route add -net 91.149.189.0 netmask 255.255.255.128 dev ppp1
route add -net 91.149.189.128 netmask 255.255.255.192 dev ppp1
# 24.04.2008
# tut.by at dc
route add -net 91.149.157.0 netmask 255.255.255.128 dev ppp1
# DNS
route add -net 82.209.213.60 netmask 255.255.255.255 dev ppp1
route add -net 193.232.248.2 netmask 255.255.255.255 dev ppp1
Соответственно, в /etc/sudoerc добавил
lupo ALL=NOPASSWD:/usr/sbin/pppoe-start,/usr/sbin/pppoe-stop
Для "убийства" ppp-интерфейсов написал скриптик
#!/bin/sh
sudo /usr/sbin/pppoe-stop /etc/ppp/pppoe-byfly.conf
sudo /usr/sbin/pppoe-stop /etc/ppp/pppoe-guest.conf
Дальше возможны варианты:
- создать ярлыки и в свойствах прописать запуск скриптов для запуска и остановки интерфейсов
- тоже самое сделать через kmenuedit
P.S. Делал я это достаточно давно, память плохая, возможно где-то и ошибся :)
Я ♥ Gentoo & Funtoo
Спасибо!
Сделал все аналогично тому как Вы предложили. Только не прописывал маршруты. Но все работает и без них :)
Тогда почему вы решили
Тогда почему вы решили, что гостевые соединения работают через нужный интерфейс?
Посмотрите статистику по интерфейсам командой ifconfig. Настройте, допустим, в /etc/make.conf
GENTOO_MIRRORS="http://ftp.byfly.by/pub/gentoo"
SYNC="rsync://ftp.mgts.by/ftp/pub/gentoo/gentoo-portage/"
проведите синхронизацию portage и посмотрите, через какой интерфейс принимаются данные.
Или приведите здесь вывод команды
route -nЯ ♥ Gentoo & Funtoo
вот что получается: 1. если
вот что получается:
1. если сначала запустить pppoe-byfly.conf а потом pppoe-guest.conf, то emerge --sync идет через ppp0;
2. если сначала запустить pppoe-guest.conf а потом pppoe-byfly.conf, то emerge --sync идет через ppp1;
3. если запустить только pppoe-byfly.conf, то emerge --sync идет через ppp0;
4. если запустить только pppoe-guest.conf, то emerge --sync идет через ppp1;
Вот вывод команды route при двух запущенных соединениях:
localhost jarek # route -n Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 93.84.6.254 0.0.0.0 255.255.255.255 UH 0 0 0 ppp0 93.84.6.254 0.0.0.0 255.255.255.255 UH 0 0 0 ppp1 127.0.0.0 0.0.0.0 255.0.0.0 U 0 0 0 lo 0.0.0.0 93.84.6.254 0.0.0.0 UG 0 0 0 ppp0Поэтому и надо изменить
Поэтому и надо изменить таблицу роутинга, как в моём скрипте, чтобы определённые IP-адреса шли через определённый ppp-интерфейс.
Я ♥ Gentoo & Funtoo
у меня племянник за 15 минут
у меня племянник за 15 минут на модеме поднял оба соединения в режиме роутера и таблицу маршрутизации в нем же прописал. модем DSL-2500. а до этого тоже изгалялся с бриджами и тп. так что, видимо, не так это и сложно :)
P.S.: Linux - это красная таблетка :-) Windows - синяя...
Можно поднять два ppp
Можно поднять два ppp соединения на linux роутере и прописать маршрутизацию там. Автор изначально не описал, поддерживает ли провайдер два ppp соединения одновременно. И, кстати, "adsl" - это pppoe, pppoa или еще что?
[re]: Можно поднять два ppp
2 ppp соединения одновременно поддерживаются;
adsl - pppoe
это несложно - модем или
это несложно - модем или может, или нет.
примерно так config_ppp0=(
примерно так
config_ppp0=( "ppp" ) link_ppp0="eth0" plugins_ppp0=( "pppoe" ) username_ppp0='login' password_ppp0='pass' pppd_ppp0=( # "debug" "updetach" "defaultroute" "maxfail 10" "lcp-echo-failure 10" "lcp-echo-interval 60" ) config_ppp1=( "ppp" ) link_ppp1="eth0" plugins_ppp1=( "pppoe" ) username_ppp1='login2' password_ppp1='pass2' pppd_ppp1=( "updetach" "maxfail 10" "lcp-echo-failure 10" "lcp-echo-interval 60" ) routes_ppp1=( "10.0.0.0/8 via 10.44.0.1 dev ppp1" )Мой конфиг для byfly.by
Мой конфиг для byfly.by
Модем в режиме роутера, внутренний интерфейс модема имеет адрес 192.168.5.1
На модеме настроено одно pppoe подключение для гостевого доступа.
Для абонентов Минской ГТС: в поле User Name ваш_номер_договора@guest, например 1704-0001234-08@guest; если ваш логин на вход в интернет в виде
, то вам нужно указать mgts000123@guest; в поле Password - ваш пароль, указанный в договоре.
Для абонентов других областей в поле User Name укажите guest@guestи в поле Password - guest
cat /etc/conf.d/net config_eth0=( "192.168.5.123/24" ) modules_eth0=( "!plug" ) routes_eth0=( "-net 86.57.151.0 netmask 255.255.255.224 gw 192.168.5.1" "86.57.251.28 gw 192.168.5.1" "86.57.253.1 gw 192.168.5.1" "193.232.248.79 gw 192.168.5.1" "193.232.248.80 gw 192.168.5.1" "82.209.245.151 gw 192.168.5.1" "194.158.206.240 gw 192.168.5.1" "194.158.206.241 gw 192.168.5.1" "194.158.206.246 gw 192.168.5.1" "194.158.202.59 gw 192.168.5.1" "82.209.195.15 gw 192.168.5.1" "-net 86.57.250.0 netmask 255.255.254.0 gw 192.168.5.1" "-net 86.57.246.0 netmask 255.255.255.0 gw 192.168.5.1" "-net 93.84.112.0 netmask 255.255.248.0 gw 192.168.5.1" "-net 91.149.189.0 netmask 255.255.255.128 gw 192.168.5.1" "-net 91.149.189.128 netmask 255.255.255.192 gw 192.168.5.1" "-net 93.125.53.0 netmask 255.255.255.0 gw 192.168.5.1" "-net 91.149.157.0 netmask 255.255.255.128 gw 192.168.5.1" "82.209.213.60 gw 192.168.5.1" "193.232.248.2 gw 192.168.5.1" "82.209.240.241 gw 192.168.5.1" "82.209.243.241 gw 192.168.5.1" ) dns_servers_eth0=( "82.209.240.241" "82.209.243.241" ) config_ppp0=( "ppp" ) link_ppp0="eth0" RC_NEED_ppp0="net.eth0" plugins_ppp0=( "pppoe" ) username_ppp0='?????????????@beltel.by' password_ppp0='????????' pppd_ppp0=( "debug" "updetach" "defaultroute" "maxfail 10" "lcp-echo-failure 10" "lcp-echo-interval 60" )Включить тарифицируемое подкючение
/etc/init.d/net.ppp0 start
Выключить тарифицируемое подкючение
/etc/init.d/net.ppp0 stop
--------------------------
Сеть свободных знаний
http://www.net-class.net/
[РЕШЕНО]
Всем большое спасибо за красивые идеи! Тему закрываем.