Инструменты пользователя

Инструменты сайта


pppoe

Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

pppoe [2018/12/10 09:56] (текущий)
Строка 1: Строка 1:
 +====== Как работает PPPoE ======
 +{{htmlmetatags>​
 +metatag-description=(PPPoE сетевой протокол канального уровня (второй уровень сетевой модели OSI) передачи кадров PPP через Ethernet. В основном используется xDSL-сервисами. Предоставляет дополнительные возможности (аутентификация,​ сжатие данных,​ шифрование).)
 +}}
  
 +
 +**PPPoE** (англ. Point-to-point protocol over Ethernet) — сетевой протокол передачи кадров [[PPP]], стандарт которого определён в документе [[RFC]] 2516, является установление соединения «точка-точка» поверх общей среды Ethernet. Настройка подключения отличается для абонентов сетей [[Ethernet]] и ADSL. В основном используется x[[DSL]]-сервисами. Предоставляет дополнительные возможности ([[аутентификация]],​ сжатие данных,​ шифрование).
 +
 +<​note>​К сожалению,​ его [[MTU]] ниже, чем на стандартном [[Ethernet]],​ что иногда вызывает проблемы с плохо настроенными межсетевыми экранами.</​note>​
 +
 +Работа PPPoE осуществляется следующим образом. **Существует Ethernet-среда,​ то есть несколько соединённых сетевых карт, которые адресуются MAC-адресами.** Заголовки Ethernet-кадров содержат адрес отправителя кадра, адрес получателя кадра и тип кадра. Одну из карт слушает PPPoE сервер. Клиент посылает широковещательный Ethernet кадр, на который должен ответить PPPoE сервер (адрес отправителя кадра — свой MAC-адрес,​ адрес получателя кадра — FF:​FF:​FF:​FF:​FF:​FF и тип кадра — PPPoE Active Discovery Initiation). PPPoE сервер посылает клиенту ответ (адрес отправителя кадра — свой MAC-адрес,​ адрес получателя кадра — МАС-адрес клиента и тип кадра — PPPoE Active Discovery Offer). Если в сети несколько PPPoE серверов,​ то все они посылают ответ. Клиент выбирает подходящий сервер и посылает ему запрос на соединение. Сервер посылает клиенту подтверждение с уникальным идентификатором сессии,​ все последующие кадры в сессии будут иметь этот идентификатор. Таким образом,​ между сервером и клиентом создается виртуальный канал, который идентифицируется идентификатором сессии и MAC-адресами клиента и сервера. Затем в этом канале устанавливается PPP соединение,​ а уже в PPP пакеты упаковывается IP-трафик.
 +
 +Для Ethernet необходима установка клиента РРРоЕ (для всех ОС за исключением Windows XP). В настройках сетевой карты можно отключить все протоколы (в том числе и TCP\IP), так как они не используются для создания РРРоЕ сессии. После установки драйвера клиента РРРоЕ необходимо из командной строки один раз запустить утилиту конфигурации «raspppoe»,​ где в списках всех обнаруженных серверов доступа необходимо будет выбрать свой городской сервер. Автоматически будет создано новое соединение удаленного доступа. При запуске этого соединения будет запрошен логин и пароль и установлена сессия РРРоЕ. После этого становится возможен доступ в локальную сеть и Интернет. Пользователь идентифицируется по логину,​ паролю,​ МАС адресу (фиксируется при установлении первой сессии,​ поэтому важно первую сессию устанавливать со своего компьютера),​ IP адрес (назначается автоматически,​ но не меняется от сессии к сессии). Для Windows XP, где поддержка РРРоЕ встроена в ОС настройка сводится с созданию нового соединения,​ дополнительно устанавливать и настраивать специальное ПО не требуется.
 +
 +Для ADSL настройка доступа через РРРоЕ производится следующим образом. Для USB ADSL модемов необходимо установить WAN драйвер модема. При этом будет создано соединение Dial-up через ADSL модем и нет необходимости устанавливать и настраивать программное обеспечение PPPoE клиентов,​ так как его роль выполняет ADSL оборудование. Чтобы установить РРРоЕ сессию необходимо ввести логин и пароль. Для модемов,​ имеющих Ethernet выход, через WEB интерфейс модема выбирается соединение через РРРоЕ, указывается логин и пароль. Сессия устанавливается модемом автоматически при подаче на него питания. Сетевой интерфейс компьютера настраивается на локальное подключение к ADSL модему (возможно использование встроенного в модем DHCP для автоматической настройки сетевой карты компьютера). При этом при включении компьютера автоматически устанавливается соединение с локальной сетью и Интернетом. Чтобы разорвать соединение,​ необходимо отключить питание модема или отключить сетевой интерфейс компьютера.
 +
 +===== Настройка PPPoE на FreeBSD =====
 +Рабочий пример настройки PPPoE на маршрутизаторе OS [[FreeBSD]].
 +<​code>​
 +> ee /​etc/​ppp/​ppp.conf
 +default:
 + set log Phase tun command ​ # параметры протоколирования,​ где
 + # log - включает ведение log-файла (по умолчанию все сообщения записываются в файл /​var/​log/​ppp.log
 + # Phase - поэтапный вывод сообщений в лог (соответствует этапам подключения),​ позволяет исключить малоинформативные сообщения
 + # tun - виртуальное сетевое устройство,​ которое будет задействовано при соединении (в данном случае tun, т.к. протокол точка-точка)
 + # command - производить запись в лог как команд,​ полученных с командной строки,​ так и тех, которые были считаны стартовым скриптом ppp из
 + # конфигурационного файла
 + set mru 1492
 + set mtu 1492
 + ​disable ipv6cp # отключить поддержу IPv6
 + ​enable lqr     # Link Quality Reporting - по умолчанию выключено
 +
 +ispgateway:
 + set device PPPoE:​xl0 ​      # где PPPoE - задаёт уточнение протокола (в рамках протоколов,​ поддерживающихся ppp), xl0 имя устройства вашей Ethernet карты
 + set authname YourLoginName # выдает ваш ISP
 + set authkey YourPassword ​  # выдает ваш ISP
 + add default HISADDR ​       # установить шлюз по умолчанию (default route) на этого провайдера,​ HISSADR - отображать IP адрес присоединённой стороны
 +
 +</​code>​
 +Для запуск [[ppp]] при загрузке добавим в /​etc/​rc.conf следующее строки:​
 +<​code>​
 +> ee /​etc/​rc.conf
 +ppp_enable="​YES"​
 +ppp_mode="​ddial"​
 +ppp_nat="​NO"​ #для NAT -преобразования я использую PF, потому NAT в ppp выключен. ppp_nat по умолчанию включен.
 +ppp_profile="​ispgateway"​
 +</​code>​
 +===== Настройка PPPoE на Debian =====
 +Настройка PPPoE на маршрутизаторе OS [[Debian]] 7 Wheezy/sid.
 +  * Установить pppoeconf<​file>​
 +# aptitude install pppoeconf pppoe ppp
 +</​file>​
 +  * Запустить pppoeconf для создания и/или изменения файлов /​etc/​ppp/​peers/​dsl-provider,​ /​etc/​ppp/​*ap-secrets и /​etc/​network/​interfaces<​file>​
 +# pppoeconf
 +</​file>​
 +====== PF MTU PPPoE ======
 +<​code>>​ ifconfig
 +tun0: flags=8051<​UP,​POINTOPOINT,​RUNNING,​MULTICAST>​ metric 0 mtu 1492
 +...
 +</​code>​
 +tun0 соединение имеет [[MTU]] 1492. Это значит,​ что ваше соединение с интернет имеет окно в 1492 байт ([[MTU]] - Maximim Transmission Unit) - это наибольший пакет, который ваша машина может ​ передать ​ по  данному соединению. В тоже время, почти все веб и ftp серверы соединены с интернет с MTU 1500.
 +
 +В логе ppp появилась запись tun0: Warning: deflink: Reducing configured MRU from 1500 to 1492. Для устранения зададим явным образом максимальные значения [[MTU]] и [[MRU]] для [[ppp]].
 +
 +FreeBSD: <​file>​
 +> ee /​etc/​ppp/​ppp.conf
 +default:
 + set mru 1492
 + set mtu 1492
 +</​file>​
 +Debian:<​file>​
 +# nano /​etc/​ppp/​peers/​dsl-provider
 +mtu 1492
 +</​file>​
 +====== Ссылки ======
 +  * [[http://​ru.wikipedia.org/​wiki/​PPPoE|PPPoE Материал из Википедии]]
 +  * [[http://​www.opennet.ru/​cgi-bin/​opennet/​man.cgi?​topic=pppd&​category=8|man pppd]]
 +  * [[http://​www.freebsd.org/​doc/​ru/​books/​handbook/​pppoe.html|Руководство FreeBSD: Использование PPP через Ethernet (PPPoE)]]
 +  * [[http://​www.freebsd.org/​doc/​ru/​books/​handbook/​userppp.html|Руководство FreeBSD: PPP уровня пользователя]]
 +  * [[http://​www.opennet.ru/​base/​modem/​pppoe_freebsd_client.txt.html|OpenNET:​ Настройка PPPoE соединения во FreeBSD]]
 +  * [[http://​www.opennet.ru/​base/​net/​pppoe_mtu.txt.html|О PPPoE, MTU и проблеме Path MTU Discovery Black Hole]]
pppoe.txt · Последние изменения: 2018/12/10 09:56 (внешнее изменение)