本帖最后由 小乔 于 2022-12-12 23:14 编辑
设计了一个小实验,模拟小区宽带拨号,普通用户的大部分特性都做了,诸如 DHCP & PPPoE & telnet 等,以及 OSPF 单区域实验。还是挺好玩的,我自己设计自己做了一会儿,简单是简单,但是特性很多,注意点很多。我还在里面留了两个小坑,不注意的话就不满足需求了,所以还挺好玩儿的。喜欢的朋友拿去玩儿一把,所有的 GNS3 都能做。 实验拓扑:
实验需求:- Q1.1:PC 通过 R1 DHCP 获得地址,路由器模拟 PC 关闭路由功能;
- Q1.2:R1 上配置 DHCP Server(网关地址不允许分配),PC 能够 telnet 上 R1:USERNAME = ciscopassword = Cisco123enable password = Enable
- Q1.3:PC 可以访问 8.8.8.8,但是任何情况下都不允许访问 61.1.1.1,不允许在 PC 及 R1 上做任何路由过滤策略;
- Q2.1:R1 与 server 建立 OSPF 邻居(OSPF AS 1234,Area 0,Router-id = LOOPBACK0),并宣告 loopback 地址,不允许宣告 192 网段;
- Q2.2:R1 PPPoE 拨号上 server:PPPOE name = ciscopppoe passsword = CISCO
实验过程:Q1.1:PC 通过 R1 DHCP 获得地址,路由器模拟 PC 关闭路由功能: PC>en // 特权模式
PC#conf t // 配置模式
PC(config)#int e0/0 // 进入接口E0/0
PC(config-if)#ip add dhcp // 以DHCP的方式获取地址
PC(config-if)#no sh // 接口保持开启状态
PC(config)#no ip routing // 关闭路由功能
PC(config)#end // 退出配置
PC#WR // 保存Q1.2:R1 上配置 DHCP Server(网关地址不允许分配),PC 能够 telnet 上 R1: PC 能够 telnet R1,同时给出了 username 和 password 就需要配置本地用户名和密码了。 另外 DHCP 分配地址,不允许把网关的地址分配出去,就要在 DHCP POOL 里面去除掉网关地址,虽然理论上来说 DHCP 协议是不会把已经分配的地址二次分配的,但是在某些情况下(网络延时等)这种情况还是会发生的,所以根据需求,就要在 DHCP POOL 里做出一个排除列表。 R1 基础配置: interface Loopback0
ip address 1.1.1.1 255.255.255.255
interface Ethernet0/0
ip address 192.168.1.1 255.255.255.0
no shutdownR1 telnet 部分: R1#conf tR1(config)#username cisco password Cisco // 配置本地用户密码
R1(config)#enable secret level 15 Enable // 配置 enable 的 15 级权限及密码
R1(config)#R1(config)#line vty 0 4 // 进入 VTP 接
口R1(config-line)#login local // 调用本地用户
R1(config-line)#transport input all // 允许所有入向流量测试:等 PC 拿到地址后就可以 telnet R1 了,输出结果如下图所示。 
PC telnet R1R1 DHCP 部分: ip dhcp pool PC // 建 DHCP POOL,命名为 PC
network 192.168.1.0 255.255.255.0 // PC POOL 池内使用的地址范围
default-router 192.168.1.1 // 这些地址默认网关
exit // 退出
ip dhcp excluded-address 192.168.1.1 // 在 DHCP 池中除去网关地址测试:PC 可以得到地址,同时可以 ping 通网关,输出结果如下图所示。 
PC 可以得到地址,同时可以 ping 通网关Q1.3:PC 可以访问 8.8.8.8,但是任何情况下都不允许访问 61.1.1.1,不允许在 PC 及 R1 上做任何路由过滤策略: 留在最后做。 Q2.1:R1 与 server 建立 OSPF 邻居(OSPF AS 1234,Area 0,Router-id = LOOPBACK0),并宣告 loopback 地址,不允许宣告 192 网段: R1 与 server 建立 OSPF 邻居,这里要注意的是并不是 E 0/1 接口之间进行邻居的建立,因为是 R1 进行 PPPoE 拨号的话,就是在 dialer 口下做,也可以直接宣告。 R1 上 PPPoE client 端配置: R1#interface Dialer0 // 进 dialer0 口
ip address negotiated // 协商方式获得地址
ip mtu 1492 // MTU 1492
encapsulation ppp // 接口封装
PPPdialer pool 1 // 接口建立
dialer pool 1ppp chap hostname cisco // PPP 用户名
ppp chap password 0 CISCO // PPP 密码
interface Ethernet0/1 // 进入 E0/1 口
pppoe enable // 启用 PPPoE
pppoe-client dial-pool-number 1 // PPPoE 调用 dialer pool 1这里因为所有的接口都要从 E 0/1 出去,而 E 0/1 又是调用 dialer 口的 PPP 配置,所以要加条默认到 dialer 口上: R1#ip route 0.0.0.0 0.0.0.0 Dialer0要求 PC 能够访问 8.8.8.8,但是不允许宣告 192 网段,这就需要做 NAT,严格来说是 PAT(Rikcy 注:在锐捷的文档里,你会发现锐捷把 PAT 称作 NAPT)。 PAT 配置: R1#access-list 10 permit any // 建立 ACL列表 10,匹配所有流量
ip nat inside source list 10 interface Dialer0 overload// PAT 所有符合 ACL 列表 10 的从 dialer0 口出去
interface Ethernet0/0 // 进入 E 0/0
ip nat inside // PAT 进方向
interface Dialer0 // 进入 dialer0 口
ip nat outside // PAT 出方向建立并宣告 OSPF: R1:router ospf 1234 // 启用 ospf AS 号 1234
router-id 1.1.1.1 // RouterID 为 loopback0
network 1.1.1.1 0.0.0.0 area 0 // 宣告 loopback0 到 area 0 区域
network 100.100.100.0 0.0.0.255 area 0 // 宣告 100 网段到 area 0 区域Q2.2:R1 PPPoE 拨号上 server: 建立 OSPF 邻居,建立 PPPoE 的 server 端。 server 端的基础配置: interface Loopback0
ip address 2.2.2.2 255.255.255.255
interface Loopback1
ip address 8.8.8.8 255.255.255.255
interface Loopback2
ip address 61.1.1.1 255.255.255.255
interface Ethernet0/1
ip address 100.100.100.1 255.255.255.0server 端的 OSPF 配置: Server#router ospf 1234
router-id 2.2.2.2
network 2.2.2.2 0.0.0.0
area 0
network 100.100.100.0 0.0.0.255 area 0server 端的 PPPoE 配置: 首先建立一个地址池,建立地址池的方式有很多,我这次用的是 DHCP 分配的方式,所以先建立 DHCP 池。 server 端的 PPPoE 配置如下: ip dhcp pool R1
network 100.100.100.0 255.255.255.0
default-router 100.100.100.1
ip dhcp excluded-address 100.100.100.1在 server 端建立 PPPoE 拨号的用户名和密码: username cisco password CISCOserver 端的 PPPoE 配置: bba-group pppoe global // BBA 协议 建立 PPPOE 组
virtual-template 1 // 调用接口
virtual-template 1interface Ethernet0/1pppoe enable group global // 启用 PPPOE,并调用 PPPOE 组
interface Virtual-Template1 // 进入 virtual-template 1 接口
ip unnumbered Ethernet0/1 // 接口匹配 E 0/1 接口
peer default ip address dhcp-pool R1 // 接口默认调用 DHCP-pool 池 1 内的地址
ppp authentication chap // 启用 PPP 认证测试:建立成功后,R1 的 E 0/1 口能够拿到 server 分配的地址,同时两边建立 OSPF 邻居,R1 上的输出结果如下图所示。 
在 R1 上看 OSPF 邻居关系此时 PC 上也能 ping 通 8.8.8.8 。 Q1.3:PC 可以访问 8.8.8.8,但是任何情况下都不允许访问 61.1.1.1,不允许在 PC 及 R1 上做任何路由过滤策略: 路由过滤,由于不允许在 PC 和 R1 上做过滤策略,那么需要在 server 上做。 Server#access-list 100 deny ip any host 61.1.1.1// 建立 ACL 列表 100,deny 掉所有地址去往主机 61.1.1.1 的流量
access-list 100 permit ip any any // 放行其他流量将此策略挂载到接口 Virtual-Template1 下: interface Virtual-Template1
ip access-group 100 in测试:PC 可以 ping 通 8.8.8.8,但是 ping 不通 61.1.1.1,输出结果如下图所示。 
PC 可以 ping 通 8.8.8.8,但是 ping 不通 61.1.1.1
|