IER-lab-pppoe
Objetivo
Criar uma infraestrutura de acesso baseada em ADSL e PPPoE
Introdução
PPPoE (PPP over Ethernet) é um protocolo criado para encapsular quadros PPP dentro de quadros Ethernet. Seu uso mais comum ocorre em redes de acesso aDSL, em que se cria uma infraestrutura como mostrado na ilustração abaixo.
Em enlaces PPPoE há dois tipos de equipamentos:
- Host: o computador ou equipamento que inicia o enlace.
- Concentrador (AC): o equipamento que recebe pedidos de estabelecimento de enlace
Com PPPoE podem-se criar redes de acesso baseada em tecnologia de rede local Ethernet, porém com autenticação, controle de uso de banda e contabilização de equipamentos de usuários. Essa foi uma motivação para a criação desse protocolo para uso por ISP (Internet Service Providers, ou Provedores de Acesso Internet).
Roteiro
Hoje será criada uma infraestrutura inspirada em uma rede de acesso ADSL. Ela é composta de um AC (concentrador de acesso), um roteador ADSL, e uma rede local com computadores do assinante do serviço, como mostrado na ilustração abaixo:
O concentrador de acesso (AC) deve operar também como roteador e NAT. Assim os computadores nas redes de acesso poderão acessar a Internet, mas ficarão mascarados pelo AC. Note que devido ao uso do NAT os computadores em uma rede de acesso poderão acessar a rede externa, mas o contrário não será possível.
- Defina um computador para ser o AC. Nesse computador execute uma máquina virtual Linux, configurando-a com duas interfaces de rede em modo bridge. A interface eth0 deve estar associada à rede local do laboratório, e a interface eth1 servirá para comunicação com o DSLAM.
- No AC crie o arquivo /etc/ppp/pppoe-server-options com o seguinte conteúdo:
require-chap noauth login lcp-echo-interval 10 lcp-echo-failure 2 ms-dns 200.135.37.65 netmask 255.255.255.0 noipdefault debug kdebug 4
- Crie no AC o arquivo /etc/ppp/chap-secrets com o seguinte conteúdo:
usuario1 * senha1 usuario2 * senha2 usuarioN * senhaN
- Crie o arquivo /etc/ppp/faixa-ip no AC com o seguinte conteúdo:
172.18.10.10-50
- Ative o servidor PPPoE no AC:
pppoe-server -C IER -L 172.18.10.175 -p /etc/ppp/faixa-ip -I eth1
- Conecte um roteador ADSL ao DSLAM (com fiação telefônica). Conecte sua interface LAN a um PC, e nesse PC execute:
sudo dhclient eth0
- Use um navegador web para acessar a [interface de configuração do roteador ADSL. Siga o menu Setup->WAN, e configure seu link com estes parãmetros:
- Port: 0
- VPI: 8
- VCI: 35
- Modo PPPoE
- Username e password: usuario1 e senha1
- Habilite NAT
- Salve a configuração do roteador, e reinicie-o. Veja se ele conseguiu estabelecer um enlace com DSLAM (observe os leds de diagnóstico em seu painel).
- Tente acessar a Internet a partir de seu computador. Se funcionou, experimente medir qual a vazão máxima que se pode obter para downstream e upstream:
- Downstream: execute este comando:
netperf -f k -H 192.168.1.1
- Upstream: execute este comando:
dd if=/dev/urandom bs=1440 count=2048 | nc 192.168.1.1 1500
- Downstream: execute este comando:
- Agora configure seu roteador ADSL em modo bridge. Isto torna necessário que seu computador execute um cliente PPPoE:
- Crie o arquivo /etc/ppp/peers/ier com este conteúdo:
pty "/usr/sbin/pppoe -I eth0 -T 80 -m 1452 -C IER" noipdefault usepeerdns defaultroute hide-password lcp-echo-interval 20 lcp-echo-failure 3 connect /bin/true noauth persist mtu 1492 noaccomp user usuario1 default-asyncmap
- Crie nesses computadores o arquivo /etc/ppp/chap-secrets com este conteúdo:
usuario1 * senha1
- Ative o enlace PPPoE, executando:
sudo pppd call ier
- Observe se foi criada a interface ppp0. Confira o IP que ela está usando, o tipo de encapsulamento e a MTU. Confira também as interfaces ppp no AC, observando as mesmas informações.
- Tente usar a rede a partir do computador. Primeiro faça ping no AC, e em seguida tente acessar a rede externa.
- Crie o arquivo /etc/ppp/peers/ier com este conteúdo:
- Quando o computador é o cliente PPPoE, é possível monitorar as trocas de mensagens ocorridas durante o estabelecimento do enlace. Isso pode ser feito da seguinte forma:
- Desative o enlace PPPoE com este comando:
killall pppd
- Execute o wireshark: ... e inicie a captura na interface eth0.
sudo wireshark
- Reative o enlace PPPoE:
sudo pppd call ier
- Visualiza no wireshark as mensagens trocadas entre seu computador e o AC.
- Desative o enlace PPPoE com este comando: