vpdn enable ! vpdn-group 1 request-dialin ßđây là PPPoE client protocol pppoe ! interface Loopback0 ip address 10.10.1.1 255.255.255.0 ip nat inside ! interface Ethernet0/0 no ip address half-duplex pppoe enable pppoe-client dial-pool-number 1 ßsử dụng dialer 1 để giao tiếp với PPPoE server ! interface Dialer1 mtu 1492 ip address 203.162.3.1 255.255.255.0 ip nat outside encapsulation ppp dialer pool 1 dialer-group 1 ! ip nat inside source list 1 interface Dialer1 overload ip classless ip route 0.0.0.0 0.0.0.0 203.162.3.2 ip http server ! ! access-list 1 permit 10.10.1.0 0.0.0.255 dialer-list 1 protocol ip permit ! end ISP ! hostname ISP ! ! ip subnet-zero ! interface Serial0 ip address 203.20.20.1 255.255.255.252 no ip directed-broadcast no ip mroute-cache no fair-queue clockrate 64000 ! interface Serial1 ip address 203.30.30.1 255.255.255.252 no ip directed-broadcast clockrate 64000 ! ip classless ip route 203.162.0.0 255.255.0.0 203.20.20.2 ! end Thực hiện: PPP over Ethernet là một sự phát triển dựa trên kỹ thuật PPP truyền thống. PPPoE cung cấp khả năng kết nối nhiều host trong mạng qua một thiết bị chuyển mạch vào một DSLAM, để cung cấp một kết nối PPPoE, mỗi phiên PPP phải học địa chỉ Ethernet của remote peer và thiết lập một danh định duy nhất. PPPoE gồm 2 pha: Discovery và Session: · Discovery: khi một router muốn khởi tạo 1 phiên PPPoE, nó phải xác định địa chỉ MAC của thiết bị bên kia (Lát nửa debug sẽ cho thấy điều này) và thiết lập một PPPoE Session-ID. Trong quá trình này, CPE sẽ tìm các DSLAM và chọn một cái để sử dụng. Khi quá trình này chấm dứt, cả CPE và DSLAM đều sẽ có thông tin mà nó sử dụng để xây dựng kết nối PPPoE. Khi PPPsession được thiết lập thì cả CPE và DSLAM sẽ phải phân phát tài nguyên của mình cho một PPP virtual interface. · Session: khi được thiết lập thì dữ liệu sẽ được gửi. Để cấu hình, ta thực hiện các bước sau: PPPoE server(R1): R1(config)#vpdn enable ßbật PPPoE R1(config)#vpdn-group 1 R1(config-vpdn)#accept-dialin ßxác định đây là PPPoE server R1(config-vpdn-acc-in)#protocol pppoe R1(config-vpdn-acc-in)#virtual-template 1 ßsử dụng virtual để giao tiếp với client R1(config-vpdn-acc-in)#exit R1(config)#int lo1 R1(config-if)#ip add 203.162.3.2 255.255.255.255 R1(config-if)#int e0/0 R1(config-if)#pppoe enable ßbật PPPoE trên interface kết nối với client R1(config)#int virtual-template 1 ßtạo virtual template R1(config-if)#ip unnumbered lo1 PPPoE client(R3): R3(config)#vpdn enable R3(config)#vpdn-group 1 R3(config-vpdn)#request-dialin ßxác định PPPoE client R3(config-vpdn-req-in)#protocol pppoe R3(config)#int e0/0 R3(config-if)#pppoe enable ßbật PPPoE trên interface nối với server R3(config-if)#pppoe-client dial-pool-number 1 ßsử dụng dialer 1 để giao tiếp với server R3(config-if)#exit R3(config)#int dialer 1 R3(config-if)#mtu 1492 R3(config-if)#ip add 203.162.3.1 255.255.255.0 R3(config-if)#ip nat outside R3(config-if)#encapsulation ppp R3(config-if)#dialer pool 1 R3(config-if)#dialer-group 1 R3(config-if)#exit R3(config)#dialer-list 1 protocol ip permit Kiểm tra: Ta sử dụng các lệnh show và debug để xem quá trình tạo kết nối và trao đổi dữ liệu như thế nào giữa client và server: R3#sh int Ethernet0/0 is up, line protocol is up Hardware is AmdP2, address is 0005.5e96.2cc0 (bia 0005.5e96.2cc0) MTU 1500 bytes, BW 10000 Kbit, DLY 1000 usec, reliability 192/255, txload 1/255, rxload 1/255 Encapsulation ARPA, loopback not set Keepalive set (10 sec) ARP type: ARPA, ARP Timeout 04:00:00 Last input 00:00:41, output 00:00:05, output hang never Last clearing of "show interface" counters never Input queue: 0/75/0/0 (size/max/drops/flushes); Total output drops: 0 Queueing strategy: fifo Output queue :0/40 (size/max) 5 minute input rate 0 bits/sec, 0 packets/sec 5 minute output rate 0 bits/sec, 0 packets/sec 47 packets input, 4752 bytes, 0 no buffer Received 6 broadcasts, 0 runts, 0 giants, 0 throttles 0 input errors, 0 CRC, 0 frame, 0 overrun, 0 ignored 0 input packets with dribble condition detected 317 packets output, 21918 bytes, 0 underruns 251 output errors, 0 collisions, 1 interface resets 0 babbles, 0 late collision, 0 deferred 251 lost carrier, 0 no carrier 0 output buffer failures, 0 output buffers swapped out Virtual-Access1 is up, line protocol is up Hardware is Virtual Access interface MTU 1492 bytes, BW 56 Kbit, DLY 100000 usec, reliability 255/255, txload 1/255, rxload 1/255 Encapsulation PPP, loopback not set DTR is pulsed for 5 seconds on reset Interface is bound to Di1 (Encapsulation PPP) LCP Open Listen: CDPCP Open: IPCP Last input 00:00:09, output never, output hang never Last clearing of "show interface" counters 00:02:56 Input queue: 0/75/0/0 (size/max/drops/flushes); Total output drops: 0 Queueing strategy: fifo Output queue :0/40 (size/max) 5 minute input rate 0 bits/sec, 0 packets/sec 5 minute output rate 0 bits/sec, 0 packets/sec 39 packets input, 544 bytes, 0 no buffer Received 0 broadcasts, 0 runts, 0 giants, 0 throttles 0 input errors, 0 CRC, 0 frame, 0 overrun, 0 ignored, 0 abort 39 packets output, 616 bytes, 0 underruns 0 output errors, 0 collisions, 0 interface resets 0 output buffer failures, 0 output buffers swapped out 0 carrier transitions Dialer1 is up, line protocol is up (spoofing) Hardware is Unknown Internet address is 203.162.3.1/24 MTU 1492 bytes, BW 56 Kbit, DLY 20000 usec, reliability 255/255, txload 1/255, rxload 1/255 Encapsulation PPP, loopback not set DTR is pulsed for 1 seconds on reset Interface is bound to Vi1 Last input never, output never, output hang never Last clearing of "show interface" counters 00:34:56 Input queue: 0/75/0/0 (size/max/drops/flushes); Total output drops: 0 Queueing strategy: weighted fair Output queue: 0/1000/64/0 (size/max total/threshold/drops) Conversations 0/0/16 (active/max active/max total) Reserved Conversations 0/0 (allocated/max allocated) Available Bandwidth 42 kilobits/sec 5 minute input rate 0 bits/sec, 0 packets/sec 5 minute output rate 0 bits/sec, 0 packets/sec 36 packets input, 504 bytes 36 packets output, 576 bytes Bound to: Virtual-Access1 is up, line protocol is up Hardware is Virtual Access interface MTU 1492 bytes, BW 56 Kbit, DLY 100000 usec, reliability 255/255, txload 1/255, rxload 1/255 Encapsulation PPP, loopback not set DTR is pulsed for 5 seconds on reset Interface is bound to Di1 (Encapsulation PPP) LCP Open Listen: CDPCP Open: IPCP Last input 00:00:04, output never, output hang never Last clearing of "show interface" counters 00:03:01 Input queue: 0/75/0/0 (size/max/drops/flushes); Total output drops: 0 Queueing strategy: fifo Output queue :0/40 (size/max) 5 minute input rate 0 bits/sec, 0 packets/sec 5 minute output rate 0 bits/sec, 0 packets/sec 41 packets input, 572 bytes, 0 no buffer Received 0 broadcasts, 0 runts, 0 giants, 0 throttles . ßbật PPPoE R1(config)#vpdn-group 1 R1(config-vpdn)#accept-dialin ßxác định đây là PPPoE server R1(config-vpdn-acc-in)#protocol pppoe R1(config-vpdn-acc-in)#virtual-template 1 ßsử dụng virtual. client R3(config-vpdn-req-in)#protocol pppoe R3(config)#int e0/0 R3(config-if)#pppoe enable ßbật PPPoE trên interface nối với server R3(config-if)#pppoe-client dial-pool-number 1 ßsử dụng. để giao tiếp với client R1(config-vpdn-acc-in)#exit R1(config)#int lo1 R1(config-if)#ip add 203.162.3.2 255.255.255.255 R1(config-if)#int e0/0 R1(config-if)#pppoe enable ßbật PPPoE trên