今天,来带大家了解一下DHCPv6的基础配置,以下面的拓扑为例,该拓扑由三台路由器组成,其中把 R2 模拟为PC,R3为Server。
首先我们先配置基础的ipv6地址: R1: R1(config)#int lo0 R1(config-if)#ipv6 address 1::1/128 R1(config-if)#ex R1(config)#int f0/0 R1(config-if)#ipv6 address 2001:12:1:1::1/64 R1(config-if)#no shutdown R1(config)#int f1/0 R1(config-if)#no shutdown R1(config-if)#ipv6 address 2001:13:1:1::1/64 R2: R2(config)#int lo0 R2(config-if)#ipv6 address 2::2/128 R2(config-if)#ex R2(config)#int f0/0 R2(config-if)#ipv6 address 2001:12:1:1::2/64 R2(config-if)#no shutdown R3: R3(config)#int lo0 R3(config-if)#ipv6 address 3::3/128 R3(config-if)#ex R3(config)#int f1/0 R3(config-if)#no shutdown //因为用来做server所以不配地址 R3(config-if)#exit R3(config)#ipv6 route ::/0 f1/0 FE80::C801:10FF:FE63:1C //写静态能够ping通R1
接下来我们看一下连通信:
然后,我们在R3上开启DHCP服务: R3: R3(config)#service dhcp R3(config)#ipv6 dhcp pool R2 //名字为 R2 R3(config-dhcpv6)#address prefix 2001:12:1::/64 //只能指定前缀 R3(config-dhcpv6)#dns-server 2001:12:1:1::1 //DNS server 假设 R1 是 R3(config-dhcpv6)#domain-name cisco.com R3(config-dhcpv6)#exit R3(config)#int f1/0 R3(config-if)#ipv6 dhcp server R2 //地址池和接口做一个关联,通过接收到solicit报文之 后通过R2地址池做一个回应。 再在R1上做如下配置: R1: R1(config)#int f0/0 R1(config-if)#shutdown //先关闭 R1(config-if)#no ipv6 nd ra suppress //开启 RA 发送 R1(config-if)#ipv6 nd managed-config-flag //指定 M 位置位 下面我们来看一下f0/0口的配置:
R1: R1(config)#int f0/0 R1(config-if)#no shutdown R2: R2(config)#int f0/0 R2(config-if)#ipv6 address dhcp //通过 DHCP来拿地址 R2(config-if)#ipv6 enable PC //在IPv6中通过DHCP拿地址,必须保证PC的接口拥有link=local地址enable之后才能够自动发送 之后我们在R2上来看一下接口的ipv6配置:
当前已经拿到了一个地址,这明显不是通过 EUI64 计算得到的,拿到的地址应该是和link-local地址后 24 位不一样的,明显已经失败了,需要在 R1 的 0/0 接口做中继。 R1: R1(config)#int f0/0 R1(config-if)#ipv6 dhcp relay destination 2001:13:1:1::3 relay给R3的f0/0接口 R2: R2(config)#int f0/0 R2(config-if)#shutdown R2(config-if)#no ipv6 address dhcp R2(config-if)#ipv6 address dhcp R2(config-if)#no shutdown 接下来我们来检查一下R2的f0/0接口是否有获得IP v6地址。
我们可以看到,地址已经获取到了,并且该地址是随机的。最后我们在R3上看一下该地址是不是R3给R2发送的这个地址。
我们可以看到,在R3的记录中,确实给R2发送这一个地址,并且跟R2获取到的地址一模一样。
扫码领取相关资料
|