Cisco路由器PPPoE及NAT

这是一篇以前博客丢失的文档,现在把它找回来。

搬家了,扯来宽带之后发现一个蛋疼的问题:路由器丢了……丢了就丢了吧,还有个Cisco 1720,配1E模块一个,能凑合用。

f0/0口连接入户线,f0/1口连接内网,PPPoE认证方式为pap。(chap见文末)

 

1.拨号配置

用户名为danteng,密码为:password

ROUTER-DTLAB#configure terminal

Enter configuration commands, one per line.  End with CNTL/Z.

ROUTER-DTLAB(config)#vpdn enable   //启用vpdn

ROUTER-DTLAB(config)#dialer-list 1 protocol ip permit //制定拨号策略1,允许ip协议通过,此策略要用到配置虚拟拨号口中。

 

家用宽带使用的是PAP方式认证

ROUTER-DTLAB(config)#int dialer 1   //配置虚拟拨号口1

ROUTER-DTLAB(config-if)#description DantengLab    //备注信息,可选

ROUTER-DTLAB(config-if)#ip address negotiated    //IP地址自协商

ROUTER-DTLAB(config-if)#encapsulation ppp      //封装协议ppp

ROUTER-DTLAB(config-if)#dialer pool 1    //建立一个拨号池,一个池对应一个拨号,需要将所使用的物理接口f0/0绑定至此

ROUTER-DTLAB(config-if)#dialer-group 1   //对应前面配置的“dialer-list 1”

ROUTER-DTLAB(config-if)#ppp pap sent-username danteng password 0 password  //PAP认证

ROUTER-DTLAB(config-if)#ppp ipcp dns request       //自动获取DNS

ROUTER-DTLAB(config-if)#exit

 

2.接口配置

f0/1口连接内网,配置如下:

ROUTER-DTLAB(config)#int f0/1

ROUTER-DTLAB(config-if)#ip address 172.16.1.1 255.255.255.0   //配置内网接口地址,同时也确定DHCP网段地址

 

3.NAT(严格说是PNAT)

ROUTER-DTLAB#config terminal

Enter configuration commands, one per line.  End with CNTL/Z.

ROUTER-DTLAB(config)#access-list 10 permit 172.16.1.0 0.0.0.255

//建立访问控制列表10,指定NAT范围

 

ROUTER-DTLAB(config)#ip nat inside source list 10 interface dialer 1 overload

//允许ACL10范围的地址映射到dialer1口的地址,因为是PNAT,需加overload

 

ROUTER-DTLAB(config)#int f0/1

ROUTER-DTLAB(config-if)#ip nat inside    //设置NAT转换,内接口

ROUTER-DTLAB(config-if)#exit

ROUTER-DTLAB(config)#int dialer 1

ROUTER-DTLAB(config-if)#ip nat outside   //设置NAT转换,外接口

ROUTER-DTLAB(config-if)#exit

 

 

4.路由设置

由于内网网段只有一个,即f0/1口所在网段,由于是直连网络,所以不用再配置到内网的路由

只需配置到因特网的默认路由即可:

ROUTER-DTLAB(config)#ip route 0.0.0.0 0.0.0.0 dialer 1

 

5.DNS代理

在前面的拨号设置中,已经设置向PPPoE服务器端请求DNS地址了,现在只是让路由器充当DNS Server地址,它只起迭代查询和递归查询的作用。

ROUTER-DTLAB#config terminal

Enter configuration commands, one per line.  End with CNTL/Z.

ROUTER-DTLAB(config)#ip dns server   //启用DNS,前提是已经拨号获得了DNS地址

 

6.DHCP

Router-DTLAB#config terminal

Enter configuration commands, one per line.  End with CNTL/Z.

ROUTER-DTLAB(config)#ip dhcp excluded-address 172.16.1.1    //排除172.16.1.1,不过似乎可以不配,默认不分配接口地址

ROUTER-DTLAB(config)#ip dhcp pool Local    //建立一个DHCP分配池

ROUTER-DTLAB(dhcp-config)#network 172.16.1.0 255.255.255.0   //指定网段信息

ROUTER-DTLAB(dhcp-config)#default-Router-DTLAB 172.16.11.1    //指定网关地址

ROUTER-DTLAB(dhcp-config)#dns-server 172.16.1.1      //指定DNS服务器地址

ROUTER-DTLAB(dhcp-config)#exit

 

检查一下拨号是否成功:

ROUTER-DTLAB#show int dialer 1   //查看虚拟拨号口1的状态

Dialer1 is up, line protocol is up (spoofing)

Hardware is Unknown

Description: DantengLab

Internet address is 1.2.3.4/32    //拨号获得的IP地址

MTU 1492 bytes, BW 56 Kbit/sec, DLY 20000 usec,

reliability 255/255, txload 1/255, rxload 1/255

Encapsulation PPP, loopback not set

……

 

Bound to:

Virtual-Access2 is up, line protocol is up

Hardware is Virtual Access interface

MTU 1492 bytes, BW 56 Kbit/sec, DLY 20000 usec,

reliability 255/255, txload 36/255, rxload 22/255

Encapsulation PPP, LCP Open

Listen: CDPCP

Open: IPCP

PPPoE vaccess, cloned from Dialer1

……

5 minute input rate 5000 bits/sec, 8 packets/sec

5 minute output rate 8000 bits/sec, 7 packets/sec

……

拨没拨上,看有没有获取到IP。

 

 

下面是CHAP认证方式的配置

 

 

ROUTER-DTLAB(config)#int dialer 1   //配置虚拟拨号口1

ROUTER-DTLAB(config-if)#description DantengLab    //备注信息,可选

ROUTER-DTLAB(config-if)#ip address negotiated    //自动获取IP地址

ROUTER-DTLAB(config-if)#encapsulation ppp      //封装协议ppp

ROUTER-DTLAB(config-if)#dialer pool 1    //建立一个拨号池,一个池对应一个拨号,需要将所使用的物理接口f0/0绑定至此

ROUTER-DTLAB(config-if)#dialer-group 1   //对应前面配置的“dialer-list 1”

ROUTER-DTLAB(config-if)#ppp chap hostname danteng    //配置用户名

ROUTER-DTLAB (config-if)#ppp chap password 0 password   //配置密码,以明文显示

ROUTER-DTLAB(config-if)#no shut

ROUTER-DTLAB(config-if)#exit

本文链接地址: https://danteng.org/cisco-pppoe-nat/