实验:

r5:

ip default-gateway 35.1.1.3

ip igmp join-group 224.1.1.1

r2:

ip multicast-routing

int s1

ip pim dense-mode

int s0

ip pim dense-mode

r1:

ip multicast-routing

int s0

ip pim dense-mode

int s1

ip pim dense-mode

int e0

ip pim dense-mode

r6:

ip multicast-routing

int e0

ip pim dense-mode

r3:

ip multicast-routing

int s1

ip pim dense-mode

int s0

ip pim dense-mode

r1:

show ip pim neigbor

show ip pim interface

int e0

ip pim dr-priority 3(设置优先级,默认是1)

r4:

ping 224.1.1.1 repeat 999

r2:

show ip mroute

源树只会产生(s,g)在任何情况下,如果产生一个(s,g)就会立即产生一个(*,g),但是(*,g)不做多播转发。

flags:t 表示源树已经形成了,d表示dense模式

入接口一般都是rpf,先比ad然后met,然后最大ip

r1:

show ip mroute

sparse mode(稀疏模式)

工作原理:

啦流量,有哪些组员就会下来,没有组员多播流量就不会下来,即用到spt和rpt树。

当接收者加入某个组,最后一台路由器就会向rp发送一个join包(*,g),在运行之前需要指定一个rp,rp到达最后一台路由器这颗共享树rpt已经形成了,每台路由器都会生成一个(*,g)的表象,源会像rp发送一个register(s,g)单播包,里面的数据封装的是多播信息,扔向rp,register查看rp是否有该组的组员,有解封装单播包,就会把多播流量发下来,发送一个register-stop让源停止register但播报发送。当下面没有接受者直接发送一个register-stop。

switchover(自动切换):从rpt树自动切换成spt树。

实验:

r2:

int s1

ip pim sparse-mode

int s0

ip pim sparse-mode

r1:

int s0

ip pim sparse-mode

int s1

ip pim sparse-mode

int e0

ip pim sparse-mode

r6:

ip pim sparse-mode

r3:

int s1

ip pim sparse-mode

int s0

ip pim sparse-mode

rp配置方式

1.static静态方式写

2.auto-rp(思科私有)

3.bsr

静态指rp,假设吧r1作为rp,使用回环接口。

r1:

router ospf 110

net 1.1.1.0 0.0.0.255 area 0

ip pim rp-address 1.1.1.1

r2:

ip pim rp-address 1.1.1.1

r3:

ip pim rp-address 1.1.1.1r6:

ip pim rp-address 1.1.1.1

clear ip mroute *

r4:

ping 224.1.1.1 repeat 999

r2:

show ip mroute

在sparse模式只有在接收者的出接口才会显示。

r3:

ip pim spt-threshold 0 infinity(永远不切换为源树一般在最后一台路由器做)

自切换一般发生在最后一台路由器。

dr的作用

1.如果运行的igmpv1.dr充当查询者

2.dm.无作用

3.sm.dr发送join和register报文。

当接收者上面有多台路由器,dr发送join消息到rp

当源后面有两台路由器dr发送多播流量。

auto-rp(动态rp)

(*,g)占用380字节

(s,g)占用220字节

c-rp候选rp:在网络中那台路由器向充当rp可以设置候选rp,可以作为多台路由器

ma映射代理:决定谁作为rp,

工作原理

如果一台路由器配置成rp候选者,就会向224.0.1.39,发送我想当rp,这个组播地址只有ma可以识别。谁的ip地址大水就是rp。然后告知所有路由器发送组224.0.1.40.一旦运行pim都会加入到224.0.1.40.

c-rp和ma都需要备份。

配置:

假设r1作为c-rp,r2作为ma。都使用会换接口。

auto-rp规则

1.组播模式改为spare-dense mode(使用两种模式做备份)

2.c-rp要通告进igp

3.mp要通告进igp,(rpf反向路径校验)

r2:

int s1

ip pim sparse-dense-mode

int s0

ip pim sparse-dense-mode

net 2.2.2.0 0.0.0.255 area0

r1:

int s0

ip pim sparse-dense-mode

int s1

ip pim sparse-dense-mode

int e0

ip pim sparse-dense-mode

r6:

int e0

ip pim sparse-dense-mode

r3:

int s1

