IPV6的邻居发现协议

邻居发现协议(neighbor discover protocol NDP)
我们知道IPV6支持即插即用的特性,而这一特性的实现就是通过NDP协议的以下功能实现的。
1.路由器发现——当一个节点链接到一个 ipv6链路上时,它能够发现本地的路由器,而不借助DHCP协议。
2.前缀发现——当一个节点链接到一个IPV6链路上时,它能够发现分配给该链路的前缀。
3.参数发现——节点能够发现它所连链路的参数
4.地址自动配置——节点能够确定自己的完整地址
5.地址解析——节点不需要ARP协议就可以发现本链路上的其他节点的数据链路层地址。
6.下一跳确定——一条链路上的节点能够确定到达目的节点的下一跳链路层节点,或本地的目的节点,或到达目的节点的路由器。
7.邻居不可达检测——节点能够检测到链路上的邻居何时不再可达。
8.地址冲突检测——节点能够检测到它所使用的地址是否被链路上的其它节点占用。
9.重定向——对于非链接的目的节点,路由器能通过重定向消息通知主机,该链路上存在比自己更好的下一跳路由器。

NDP消息通常应该在链路本地范围内收发,因此,封装NDP消息的数据包也始终使用IPV6链路本地地址,或者链路本地范围内的多播地址。为了更进一层的安全性,承载所有NDP消息的IPV6数据包的条数限制都设定为255.如果所收到的数据包的条数限制小于255,就证明该数据包至少经过一台路由器(外来的),因此会丢弃该数据包,这样阻止NDP受到来自不与本地链路相连的源节点的攻击或欺骗。
NDP为了完成某些功能,它使用了ICMPV6协议来交换一些必要的消息,来看着5个新的ICMPV6消息:
1.路由器通告(router advertisement RA)消息
RA消息由路由器发送,用来通告路由器的存在和链路细节参数(链路前缀、链路MTU、跳数限制等)。这些消息可周期发送,也可用来答复路由器请求(作用不同,目的地址不同)
2.路由器请求(router solicitation RS)消息
RS消息由主机发起,请求路由器发送RA
3.邻居请求(neighbor solicitation NS)消息
NS由节点主机发起,用来请求另一台主机的链路层地址,也用来实现地址冲突检测和邻居不可达检测的功能。
4.邻居通告(neighbor advertisement NA)消息
节点主机发送一个NA消息用来响应NS消息。如果一个节点的链路层地址改变了,那么该节点将会主动发送一个NA消息来通告新的链路层地址。
5.重定向(Redirect)消息
路由器通告主机去适合网关,该网关是链路上的另一台路由器。

有状态地址配置:通过DHCPV6服务器获取地址。
无状态地址配置:主机将自己从RA中获取的链路前缀和自己已经确定的接口ID组合构成IPV6地址。
私有地址:利用为随机数字算法生成的接口ID(正常一天一边)
MAC-to-Eui64 :
第一步:在MAC地址中间插入0xFFFE
第二步:将整个地址的第7位置反
通过以上两个步骤形成EUI64接口ID

如何知道邻居是双向可达的?
收到一个传输层消息的远程响应消息或收到一个响应请求消息的路由器公告消息(就是互动的消息)

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值