摘要

本文档定义了在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. Windows10下安装Jupyter

    打开cmd 升级pip3的版本: pip3 install --upgrade pip 安装Jupyter pip3 install jupyter

  2. bio编程示例

    直接干代码,用BIO写一个Server端,然后使用telnet模拟客户端发送数据 import java.io.IOException; import java.io.InputStream; imp ...

  3. LRU management

    LRU management 字典树用来查找值,实现map<string,int>操作 tips:tot必须从一开始QAQ #include<bits/stdc++.h> us ...

  4. 牛客提高D2t1 ACGT

    分析 用map维护一下每种字符串当前有几个即可 代码 #include<iostream> #include<cstdio> #include<cstring> # ...

  5. python中w和wb文件写入的区别!

    一:基本区别:  w:是文本写入 wb:字节写入 windows中换行符是 \r\n w写入文件的时候,遇到 \n 自动替换成  \r\n

  6. 【FICO系列】SAP FICO模块-完工入库后的差异凭证处理

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[FICO系列]SAP FICO模块-完工入库后 ...

  7. 【EWM系列】SAP EWM模块-部分流程图

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[EWM系列]SAP EWM模块-部分流程图   ...

  8. Linux多线程服务器端编程

    目录 Linux多线程服务器端编程 线程安全的对象生命期管理 对象的销毁线程比较难 线程同步精要 借shared_ptr实现写时拷贝(copy-on-write) 多线程服务器的适用场合与常用编程模型 ...

  9. tensorflow学习框架(炼数成金网络版学习记录)

    chapter1 #变量 import tensorflow as tf x = tf.Variable([1,2]) a = tf.constant([3,3]) #增加一个减法op sub = t ...

  10. vsphere虚拟化之 NTP服务的创建(三)

    1.先修改windows 2012的注册表. HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Config\ 设置 Annou ...