Ключевые слова:cisco, pppoe, nat, (найти похожие документы)
From: Малик Абдугалыев <[email protected]>
Date: Mon, 24 Jul 2004 18:21:07 +0000 (UTC)
Subject: Подключение Cisco по PPPoE, плюс NAT на одном интерфейсе
Оригинал: http://malik.elcat.kg/cisco-pppoe-client.shtml
Малик Абдугалыев <[email protected]>
Подключение циски по PPPoE, плюс NAT на одном интерфейсе
Для теста использовалось следующее оборудование:
* циска 2610 c IOS версии 12.2(8)T:
IOS (tm) C2600 Software (C2600-IS-M), Version 12.2(8)T, RELEASE SOFTWARE(fc2)
System image file is "flash:c2600-is-mz.122-8.T.bin"
* ADSL-модем Corecess Romance в режиме бриджа;
* свитч 3com;
* ну и компьютер конечно.
PPPoE сервер также был на циске, но думаю это значения иметь не
должно.
Для подключение по PPPoE мы должны иметь имя и пароль, выданные нашим
провайдером, например имя - oe1919, пароль - Pa$$worD99.
К сожалению указанная модель циски имеет только один
Ethernet-интерфейс, поэтому пришлось вешать на нём и PPPoE-клиента, и
NAT. Думаю что в случае с циской с двумя Ethernet-интерфейсами
настройка сложнее не будет.
Схема подключения
Схема сети проста - циска, компьютер и модем включены в один свитч.
Модем, настроен в режим бриджа, т.е. тупо отправляет пакетики с одного
интерфейса на другой и наоборот.
Конечно было бы правильнее включить модем в отдельный интерфейс циски,
а всю локальную сеть на другой, но второго Ethernet-интерфейса у нас
нет.
[-- добавлено 20040613 >>>
А вот если свитч поддерживает ВЛАНы, то можно попробовать отделить
ethernet интерфейсы циски и модема в один ВЛАН, а остальную сеть во
вторую, при этом циска должна обязательно входить в оба ВЛАНа. У меня
не было под рукой умного свитча так что эту схему я не проверял, но
думаю всё должно получиться.
<<< добавлено 20040613 --]
Настройка циски
Ниже приводится конфиг циски в части, касающейся PPPoE:
!
vpdn enable
!
vpdn-group 1
request-dialin
protocol pppoe
!
!
interface Ethernet0/0
ip address 10.0.0.1 255.255.255.0
ip nat inside
no ip mroute-cache
no keepalive
pppoe enable
! использовать интерфейс dialer1 в качестве шаблона:
pppoe-client dial-pool-number 1
no cdp enable
!
interface Dialer1
ip address negotiated
ip mtu 1492
ip nat outside
encapsulation ppp
no ip mroute-cache
dialer pool 1
dialer-group 1
no cdp enable
ppp authentication pap callin
ppp pap sent-username oe1919 password Pa$$worD99
!
ip nat inside source list 10 interface Dialer1 overload
!
ip route 0.0.0.0 0.0.0.0 Dialer1
!
access-list 10 permit 10.0.0.0 0.0.0.255
!
dialer-list 1 protocol ip permit
!
!
Думаю комментарии здесь не нужны.
На сайте циски можно посмотреть пример для циски с двумя интерфейсами:
http://www.cisco.com/en/US/tech/tk175/tk15/technologies_configuration_example09186a0080126dc0.shtml
Есть один момент, на сайте циски в конфиге интерфейса Dialer1 указана
вот такая строка "ppp authentication pap".
У меня же заработало только с вот такой строкой - "ppp authentication pap callin".
Параметр callin означает "Authenticate remote on incoming call only",
т.е. что-то вроде "запрашивать аутентификацию удалённо только на
входящие вызовы", получается что-то странное - либо я неправильно
перевёл указанную фразу, либо неправильно её понял.
Если есть необходимость и желание, то можно поиграть параметрами
dialer в интерфейсе Dialer1, например "dialer idle-timeout" позволяет
указать время простоя перед отключением от PPPoE сервера, думаю что
для этого на обеих сторонах соединения не должен быть включен
keepalive, либо параметр "dialer persistent" - соединяться даже если
нет необходимости, т.е. постоянно быть на связи.
Проверка состояния, сброс сессии
Посмотреть состояние соединения можно командой "show vpdn":
test_cs#sh vpdn
PPPoE Tunnel and Session Information Total tunnels 1 sessions 1
PPPoE Tunnel Information
VPDN group: 1
Session count: 1
PPPoE Session Information
SID RemMAC LocMAC Intf VASt OIntf VLAN/
VP/VC
53306 0001.4232.eed3 0005.5e82.0880 Vi1 UP Et0/0
Смотрим какие подключения у нас есть:
test_cs#who
Line User Host(s) Idle Location
* 0 con 0 idle 00:00:00
Interface User Mode Idle Peer Address
Vi1 Virtual PPP (PPPoE ) 00:00:00
А командой "sh int d1" можно посмотреть адрес выданный нам сервером.
Сбросить сессию можно командой "clear vpdn tunnel pppoe".
Конечно это не все команды, которые могут пригодиться при работе с
PPPoE.
Компьютер
На интерфейс компьютера назначаем адрес из сегмента 10.0.0.0/24, и
указываем в качестве шлюза по-умолчанию адрес циски на Ethernet-е
(10.0.0.1). Проверяем - всё работает - даже "пинги пингуются и
тресроуты трейсятся" :-)
Простое подключение циски с одним Ethernet-ом, без NAT-а
Если нам не нужен NAT, а мы хотим просто подключить по PPPoE только
саму циску, то конфиг немного упрощается:
!
vpdn enable
!
vpdn-group 1
request-dialin
protocol pppoe
!
!
interface Ethernet0/0
no ip address
no ip mroute-cache
no keepalive
half-duplex
pppoe enable
pppoe-client dial-pool-number 1
no cdp enable
!
interface Dialer1
ip address negotiated
ip mtu 1492
encapsulation ppp
no ip mroute-cache
dialer pool 1
dialer-group 1
no cdp enable
ppp authentication pap callin
ppp pap sent-username oe1919 password Pa$$worD99
!
!
ip route 0.0.0.0 0.0.0.0 Dialer1
!
dialer-list 1 protocol ip permit
!
Малик. 20031011.
> У меня же заработало только с вот такой строкой
> - "ppp authentication pap callin".
> Параметр callin означает "Authenticate remote on
> incoming call only", т.е. что-то вроде
> запрашивать аутентификацию удалённо только
> на входящие вызовы", получается что-то странное
> - либо я неправильно перевёл указанную
> фразу,либо неправильно её понял.
Почему, ничего странного. При "ppp authentication pap" твоя циска не только сама авторизуется у провайдера, но и требует от провайдера авторизоваться у себя. При "ppp authentication pap callin" происходит только авторизация у провайдера.
Привязку к саб-интерфейсам сделать не получится, ибо есть ограничение для pppoe client - нужен именно физический интерфейс, а вот как сервер может и на логических работать.
Проеверенно на cisco 2620XM software release 12.3 advanced ip services.
Для работы в режиме pppoe клиента также требуется версия как минимум service providers или ip service. На voice или base работать не будет.