摘要

本文档定义了在WWW浏览器的URL中执行的文本IPv6地址的格式。在包括Microsoft的IE,Mozilla和Lynx等几个已经被广泛安装使用的浏览器的IPv6版本中,这种格式已经被使用。并且这种格式也将被应用于服务定位协议的IPv6版本中。
本文档包括了一个对在RFC2396[URL]被定义的统一资源标识符中的一般性语法的更新。为了这个预定目标,本文档明确定义了IPv6地址的语法规则并允许在统一资源标识符中使用“[”和“]”符号。

1.介绍

在[ARCH]中定义的文本IPv6地址的原文表述不能直接和URL的表述方法相适应。尽管两者都使用符号“:”和“.”作为分隔符。本文档定义了在WWW浏览器的URL中执行的文本IPv6地址的格式。其目的就是为了得到一种格式,能够很容易的使用剪切和粘贴操作以使文本地址编辑操作达到最少。
在包括Microsoft的IE,Mozilla和Lynx等几个已经被广泛安装使用的浏览器的IPv6版本中,这种格式已经被使用。并且这种格式也将被应用于服务定位协议的IPv6版本中。

1.1要求

如果本文档中任何地方出现关键词MUST,MUSTNOT,REQUIRED,SHALL,SHALLNOT,SHOULD,SHOULDNOT,RECOMMENDED,MAY,以及OPTIONAL,都将和它们在[KEYWORDS]中的定义一致。
WWW浏览器‘SHOULD’(应当)在URL中使用本文档定义的IPv6文本格式。其它一些使用URL的应用和协议‘MAY’(可以)用这种格式。

2.URL语法中的IPv6地址文本格式

为了在一个URL中使用一文本IPv6地址,文本地址应该用符号“[”和“]”来封闭。例如下列文本IPv6地址:
FEDC:BA98:7654:3210:FEDC:BA98:7654:3210
1080:0:0:0:8:800:200C:4171
3ffe:2a00:100:7031::1
1080::8:800:200C:417A
::192.9.5.5
::FFFF:129.144.52.38
2010:836B:4179::836B:4179
就应该写做下列URL示例:
http://[FEDC:BA98:7654:3210:FEDC:BA98:7654:3210]:80/index.html
http://[1080:0:0:0:8:800:200C:417A]/index.html
http://[3ffe:2a00:100:7031::1]
http://[1080::8:800:200C:417A]/foo
http://[::192.9.5.5]/ipng
http://[::FFFF:129.144.52.38]:80/index.html
http://[2010:836B:4179::836B:4179]

3.对RFC2396的修改

本文档包括了一个对在RFC2396[URL]被定义的统一资源标识符中的一般性语法的更新。为了这个预定目标,本文档明确定义了IPv6地址的语法规则并允许在统一资源标识符中使用“[”和“]”符号。

