quarta-feira, 28 de agosto de 2013

Configuração de Cliente PPPoE em Roteadores Cisco

Olá Pessoal.

Um dos novos tópicos adicionados ao novo currículo CCNA R&S no que tange às tecnologias de longa distância é a configuração de PPPoE (Point-to-Point Protocol over Ethernet) no lado cliente, uma prática comum entre algumas operadoras que ofertam conexões à Internet via xDSL.

A tecnologia PPPoE é bastante utilizada com DSL porque o protocolo PPP é a opção natural para permitir a autenticação do usuário e o transporte das mais diversas tecnologias através das redes de transporte das operadoras, de forma que, por exemplo, quadros Ethernet encapsulados dentro de quadros PPP podem trafegar através das redes legadas ATM (Asynchronous Transfer Mode) que ainda possam existir em virtude do alto custo de implantação. Atualmente o maior motivador para uso do PPPoE é a possibilidade de autenticar o usuário com CHAP, um sub-protocolo nativo do PPP.

Nessas situações é comum a operadora disponibilizar um software de autenticação no lado do cliente, através do qual o usuário fornece suas credenciais (login e senha) para estabelecer a conexão com a Internet. Em pequenas empresas ou mesmo em ambientes residenciais que tenham várias máquinas ligadas em rede é mais conveniente transferir a responsabilidade de autenticação para um dispositivo central, de forma que o processo de conexão fica totalmente transparente para o usuário final. Esse dispositivo responsável pela autenticação pode ser o próprio roteador. Para exemplificar como seria o processo de configuração de uma conexão cliente PPPoE em roteadores Cisco estaremos considerando o cenário apresentado na figura abaixo.


A interface f0/0 está conectada na rede local (LAN), sendo que seu IP 192.168.0.254 será configurado como gateway da rede. A interface f0/1 está diretamente conectada ao modem da operadora instalado na casa do usuário, também chamado de CPE (Customer Premises Equipment). No lado da operadora existe um dispositivo chamado DSLAM que faz a agregação de vários modens DSL dos clientes e que, por sua vez, está conectado à rede da operadora que possui saída para a Internet. A seguir são apresentados os comandos para configurar o roteador como cliente PPPoE e, em seguida, são feitas algumas observações relevantes.

01. Router# conf t
02. Router(config)# interface f0/0
03. Router(config-if)# ip address 192.168.0.254 255.255.255.0
04. Router(config-if)# ip nat inside
05. Router(config-if)# no shut
06. Router(config-if)# interface f0/1
07. Router(config-if)# pppoe-client dial-pool-number 1
08. Router(config-if)# exit
09. Router(config)# interface dialer1
10. Router(config-if)# mtu 1492
11. Router(config-if)# encapsulation ppp
12. Router(config-if)# ip address negotiated
13. Router(config-if)# ppp authentication chap 
14. Router(config-if)# ppp chap hostname LOGIN
15. Router(config-if)# ppp chap password SENHA
16. Router(config-if)# dialer pool 1 
17. Router(config-if)# ip nat outside
18. Router(config-if)# dialer-group 1
19. Router(config-if)# exit
20. Router(config)# dialer-list 1 protocol ip permit
21. Router(config)# ip nat inside source list 1 interface dialer1 overload
22. Router(config)# access-list 1 permit 192.168.0.0 0.0.0.255
23. Router(config)# ip route 0.0.0.0 0.0.0.0 dialer 1

A configuração do PPPoE em roteadores consiste em criar e vincular uma nova interface virtual do tipo dialer à interface ethernet que está fisicamente conectada ao modem da operadora, processo realizado nas linhas 07, 09 e 16 da configuração anterior. Todas as demais configurações relacionadas ao PPP propriamente dito são realizadas na interface virtual dialer, já que esse tipo de interface tem suporte ao encapsulamento PPP. Ou seja, esse processo não passa de um mecanismo de tunelamento...

Em conexões DSL é comum a operadora atribuir dinamicamente os endereços dos usuários através de um servidor DHCP, no entanto é necessário o uso do protocolo IPCP (IP Configuration Protocol) no contexto do link PPP para que essa atribuição funcione. Por isso na linha 12 foi utilizado o comando "ip address negotiated" para habilitar o IPCP. 

