IPv6进阶
IPV6报文部分字段介绍
1、没有校验和字段:
优点:当TTL减少时,不需要重新处理,相对于IPV4能减少处理的时间;
缺点:必须在上层包含校验和
2、下一个报文:
可指向扩展报文;(大部分节点不处理和查看大部分扩展选项)
常见的扩展报文:1、逐跳选项报文(0) 2、目标选项报头(60) 3、路由选择报头(43) 4、分段报头 5、身份验证报头(AH-51)6、封装安全有效负载(ESP-50)7、上层报头(6/17)
MTU发现过程
源设备将使用发现过程来确定应在会话中使用的最佳MTU,IPV6源设备尝试以上层指定的长度发送分组;若源设备收到ICMPV6消息“分组太大”它将使用更小的MTU重传MTU分组反复执行此过程,设备将设置会话的MTU,设备每5min钟执行一次MTU发现,IPV6上层会接收到IPV6层发送的有关MTU调整的通知,如果上层由于某种原因不接受,IPV6则对大报文进行分段机制。
Ipv6编址:
1、单播:除多播外的地址均为单播地址 全局单播地址:2000::/3
链路本地单播地址:fe80::/10 + EUI-64 (邻居发现、路由器发现、路由协议、自动地址配置)
2、多播:FF00::/8 (4位范围:节点、链路、场点、组织、全局)多播分组中没有TTL字段
FF02:1 链路上的所有节点
FF02:2 链路上的所有路由器
FF02:9 链路上的所有RIP协议路由器
FF02::1:FFXX:XXXX 链路上的请求节点多播 (FFXX:XXXX是节点的单播或者任播地址的最右边24位)被用于邻居请求消息,类似于v4的ARP。
3、任意播:同一个单播地址被分配给多个接口时,此单播地址将变为任意播地址
IPV6单播地址配置
1、链路本地地址:
静态:link-local
动态:EUI-64接口ID(默认)
2、全局单播地址:
静态:
ipv6 unnumbered
ipv6地址
动态:
无状态自动配置
DHCPv6
接口配置静态v6地址后的邻居发现事件过程:
1、添加配置的接口到地址;
2、发送NS,用于确定地址在链路上是唯一的;
3、收到DAD:重复地址检测消息;
4、发送一个邻居通告NA,包含配置的地址(当修改接口地址时都会发送NA);
5、收到RA:路由通告(ND进程发送的而非路由协议通告的)。只有具有v6路由功能的路由器才会发送RA(MTU、地址前缀)。
IPV6地址的无状态自动配置:
1、ICMP(133 RS)
源地址 = ::
目的地址=表示所有路由器的多播地址
查询=请发送RA
2、ICMP(134 RA)
源地址 = 路由器的链路本地地址
目的地址=表示所有节点的多播地址
数据=选项、前缀、寿命、MTU等
有效寿命和首选寿命:(默认30天和7天)
首选寿命是指在7天内,使用前缀自动配置的地址是首选的,自动配置的地址在首选寿命到期前都可使用,若在首选寿命到期前一直没有收到RA,该地址作废。新会话不是使用作废的地址,
但当前的会话会一直使用作废的地址,直到有效寿命到期后,将删除作废的地址,并断开会话;
只要地址不出故障,主机将全局地址保留30天,若接口出现故障,分配的前缀将丢失。
过程:
1、邻居请求;(NS / NA)
2、无状态自动配置;
3、重复地址检测(NS/NA/DAD);
配置ipv6 unicast-routing会生成RA消息,不生成RS消息
配置ipv6 address auto-config不配置ipv6 unicast-routing会生成RS消息,而不生成RA消息
IPV6地址汇总:
与v4地址汇总方式一致(取相同位,去不同位),先将其装换为二进制,再转换为十六进制的表示形式。
从IPV4过渡到IPV6:
双栈;(同时连接到V4和v6网络)占用设备资源,开销高,故障排除、监控工作负责;
隧道化:
手工隧道:ipv6ip
GRE隧道:gre ipv4隧道、gre ipv6隧道
6to4隧道:ipv6ip 6to4 隧道地址中嵌套v4地址,2001::/16+32位v4地址 如:2001::c0a8:6301::/48。
IPV4兼容隧道:ipv6ip auto-tunnel 隧道地址为::+v4地址,如::: 172.16.101.1,配置时指定接口即可,会自动生成ipv6地址;
ISATAP:ipv6ip auto-tunnel isatap,隧道地址为:单播前缀64+0000:5E5F:+32位用16进制表示的32位地址。如:12:12::/64 eui-64会自动生成isatap地址。(指定tunnel source 接口)
转换:NAT-PT
注意:
debug命令,可能会耗用大量的路由器资源,调试信息输出优先级高于其他网络数据流,因此过多的debug输出可能会严重降低路由器性能。
ping 本地链路地址需要加出接口
IPv6进阶的更多相关文章
- 冰冻三尺非一日之寒--Django框架【进阶篇】
第十九章 Django进阶 到目前为止,当我们的程序涉及到数据库相关操作时,我们一般都会这么搞: 创建数据库,设计表结构和字段 使用 MySQLdb 来连接数据库,并编写数据访问层代码 业务逻辑层去 ...
- django 进阶篇
models(模型) 创建数据库,设计表结构和字段 使用 MySQLdb 来连接数据库,并编写数据访问层代码 业务逻辑层去调用数据访问层执行数据库操作 import MySQLdb def GetLi ...
- 进击的Python【第七章】:Python的高级应用(四)面向对象编程进阶
Python的高级应用(三)面向对象编程进阶 本章学习要点: 面向对象高级语法部分 静态方法.类方法.属性方法 类的特殊方法 反射 异常处理 Socket开发基础 一.面向对象高级语法部分 静态方法 ...
- python Django 进阶篇
Python的WEB框架有Django.Tornado.Flask 等多种,Django相较与其他WEB框架其优势为:大而全,框架本身集成了ORM.模型绑定.模板引擎.缓存.Session等诸多功能. ...
- Python-Django进阶
1. 路由系统 浏览器会自动给url后加一个"/" django会自动给路由的正则表达式前面加一个"/" django会给任何不带"/"结尾 ...
- Python之路【第十七篇】Django进阶篇
规范 确立规范的好处: 代码可读性高 方便代码的定位极其查找 为以后代码扩容带来便利 场景: 在多个APP的场景下,单个app的URL函数功能较多的时候,我们可以通过以下方法来解决. 把Views写成 ...
- Django【进阶篇 】
Model 到目前为止,当我们的程序涉及到数据库相关操作时,我们一般都会这么搞: 创建数据库,设计表结构和字段 使用 MySQLdb 来连接数据库,并编写数据访问层代码 业务逻辑层去调用数据访问层执行 ...
- Django web 进阶
.路由系统 .模板引擎 simple_tag .Form .Ajax请求 -简单数据 -复杂数据 内容: -作业 model xss.csrf(安全方面的内容) 分页(公共的模块) 内容复习和今日内容 ...
- Python之路【第十七篇】:Django【进阶篇 】
Python之路[第十七篇]:Django[进阶篇 ] Model 到目前为止,当我们的程序涉及到数据库相关操作时,我们一般都会这么搞: 创建数据库,设计表结构和字段 使用 MySQLdb 来连接 ...
随机推荐
- ListView控件--2016年12月9日
ListView属性 ListView 名称 说明 AccessKey 重写 WebControl.AccessKey 属性. 不支持将此属性设置 ListView 控件.(覆盖 WebContr ...
- PHP基础
$a=10; //$b="hello";//$a=(string)$a; 强制转换A的类型为字符串 //settype($a,"string");//var_d ...
- Ternary Expression Parser
Given a string representing arbitrarily nested ternary expressions, calculate the result of the expr ...
- Python之mmap内存映射模块(大文本处理)说明
背景: 通常在UNIX下面处理文本文件的方法是sed.awk等shell命令,对于处理大文件受CPU,IO等因素影响,对服务器也有一定的压力.关于sed的说明可以看了解sed的工作原理,本文将介绍通过 ...
- CFURLCreateStringByAddingPercentEscapes与CFURLCreateStringByReplacingPercentEscapesUsingEncoding
iOS中访问HTTP资源需要对URL进行Encode才能正确访问. OC中有方法: - (NSString *)stringByAddingPercentEscapesUsingEncoding:(N ...
- PHP多条件查询 (租房查询)
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- Shell $? $* $@ 等含义
$0 ------>脚本名 $1 ------>传入的第一个参数值 $? ------>脚本执行的结果.成功==0,不成功==非0 $* ------>所有参数的内容 $@ - ...
- vue2.0 组件之间的数据传递
组件间的数据传递// 父组件<template><div class="order"><dialog-addpro v-on:closedialog= ...
- PHP预定义接口之 ArrayAccess
最近这段时间回家过年了,博客也没有更新,感觉少学习了好多东西,也错失了好多的学习机会,就像大家在春节抢红包时常说的一句话:一不留神错过了好几亿.废话少说,这篇博客给大家说说关于PHP预定义接口中常用到 ...
- js立即调用的函数表达式
1.多种实现 // 下面2个括弧()都会立即执行 (function () { /* code */ } ()); // 推荐使用这个 (function () { /* code */ })(); ...