Настройка интернета в Метро
Материал из Bryansk Linux Users Group.
Содержание |
Зачем это нужно
Как известно, Linux - сетевая операционная система. Следовательно - без интернета никуда. Однако многих начинающих линуксоидов пугает процедура настройки интернета, в которой присутствует правка текстовых конфигов, и им приходится перезагружаться в Windows, чтобы скачать что-нибудь, или спросить совета у товарищей по несчастью :-) В Метро интернет предоставляется посредством VPN - pptp протокола, что позволяет получить полноценный, полностью прозрачный доступ в Сеть. Cпособ, указанный в Метрошном FAQ устарел и не является самым эффективным. Я хочу предложить свой метод.
Установка pptp
Для начала нам надо удостовериться, что в системе присутствует pptp client и pppd . Это - две системные утилиты, коотрые нужны нам для установки соединения. Открываем терминал и переходим в режим root'а. pppd есть в большинстве дистрибутивов, а pptp скорее всего придётся установить самому. Даём команду:
# which pppd
Если видим пути до исполняемого файла, типа /usr/sbin/pppd , значит всё ок. Аналогично:
# which pptp /usr/sbin/pptp
Если pptp не найден, то его нужно установить. Либо собрать из исходных кодов, либо поставить с помощью менеджера пакетов вашего дистрибутива, что предпочтительнее. Например для Debian или Ubuntu это команда
# apt-get install pptp-linux
Для Gentoo нужно выполнить
# emerge pptpclient
Правим конфиги
Нам необходимо править всего 2 конфигурационных файла. Первый описывает соединение и даёт ему название, во втором содержатся пароли. Даём команду nano /etc/ppp/peers/MyDay Что позволит нам отредактировать настройки соединения с названием MyDay (дневной интернет). Все строки, начинающиеся с # являются комментариями и являются необязательными.
remotename MyDay linkname MyDay ipparam MyDay # здесь указывается адрес сервера (pptp.b-metro.net или 10.0.0.1 по IP адресу) pty "pptp 10.0.0.1 --nolaunchpppd" # собственно логинное имя пользователя name mmlogin # переподключаться при обрыве persist # do not require the server to authenticate to our client noauth # шлюзом по умолчанию является pptp туннель defaultroute
Также если логинов несколько, то можно указать для каждого разный параметр unit, например для дневного соединения
unit 1
а для ночного соответственно
unit 2
при этом при создании соединений они будут называться ppp1 и ppp2 соответственно, что будет удобно для ограничения фаерволом различных приложений, например торрентов. Нажимаем CTRL+X , затем Y (сохраняем изменения). Теперь правим файл /etc/ppp/chap-secrets , его содержимое таково:
mmlogin MyDay ПАРОЛЬ *
Конфиги готовы. Теперь можно попробовать подключиться.
Подключение и разрыв соединения
Подключаться к Сети необходимо командой
# pppd call MyDay logfd 1 updetach
от лица суперпользователя. Результат будет примерно таким:
Using interface ppp0 Connect: ppp0 <--> /dev/pts/1 CHAP authentication succeeded CHAP authentication succeeded Cannot determine ethernet address for proxy ARP local IP address 84.42.63.78 remote IP address 84.42.61.1
В системе возникнет новый сетевой интерфейс ppp0, просмотреть состояние которого можно командой ifconfig ppp0:
# ifconfig ppp0
ppp0 Link encap:Point-to-Point Protocol
inet addr:84.42.63.78 P-t-P:84.42.61.1 Mask:255.255.255.255
UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1500 Metric:1
RX packets:8 errors:0 dropped:0 overruns:0 frame:0
TX packets:9 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:3
RX bytes:264 (264.0 b) TX bytes:301 (301.0 b)
Разрывать соеднинение проще простого:
# killall pppd
Кроме того рекомендуется пользоваться для установления/разрыва соединения командами pon MyDay и poff MyDay, что более корректно.
Возможные проблемы
Неправильный роутинг
Компьютер может иметь неправильную таблицу маршрутизации (кстати, это весьма распространённая ошибка) , когда default route указывает на модем, соответственно при добавлении второго default route в Интернет через ppp0 ничего не работает. Пути решения: верно настроить сеть. В правильно настроенной системе таблица маршрутизации должна выглядеть примерно следующим образом при выключенном интернете:
# route -n Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0 10.0.0.0 192.168.1.1 255.0.0.0 UG 0 0 0 eth0
И при включенном:
# route -n Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 84.42.61.1 0.0.0.0 255.255.255.255 UH 0 0 0 ppp0 192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0 10.0.0.0 192.168.1.1 255.0.0.0 UG 0 0 0 eth0 0.0.0.0 0.0.0.0 0.0.0.0 U 0 0 0 ppp0
В каждом дистрибутиве сеть может настраиваться по-своему, и имеются свои собственные отличные от других дистрибутивов конфигурационные файлы. Поэтому данный вопрос рассматрим касательно Ubuntu 8.04. Кроме того (для всех дистрибьютивов), можно настроить роутинг на время текущего сеанса без сохранения в конфигурационные файлы.
# route del default # route add -net 10.0.0.0/8 gw 192.168.1.1
Здесь мы удляем шлюз по умолчанию, прописываем маршрутизацию на Метро через модем с адресом 192.168.1.1. Теперь на всякий случай выполним killall pppd, посмотрим route -n и ещё раз попробуем подключиться к интернету.
== Для Ubuntu 8.04 ==
По умолчанию будет скорее всего так
route -n Таблица маршутизации ядра протокола IP Destination Gateway Genmask Flags Metric Ref Use Iface 192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0 169.254.0.0 0.0.0.0 255.255.0.0 U 1000 0 0 eth0 0.0.0.0 192.168.1.1 0.0.0.0 UG 100 0 0 eth0
Исправляем в 2 этапа:
# route add -net 10.0.0.0 netmask 255.0.0.0 gw 192.168.1.1 # route delete -net 0.0.0.0 netmask 0.0.0.0 gw 192.168.1.1
Теперь проверяем командой route -n
Должно быть:
route -n Таблица маршутизации ядра протокола IP Destination Gateway Genmask Flags Metric Ref Use Iface 192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0 169.254.0.0 0.0.0.0 255.255.0.0 U 1000 0 0 eth0 10.0.0.0 192.168.1.1 255.0.0.0 UG 0 0 0 eth0
Выполняем и запускаем Интернет:
pon MyDay
Поработали, выключаем:
poff MyDay
ВНИМАНИЕ! При пользовании Торрент-клиентами, кроме того, что в них нужно вставлять IP-фильтры, чтобы не накачать ненароком с Интернет себе платного трафика, советую пользоваться утилитой PPP Tray (имеется в Репозиториях) для контроля соединений.
[|Wine|Wine|]