Outra configuração extremamente importante é setar o tamanho máximo do quadro (MTU) para 1492 bytes (linha 10), uma vez que o novo cabeçalho PPP possui 8 bytes e o limite máximo do quadro Ethernet é 1500 bytes. Logo, para não estourar o limite do quadro Ethernet é necessário subtrair esses 8 bytes do PPP para que os quadros Ethernet não ultrapassem 1492 bytes antes de receber o cabeçalho PPP de 8 bytes. Todo processo de resolução de problemas em conexões PPPoE deve começar por essa observação, para assegurar que o MTU foi configurado para 1492, caso contrário a comunicação não é estabelecida.

Por fim, nas linhas 13, 14 e 15 são configuradas as credenciais de autenticação do usuário. Reparem que também já estamos fazendo a configuração do NAT, considerando a interface f0/0 como o lado inside e a interface dialer1 como o lado outside. O objetivo desse artigo não é mostrar o processo de configuração do NAT, por isso os leitores que tiverem dúvida nessa configuração podem consultar o Lab10 do livro "Laboratórios de Tecnologias Cisco em Infraestrutura de Redes".

Como complemento, as linhas 18 e 20 trazem uma configuração adicional de segurança que restringe o tráfego na interface dialer para aceitar apenas conteúdo IP, uma prática que não é cobrada no novo exame CCNA R&S (por isso não há destaque em amarelo). A linha 23 cria uma rota padrão apontando que todo o conteúdo direcionado à Internet deve sair através dessa interface virtual que tem conectividade com a operadora.

A título de informação, recentemente criei uma nova categoria no blog com a palavra-chave 200-120, onde estou agrupando todos os artigos relacionados aos tópicos adicionados no novo exame CCNA R&S. Recomendo aos leitores interessados no novo exame CCNA R&S que façam uma busca pela palavra-chave 200-120 porque em outras oportunidades já escrevi vários artigos falando sobre tópicos que foram acrescentados recentemente, a saber: SSH, SNMP, Syslog, NTP, NetFlow, IOS 15, etc.

Abraço.

Samuel.