ip pim sparse-dense-mode

int s0

ip pim sparse-dense-mode

r1:

ip pim send-rp-annonce lo0 scope 8(配置候选rp,ttl值为8跳)

r2:

ip pim send-rp-discovery lo0 scope 8(配置ma)

int lo0

ip pim sparse-dense-mode(作为rp必须运行pim模式)

show ip pim rp mapping (查看rp映射表)

动态rp优于静态rp

修改

ip pim rp-address 1.1.1.1 override(更改静态优于动态)

r1:

show ip pim rp mapping

r3:

show ip mroute

ipv6

为什么要使用ipv6

1.地址不够用

2.端到端连接

nat破坏了端到端的连接

http:www.potaroo.net

ipv6好处

1.全球可达性

2.聚合

3.多个地址

4.自动配置,dhcpv6,autoconfig.

5.即插即用

6.端到端连接不需要nat

7.重编止

8.简易包头

9.没有广播

10.没有校验位。由于2层,tcp,udp都有校验,物理线路比较可靠,ipv6取消了校验,减少包头。

11.扩展包头

12.流标签。本来是为qos。但现在保留。

穿越:

1.双栈

2.tunnel

3.6to4 tunnel

2^128

路由表较小

ipv6包头和v4比较

地址规划:

2001前23位需要注册,

x:x:x:x:x:x:x:x

冒分16进制

书写规则

2001:0db8:010f:0001:0000:0000:0000:0d0c

2001:db8:10f:1::d0c

2001:0db8:0000:0000:ffff:0000:0000:0d0c

2001:db8::ffff:0:0:d0c

2001:db8:0:0:ffff::d0c

ff02:0:0:0:0:0:0:1=>ff02::1

ff15:0:0:0:0:0:1:c001=>ff15::1:c001

0:0:0:0:0:0:0:1=>::1

0:0:0:0:0:0:0:0=>::(默认路由)

http://[2001:df0:1003::f]:8080/index.html

ipv6使用:

单播地址:unicast

组播地址:multicast

任一播:anycast 一到最近

unicast分类

1agua可以聚合全球单播地址。ipv6公网地址,2000::/3 space

第一个地址:2000:0000

最后一个地址:3fff:ffff

现在一般分配:

2001::/16

2002::16 6to4 tunnel 专用

1link-local addresses(本地链路地址)

fe80::/10开始都是本地链路地址

两台路由器不用于公网,就可以用link-local跑,使用fe80:/10结合mac地址

a.本地ipv6地址

b.路由表的下一跳看到的都是link-local口

3site-local addresses(私网地址)fec0::/10开始都是私网,公网不会路由。

4:未指定地址

::在没有获得ip地址之前未指定地址或默认路由。

5回环口地址

::1

6ipv4兼容性地址

ipv4地址如何映射成ipv6地址

0:0:0:0:0:0:192.0.2.100

=::192.0.2.100

=::c000:0264

把10进制换算成16进制。

eui-64(扩展唯一标示符64)

fe80::/10

找到mac地址第7位进行转换1转换0,0转换1.

组播multcasting

ff00::/8都是组播地址常用组播地址

ff02::1 all nodes

ff02::1 all routers

ff02::9 all rip routers

ff02::1:ffxx:xxxx solicited-node 被请求节点组播地址

ff05::101 all ntp servers

被请求节点组播地址

ff02::1:ffxx:xxxx

只要有一个单薄地址,就可以映射成一个组播地址,单薄地址映射下。一个单薄地址对应一个被请求节点的组播地址。

anycast(任意播)

配置相同的地址,找寻最近的源地址。任意一个单薄地址都可以做成任意播

总结:

unspecified ::/128

loopback ::1/128

multicast ff00/::/8

link-local fe80::/10

site-local unicast fec0::/10

global unicast everything else

ipv6映射到2层

type:0x86dd标示3层为ipv6

ipv4:0x0800

组播地址映射到2层地址组播地址

只取后32位映射下来加上33:33:

实验:

r1:

int e0

ipv6 enable

no sh

r2:

int e0

ipv6 enable

no sh

r1:

show ipv6 int br

ping FE80::CE03:9FF:FED8:10

int e0

ipv6 address 2001::1/64

r2:

int e0

ipv6 address 2001::2/64

ping 2001::1