EUI-64的其它相关
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了EUI-64的其它相关相关的知识,希望对你有一定的参考价值。
参考技术A 要获取用于 IPv6单播地址的 64 位接口标识,EUI-64 地址中的 U/L 位将进行求反(如果是 1,则被设置为 0;如果是 0,则被设置为 1)。下图显示了全局管理的单播EUI-64 地址的转换过程。
要从 IEEE 802 地址获取 IPv6 接口标识,必须先将 IEEE 802 地址映射到 EUI-64 地址,然后对 U/L 位求反。下图显示了全局管理的单播IEEE 802 地址的转换过程。 以太网接口的接口标识(Interface Identifier)是基于EUI-64(64-bit extended unique identifier)标识的。而该网卡的EUI-64标识是由网卡内建的48位IEEE802地址扩展的。下面先介绍EUI-64的构造方法。
以太网地址的OUI(Organizationally Unique Identifier)部分(即前3个字节)构成EUI-64的company_id部分(即前3字节),EUI的第四、第五个字节是固定的16进制值FFFE。以太网地址的最后3个字节构成EUI-64的最后3个字节。
接口标识是通过将EUI-64的“全球/本地”(Universal/Local)位取反得到的。该位是EUI-64的第一个字节的次低位。由于网卡的内建地址是全球统一管理分配的,因此得到的标识也是全球唯一的。IEEE802或者EUI-64地址的该位为0,而全球唯一的IPv6接口标识的该位为1。
例如一块网卡的MAC地址为:34-56-78-9A-BC-DE,那么其对应的接口标识应该为:36-56-78-FF-FE-9A-BC-DE。
对于手工设置的或者软件设置的网卡地址,不应该用来构造接口标识。如果一定要使用这类地址来构造接口标识,那么应该在“U/L”位上反映出该地址是否全球唯一。
用来对一块以太网卡进行无状态自动配置的IPv6地址前缀(IPv6 address prefix)的长度必须是64位。 以太网卡的IPv6 Link-Local Address是通过该接口的接口标识来构造的。
构造方法是:
原始MAC:00-e0-4c-00-32-1a
一、先将MAC一分为二,中间填入0xff 0xfe,得到EUI-64
00-e0-4c 00-32-1a
00-e0-4c-ff-fe-00-32-1a
二、将U/L位取反,最后得到IPV6接口标识符.
0000 0000-e0-4c-ff-fe-00-32-1a
0000 0010-e0-4c-ff-fe-00-32-1a
02-e0-4c-ff-fe-00-32-1a
其中,U/L求反就是将第七位的二进制改写,如果原值是1就改写成0,如果原值是0就改写成1.
EUI-64已经得出,现在写成Link-local地址
三、FE80:0:0:0:02e0:4cFF:fe00:321a
压缩后得到FE80::02e0:4cFF:fe00:321a 广州简艺网络科技有限公司的英文简称为EUI,是一家专业从事信息安全的科技公司
Redis 键(key)相关的命令及其它命令的查看地址
Redis 键(key)
Redis 键命令用于管理 redis 的键。
语法
Redis 键命令的基本语法如下:
redis 127.0.0.1:6379> COMMAND KEY_NAME
实例:
在以上实例中 DEL 是一个命令, runoobkey 是一个键。 如果键被删除成功,命令执行后输出 (integer) 1,否则将输出 (integer) 0
下面给大家列举几个常用的跟键相关的命令:
Redis DEL 命令
Redis DEL 命令用于删除已存在的键。不存在的 key 会被忽略。
语法
redis DEL 命令基本语法如下:
redis 127.0.0.1:6379> DEL KEY_NAME
可用版本
>= 1.0.0
返回值
被删除 key 的数量。
实例
首先,我们在 redis 中创建一个 key 并设置值。
redis 127.0.0.1:6379> SET w3ckey redis
OK
现在我们删除已创建的 key。
redis 127.0.0.1:6379> DEL w3ckey
(integer) 1
Redis EXISTS 命令
Redis EXISTS 命令用于检查给定 key 是否存在。
语法
redis EXISTS 命令基本语法如下:
redis 127.0.0.1:6379> EXISTS KEY_NAME
可用版本
>= 1.0.0
返回值
若 key 存在返回 1 ,否则返回 0 。
实例
redis 127.0.0.1:6379> EXISTS runoob-new-key (integer) 0
现在我们创建一个名为 runoob-new-key 的键并赋值,再使用 EXISTS 命令。
redis 127.0.0.1:6379> set runoob-new-key newkey OK redis 127.0.0.1:6379> EXISTS runoob-new-key (integer) 1 redis 127.0.0.1:6379>
Redis Type 命令
Redis Type 命令用于返回 key 所储存的值的类型。
语法
redis Renamenx 命令基本语法如下:
redis 127.0.0.1:6379> TYPE KEY_NAME
可用版本
>= 1.0.0
返回值
返回 key 的数据类型,数据类型有:
- none (key不存在)
- string (字符串)
- list (列表)
- set (集合)
- zset (有序集)
- hash (哈希表)
实例
# 字符串
redis> SET weather "sunny"
OK
redis> TYPE weather
string
# 列表
redis> LPUSH book_list "programming in scala"
(integer) 1
redis> TYPE book_list
list
# 集合
redis> SADD pat "dog"
(integer) 1
redis> TYPE pat
set
更多的命令大家可以去网上查看相关的命令,我常用的地址有:
http://redis.readthedocs.io/en/2.4/index.html#
http://doc.redisfans.com/#
以上是关于EUI-64的其它相关的主要内容,如果未能解决你的问题,请参考以下文章