20 comentários:

  1. Sempre tive curiosidade de como efetuar essa configuração e agradeço muito a você por partilhar de uma maneira bem clara esse assunto!
    Gostaria de ver também em seu blog o tema: Telepresença.
    Parabéns pela apresentação também do Academy Day Virtual!
    Obrigado Samuel.

    ResponderExcluir
    Respostas
    1. Muito bom amigo.
      Favor quem poder me ajudar;

      Pessoal estou montando um provedor de internet na minha cidade, atualmente estou com um link de 150mb FTTH-ppoe (GVT) que esta sendo autenticado por meu router cisco, agora já solicitel um novo link de 150mb e queria fazer um load balance no meu cisco. Pessoal existe a possibilidade para essa topologia ja existente?

      Excluir
  2. De antemão, gostaria de agradecer pelo artigo. Muito boa sua explicação!

    Surgiu uma pequena dúvida: Esta configuração de cliente "PPPoE" no Router CISCO é análoga a configuração de um Modem ADSL para modo Roteado? Neste caso, o equipamento ficaria com os IPs públicos disponbilizados pela operadora?

    De antemão, obrigado pela atenção!

    ResponderExcluir
    Respostas
    1. O procedimento de configuração é totalmente diferente porque os sistemas operacionais são diferentes, mas o princípio lógico é o mesmo...

      Excluir
  3. Olá, Samuel fiz essa configuração no meu equipamento real. Obtive o endereço publico fornecido pela operadora.
    configurei dhcp,dns,domain-lookup. name-server etc.
    eu consigo pingar, dar tracert em qualquer endereço da internet meu dns resolve os nomes. Porém ,não consigo abrir nenhum site no navegador, fica carregando a pagina mas nao entra, porém no wireshark eu recebo a respota com o endereço do site, nem mesmo com o ip eu consigo acessar qualquer site, Apenas pingar etc..
    vou deixar aqui minha configuração. eu fiz varias vezes com 2 roteadores diferentes 1841 e 1905, dns diferentes usei do google,da operadora e nao consigo abri as paginas. só pingar :(

    dot11 syslog
    ip source-route
    !
    !
    !
    !
    ip dhcp pool marcos
    network 192.168.100.0 255.255.255.0
    default-router 192.168.100.254
    dns-server 189.40.198.80 189.40.198.81
    !
    !
    ip cef
    no ipv6 cef
    !
    multilink bundle-name authenticated
    !
    crypto pki token default removal timeout 0
    !
    !
    !
    !
    license udi pid CISCO1841 sn FHK1446759A
    license accept end user agreement
    !
    redundancy
    !
    !
    interface FastEthernet0/0
    ip address 192.168.100.254 255.255.255.0
    ip nat inside
    ip virtual-reassembly in
    duplex auto
    speed auto
    !
    interface FastEthernet0/1
    no ip address
    duplex auto
    speed auto
    pppoe enable group global
    pppoe-client dial-pool-number 1
    !
    !
    interface Dialer1
    ip address negotiated
    ip mtu 1492
    ip nat outside
    ip virtual-reassembly in
    encapsulation ppp
    dialer pool 1
    dialer-group 1
    ppp authentication chap callin
    ppp chap hostname guest
    ppp chap password 0 guest
    ppp ipcp dns request accept
    !
    ip forward-protocol nd
    no ip http server
    no ip http secure-server
    !
    !
    ip nat inside source list 1 interface Dialer1 overload
    ip route 0.0.0.0 0.0.0.0 Dialer1
    !
    access-list 1 permit 192.168.100.0 0.0.0.255
    dialer-list 1 protocol ip permit
    !
    !




    ResponderExcluir
    Respostas
    1. Boa tarde amigo, estou com um problema parecido com o seu, no meu caso, tenho os mesmos equipamentos que vc (Routers 1841 e 1905 - Switches 1900 e 2950), estou com os seguintes problemas:

      1- Estou com um modem telefonica speedy, quando o modem/router ADSL esta fazendo a discagem coloco a interface do router (1905) em modo dhcp, para aprender o ip do modem, consigo pingar para internet somente do router, os pcs não recebem a internet. Quando o modem/router ADSL esta em modo bridge, ou seja o router (1905) fara a discagem, não consigo autnticar sndo que usuario senha estão corretos.

      2 - O segundo problema é que o pc não esta aprendendo endereços via dhcp do router Cisco, a configuração esta padrão, subinterface na vlan 99 com dot 1q, porta 24 do sw-2950 em modo trunk, porta 1 do sw-2950 em modo de acesso na vlan 99, vendo os logs de debug dhcp no 1905, vejo que ele exibe o hostname do pc, mas ele não aprende os endereços, ja desativei o anti virus e o firewal do windonws, no packet tracer funciona, a conf de vlan esta correta pois qndo coloco o ip na mão a rede funciona.

      se puderem me ajudar, me explicando o pq n ta funcionando e onde estou errando agradeço muito, abraço. vlopes777@gmail.com

      Excluir
    2. ola consegue sera fazer configuração sem a placa hwic ? fazendo entrar 2 fio pelo rj45

      Excluir
    3. Utilizem o seguinte comando na interface Dialer:

      ip tcp adjust-mss 1452

      Ele vai ajustar o pacote conforme o necessário. Abs

      Excluir
  4. Ola!
    como eu faço para configurar o meu router cisco1800 para sair pela internet usando o ip que o router me entrega? Pois ele ja me entrega um ip provado, sendo assim não preciso usar nat.

    ResponderExcluir
    Respostas
    1. A partir do momento em que seu roteador esta com um IP roteavel na internet você não necessita de NAT, a questão para o NAT é forma como sua rede interna vai sair para a internet.

      Excluir
  5. Ola!
    como eu faço para configurar o meu router cisco1800 para sair pela internet usando o ip que o router da net me entrega? Pois ele ja me entrega um ip privado, sendo assim não preciso usar nat.
    fiz minhas configurações de rede e tudo esta funcionando. so não consigo que ele saia para a internet usando o modem de isp da net.

    Responder

    ResponderExcluir
  6. Ola markiiin, vc conseguiu resolver o problema se sim posta a solução para nos. se possível o script da configuração, estou com o mesmo problema, com um link de fibra da vivo, mas no meu caso ele usa a vlan 10 se alguém puder ajudar, tenho um cisco 1841 funcionando normal em um link da gvt35 com modem em bridge mas nesse caso da fibra não vai,!!!! preciso configurar a vlan 10 na wan.

    !
    hostname OPSTEC
    !
    boot-start-marker
    boot-end-marker
    !
    !
    enable secret 4 UQd3qJ3amLNsw1S.Uvmq06XFE3
    !
    no aaa new-model
    dot11 syslog
    ip source-route
    !
    !
    !
    no ip dhcp use vrf connected
    !
    ip dhcp pool Local_Lan
    network 192.168.2.0 255.255.255.0
    default-router 192.168.2.1
    dns-server 8.8.8.8
    lease 7
    !
    !
    ip cef
    ip domain name google.com.br
    ip name-server 8.8.8.8
    ip name-server 8.8.4.4
    multilink bundle-name authenticated
    !
    crypto pki token default removal timeout 0
    !
    !
    !
    !
    license udi pid CISCO1841 sn FTX144902T0
    username operador secret 4 msWS/TYGROOR9v1rvYfniGqiaUti
    !
    !
    !
    !
    !
    !
    interface FastEthernet0/0
    description INTERFACE CONEXAO LAN
    ip address 192.168.2.1 255.255.255.0
    ip nat inside
    ip virtual-reassembly in
    duplex auto
    speed auto
    !
    interface FastEthernet0/1
    description INTERFACE CONEXAO MoDEM ADSL
    no ip address
    duplex auto
    speed auto
    pppoe enable group global
    pppoe-client dial-pool-number 1
    !
    interface Serial0/1/0
    no ip address
    shutdown
    no fair-queue
    clock rate 2000000
    !
    interface Dialer1
    ip address negotiated
    ip mtu 1492
    ip nat outside
    ip virtual-reassembly in
    encapsulation ppp
    ip tcp adjust-mss 1452
    dialer pool 1
    ppp authentication chap pap callin
    ppp chap password 0 gratis
    ppp pap sent-username turbonet@turbonet password 0 gvt25
    !
    ip forward-protocol nd
    !
    no ip http server
    no ip http secure-server
    !
    ip nat inside source list DSL_ACCESSLIST interface Dialer1 overload
    ip route 0.0.0.0 0.0.0.0 Dialer1
    !
    ip access-list extended DSL_ACCESSLIST
    permit ip 192.168.2.0 0.0.0.255 any
    !
    !
    !
    control-plane
    !
    !
    !
    line con 0
    login local
    line aux 0
    line vty 0 4
    login local
    transport input all
    !
    scheduler allocate 20000 1000
    end

    ResponderExcluir
    Respostas
    1. Vou postar o exemplo da minha configuração... No seu caso oq muda é a interface:

      !
      interface GigabitEthernet1
      no ip address
      duplex auto
      speed auto
      no cdp enable
      !
      interface GigabitEthernet1.1
      encapsulation dot1Q 10
      pppoe-client dial-pool-number 1
      !

      Você vai tratar a VLAN via SUB.INTERFACE

      Abs!

      Excluir
  7. Para resolver o problema da navegação, mude o mtu para 1280 na interface dialer 1

    ResponderExcluir
  8. Boa tarde Senhores,

    Eu precisava configurar um roteador como Servidor de PPPoe para os nosso clientes de Internet.

    É possível realizar essa configuração, de modo que o roteador da cisco seja o centralizador dos Logins do Usuário.

    Nós iriamos instalar um servidor, apenas para fazer essa autenticação, mais como
    a empresa, adquiriu uns roteadores cisco de um outro parceiro, queria
    saber se conseguimos configurar algum desses roteadores parar fazer
    esse serviço.

    Desde já agradeço.


    Atenciosamente,
    Edir Bonometti

    ResponderExcluir
  9. Pessoal Boa noite!!!
    Preciso muito da ajuda de vocês,eu tenho um modem cisco 877 e não estou conseguindo configuralo via telnet.
    Eu uso net da oi velox,vou postar minhas configurações ppoe:
    usuário: oi@oi
    senha: oi1234
    pvc :1/32
    Pode ser uma configuração simples.
    Muito obrigado

    ResponderExcluir
    Respostas
    1. O vendedor mandou esse script PARA MIM mas não estou conseguindo acessar a internet
      esse é o script de configuração ( altere os endereços de ips para quais você desejar):

      1) Excluir o IP do Gateway (192.168.1.254) da atribuição DHCP :

      Router(config): ip dhcp excluded-address 192.168.1.254

      2) Configuração de Scope de DHCP chamada de "LAN":

      Router(config): ip dhcp pool LAN
      Router(dhcp-config): network 192.168.1.0 255.255.255.0
      Router(dhcp-config): default-router 192.168.1.1
      Router(dhcp-config): dns-server 192.168.1.1
      Router(dhcp-config): lease infinite

      3) Configuração de DNS:

      Router(config): ip dns server
      Router(config): ip name-server 201.10.1.2
      Router(config): ip name-server 201.10.120.3

      Nota: Estes IPs podem ser outros em função da operadora. Inclusivamente podem colocar-se os "famosos" servidores de DNS: 4.2.2.2, 8.8.8.8, etc...

      4) Configuração da placa física ADSL:

      Router(config): interface ATM0
      Router(config-if): no ip address
      Router(config-if): no atm ilmi-keepalive
      Router(config-if): dsl operating-mode auto
      Router(config-if): pvc 1/32
      Router(config-if-atm-vc): encapsulation aal5snap
      Router(config-if-atm-vc): pppoe-client dial-pool-number 1

      Nota: Na MEO (PT), as definições de PVC (VPI/VCI) são 1/32 e encapsulamento é "aal5snap". Estas podem variar consoante as operadoras.

      5) Configuração simples para as 4 placas de rede do Switch:

      Router(config): interface range FastEthernet 0 - 3
      Router(config-range-if): switchport mode access
      Router(config-range-if): switchport access vlan 1

      6) Configuração do Default-Gateway:

      Router(config): interface Vlan1
      Router(config-if): description GATEWAY LAN
      Router(config-if): ip address 192.168.1.1 255.255.255.0
      Router(config-if): ip nat inside

      7) Configuração do interface Dialer 1 (Interface lógico de ATM0):

      Router(config): interface Dialer1
      Router(config-if): ip address negotiated
      Router(config-if): ip mtu 1492
      Router(config-if): ip nat outside
      Router(config-if): encapsulation ppp
      Router(config-if): dialer pool 1
      Router(config-if): dialer-group 1
      Router(config-if): no cdp enable
      Router(config-if): ppp authentication pap callin
      Router(config-if): ppp pap sent-username oi@oi.com password 0 oi123
      Router(config-if): ppp ipcp dns request

      Nota:

      - O IP de Dialer 1 é recebido dinamicamente por IPCP, daí o comando "ip address negotiated";
      - O MTU é 1492 pois trata-se de uma ligação PPPoE, daí o comando "ip mtu 1492";
      - É este interface que faz o NAT para fora, daí o comando "ip nat outside";
      - O encapsulamento é "PPP", daí o comando "encapsulation ppp";
      - A autenticação na operadora é neste caso "PAP", daí os comandos "ppp pap"
      - O "username" e "password" são facultados pela operadora.

      8) Configuração de rota estática:

      Router(config): ip route 0.0.0.0 0.0.0.0 Dialer1

      9) Configuração de NAT (tipo PAT):

      Router(config): access-list 1 permit 192.168.1.0 0.0.0.255

      Router(config): route-map internet-nat permit 10
      Router(config-route-map): match ip address 1
      Router(config-route-map): match interface Dialer1

      Router(config): ip nat inside source route-map internet-nat interface Dialer1 overload

      10) Configuração de NTP:

      Router(config): ntp master
      Router(config): ntp server 195.220.94.163

      Excluir
    2. Boa tarde a todos.
      estou precisando de ajuda para resolver um problema com relação a un cisco 1921. estou usando um barra 30 valido para comunicar com a internet. porem nao consigo fazer um nat no pool de bloco interno para meu notebook acessar o a net

      segue script
      Building configuration...

      Current configuration : 2960 bytes
      !
      ! Last configuration change at 15:08:46 UTC Wed Sep 21 2016 by linkwap
      ! NVRAM config last updated at 15:08:54 UTC Wed Sep 21 2016 by linkwap
      !
      version 15.0
      service timestamps debug datetime msec
      service timestamps log datetime msec
      service password-encryption
      !
      hostname Router-QS-408
      !
      boot-start-marker
      boot-end-marker
      !
      enable secret 5 $1$xbX6$uWjbZfGsiP60HU9ctURM00
      !
      aaa new-model
      !
      !
      aaa authentication login default group radius+ local
      aaa authentication login SSH-LOGIN local
      aaa authentication login TELNET-LOGIN local
      !
      !
      !
      !
      !
      aaa session-id common
      !
      no ipv6 cef
      ip source-route
      ip cef
      !
      !
      no ip dhcp use vrf connected
      !
      ip dhcp pool Local_Lan
      network 172.16.2.0 255.255.255.0
      default-router 131.100.148.114
      dns-server 131.100.148.114
      lease 7
      !
      !
      ip domain name linkwap.com.br
      ip name-server 131.100.148.2
      ip name-server 131.100.148.3
      multilink bundle-name authenticated
      !
      !
      !
      license udi pid CISCO1905BR/K9 sn FSP1703AAPI
      !
      !
      username linkwap password 7 15050A1C557825213C
      !
      !
      !
      !
      !
      bba-group pppoe global
      virtual-template 1
      !
      !
      interface GigabitEthernet0/0
      description INTERFACE CONEXAO LAN
      no ip address
      duplex auto
      speed auto
      !
      interface GigabitEthernet0/0.100
      encapsulation dot1Q 100
      ip address 131.100.148.114 255.255.255.252
      ip nat inside
      ip rip advertise 4
      ip virtual-reassembly
      ip tcp adjust-mss 1452
      pppoe enable group global
      pppoe-client dial-pool-number 1
      no cdp enable
      !
      interface GigabitEthernet0/1
      description INTERFACE CONEXAO MoDEM ADSL
      no ip address
      duplex auto
      speed auto
      pppoe enable group global
      pppoe-client dial-pool-number 1
      !
      interface Serial0/0/0
      no ip address
      shutdown
      no fair-queue
      clock rate 2000000
      !
      interface Virtual-Template1
      mtu 1492
      ip unnumbered GigabitEthernet0/0.100
      peer default ip address pool pppoepool
      ppp authentication pap chap
      !
      interface Dialer1
      mtu 1492
      no ip address
      ip nat outside
      ip virtual-reassembly
      encapsulation ppp
      dialer pool 1
      dialer-group 1
      ppp authentication pap chap callin
      ppp chap hostname linkwap
      ppp chap password 7 00131216550905031B
      ppp pap sent-username linkwap password 7 131216025A5E0A2F3F
      ppp ipcp dns request accept
      no cdp enable
      !
      ip local pool pppoepool 172.16.2.11 172.16.2.254
      ip forward-protocol nd
      !
      no ip http server
      no ip http secure-server
      !
      ip dns server
      ip nat inside source list 1 interface Dialer1 overload
      ip nat inside source route-map internet-nat interface Dialer1 overload
      ip route 0.0.0.0 0.0.0.0 Dialer1
      ip route 0.0.0.0 0.0.0.0 131.100.148.113
      !
      access-list 1 permit any
      access-list 1 permit 172.16.0.0 0.0.0.255
      dialer-list 1 protocol ip permit
      !
      no cdp run

      route-map internet-nat permit 10
      match ip address 1
      match interface Dialer1
      !
      !
      radius-server host 131.100.148.7 auth-port 1812 acct-port 1813
      radius-server key 7 06110E311D1C071C11
      !
      control-plane
      !
      !
      line con 0
      line aux 0
      line vty 0 4
      login authentication TELNET-LOGIN
      transport input telnet ssh
      !
      scheduler allocate 20000 1000
      end


      Excluir