对RFC2396中语法的一些改变如下:
(1)在‘主机(host)’末端增加一节IPv6项:
主机=主机名|IPv4地址|IPv6参考地址
ipv6参考地址="["IPv地址"]"
这里的IPv6地址和RFC2373[ARCH]中定义的一致。
(2)由于RFC2373中“IPv4地址”的定义更清晰的说明了IPv4地址是由每节最多三个
十进制数组成的,所以用这个定义来替换RFC2396中的定义。
(3)在’设定‘符号组中增加“[”和“]”:
设定(reserved)=";"|"/"|"?"|":"|"@"|"&"|"="|"+"|
"$"|","|"["|"]"
并且把它们从’非合理‘符号组中去掉:
非合理(unwise)="{"|"}"|"|"|"\"|"^"|"`"

4.安全考虑

这种在URL中使用文本IPv6地址的表述方法的应用不会引起任何新的已知安全问题。

5.IANA的考虑

ipv6地址在URL中的表达方式,如何在URL地址中包含ipv6地址的更多相关文章

  1. 中文字体在CSS中的表达方式

    在写一个网站的样式表的时候,都会不可避免地用到一些中文字体,比如说微软雅黑.黑体等,除非是做英文站,或者说你乐意整站都用浏览器默认的字体,那我也算服了U.在 CSS 中写入中文字体的方法一般采用 fo ...

  2. c# 中的 protected internal 如何在 vc.net 中实现

    c# 中有 protected internal 的复合访问属性, 保证assembly内部访问,以及外部的派生类访问 vc.net 中无法直接写上 protected internal, 其对应的写 ...

  3. 你好,C++(9)坐216路公交车去买3.5元一斤的西红柿——C++中如何表达各种数值数据 3.3 数值数据类型

    3.3  数值数据类型 从每天早上睁开眼睛的那一刻开始,我们几乎每时每刻都在与数字打交道:从闹钟上的6点30分,到上班坐的216路公共汽车:从新闻中说的房价跌到了100元每平米到回家买菜时的西红柿3. ...

  4. dubbo初认知(dubbo和springCloud关系,在微服务架构中的作用等)(持续更新中)

    一:dubbo是什么? dobbuo是阿里开源的一个高性能优秀的服务框架, 可通过高性能的 RPC 实现服务的输出和输入功能,使得应用可以和 高性能的rpc实现输入和输出的功能,可以了  Spring ...

  5. PHP中$_SERVER获取当前页面的完整URL地址

    PHP中$_SERVER获取当前页面的完整URL地址,其实很简单,主要是通过$_SERVER超全局变量来实现的. 具体PHP中$_SERVER获取当前页面的完整URL地址如下. #测试网址:     ...

  6. python中字符串的几种表达方式(用什么方式表示字符串)

    说明: 今天在学习python的基础的内容,学习在python中如何操作字符串,在此记录下. 主要是python中字符串的几种表达,表示方式. python的几种表达方式 1 使用单引号扩起来字符串 ...

  7. python flask学习第2天 URL中两种方式传参

    新创建项目   自己写个url映射到自定义的视图函数 在url中传递参数 app.py from flask import Flask app = Flask(__name__) @app.route ...

  8. python中字符串的四种表达方式

    今天在学习python的基础的内容,学习在python中如何操作字符串,在此记录下. 主要是python中字符串的几种表达,表示方式. python的几种表达方式 1 使用单引号扩起来字符串 > ...

  9. easyui datagrid 禁止选中行 EF的增删改查(转载) C# 获取用户IP地址(转载) MVC EF 执行SQL语句(转载) 在EF中执行SQL语句(转载) EF中使用SQL语句或存储过程 .net MVC使用Session验证用户登录 PowerDesigner 参照完整性约束(转载)

    easyui datagrid 禁止选中行   没有找到可以直接禁止的属性,但是找到两个间接禁止的方式. 方式一: //onClickRow: function (rowIndex, rowData) ...

随机推荐

  1. man arch

    ARCH(1)   Linux Programmer?. Manual/Linux程序员手册       ARCH(1) NAME/名称       arch - print machine arch ...

  2. ubuntu安装pandas

    1 安装依赖包 setuptools Numpy: 1.7.1 or higher python-dateutil: 1.5 or higher pytz: Needed for time zone ...

  3. RMQ Terminology

    原创转载请注明出处:https://www.cnblogs.com/agilestyle/p/11784644.html RMQ模型架构 RMQ Terminology Message 消息,消息是不 ...

  4. tensorboard可视化(先写一点点)

    在tensorboard上显示运行图: import tensorflow as tf a = tf.constant(10,name="a") b = tf.constant(9 ...

  5. ckeditor富文本编辑器的使用和图片上传,复制粘贴图片上传

    自动导入Word图片,或者粘贴Word内容时自动上传所有的图片,并且最终保留Word样式,这应该是Web编辑器里面最基本的一个需求功能了.一般情况下我们将Word内容粘贴到Web编辑器(富文本编辑器) ...

  6. luogu P4103 [HEOI2014]大工程 虚树 + 树形 DP

    Description 国家有一个大工程,要给一个非常大的交通网络里建一些新的通道.  我们这个国家位置非常特殊,可以看成是一个单位边权的树,城市位于顶点上.  在 2 个国家 a,b 之间建一条新通 ...

  7. 牛客提高D1t2 最小生成链

    分析 我们发现可以把题目转化为:有一个序列a,问它的排列中相邻两个值异或的最大值的最小值 我们发现序列的构成一定是前几位全是一样的 从某一位开始左面全是0右面全是1 所以只要找到一种方案是的交界两个值 ...

  8. Jenkins使用五:创建部署任务

    创建部署任务 选择运行节点 选择使用shell # 如果是持续进程,这里最好加一个kill进程的命令 判断如果/root/production目录存在,就删除if [ -d /root/product ...

  9. Delphi Indy IDHttp 403 forbidden

    http://hbk777.blog.163.com/blog/static/6058086200681594333361/ Delphi Indy IDHttp 403 forbidden 2006 ...

  10. 从有状态应用(Session)到无状态应用(JWT),以及 SSO 和 OAuth2

    不管用哪种方式认证用户,都可能被中间人攻击窃取 SessionID 或 Token,从而发生 CSRF 攻击.解决方式就是全站 HTTPS.现在 Let's Encrypt 已经支持免费的通配符 HT ...