基本概念
IPv6是与IPv4完全独立的协议! 这意味着IPv6的配置和操作与IPv4的配置和操作完全无关。 它们将像IPv4和IPX或AppleTalk一样独立运行。
IPv6地址格式
- IPv6地址包含128位,并以16位的8组写入,例如abcd:0000:1111:2222:1357:2468:5555:6789。 每个组包含4个十六进制数字(即16位)。
- 许多IPv6地址包含许多连续的0000组,例如abcd:0000:0000:0000:0000:0000:0000:0000:1234。 为了节省输入,此类连续的零组可以写为::,因此上面的地址可以写为abcd :: 1234。 或者从相反的方向进行工作,因为IPv6地址中有八个组,但是只给出了两个组,所以::代表六个都为零的组。
不同类型的IPv6地址
- 与IPv4一样,也可以从ISP获取全局IPv6地址。 它们以2 ????:或3 ???:开始。
- 就像私有IPv4地址(如192.168。?。?)一样,在IPv6中,我们使用fec?:,fed?:,fee?:,fef?:。 这些称为站点本地地址,因为它们只能在站点上私下使用。 但是,IPv6在fd ??范围内提供了更好的替代方法,称为“唯一本地地址”。 要使用它,您将首先生成一个随机数并将其附加到fd上以形成一个随机前缀,这样它就不会与其他专用网络使用的任何其他范围发生冲突(实际上)。
- 就像IPv4中的127.0.0.1一样,IPv6中也有:: 1(即0000:0000:0000:0000:0000:0000:0000:0001)。
- 就像169.254。?。? 在IPv4中,在IPv6中有fe8?:,fe9?:,fea?:,feb ?:地址范围。 它们之所以称为链接本地地址,是因为它们只能在链接(广播域,如交换机或一组互连的交换机)上私下使用。 它们主要用于网络发现(请参阅下文)。
子网掩码和子网划分
IPv6中的主机位至少占用较低的64位(甚至更多),因此网络掩码始终为<= 64位。 唯一的例外是环回地址:: 1,其网络掩码为/ 128。 对于LAN,通常只需使用/ 64作为网络掩码。 ISP可以为站点分配一个/ 64,/ 56或/ 48地址块。
分配
- 无状态自动配置。 在IPv6中,可以让主机配置其自己的地址,方法是从路由器获取前缀(网络ID),然后使用其自己的MAC地址作为主机ID(具有某种编码)。 因此,您只需要使用静态IPv6地址配置路由器(这样它就知道前缀)。 主机如何找到路由器? 主机可以使用多播来发现路由器(IPv6网络发现协议的一部分),因此您无需手动配置主机的默认网关。 这个想法是它可以自动检测正在运行的路由器并根据需要执行故障转移。
- DHCPv6。 这非常类似于用于IPv4的DHCP。 如果需要集中控制,请使用它。
域名解析
- 域名地址。 您使用AAAA记录将域名映射到IPv6地址。 您可以使用IPv4或IPv6来查询服务器,并且在两种情况下都可以返回A或AAAA记录(取决于要搜索的记录类型)。
- NS,MX等。您可以在其中放置一个域名,名称服务器将尝试查找其A和AAAA记录,并在附加部分中将其返回。
- PTR。 反向域名的格式为abcd?。?。?。?。?。?。?。IPv6.arpa,其中a,b,c和d代表一个十六进制数字(地址类似于??:??: ??:...:dc:ba)。
与应用程序协议绑定
大多数更高级别的协议已经同时支持IPv4和IPv6(例如ping / ping6,OpenSSH,Chrome,Firefox,Apache)。 要直接使用IPv6地址,您可能需要在浏览器中将其放在方括号中,例如http:// [2001 :: 1],否则冒号看起来就像启动端口一样。 如果您使用域名并且已经有AAAA记录,则操作系统会将IPv4和IPv6都返回给应用程序。 根据该标准,实际的全局IPv6列在(首选)公共IPv4之前。
在Linux中,您可以像在interfaces文件中配置IPv4一样配置静态IPv6地址:
iface eth0 inet6 static
address 2001::1
netmask 64
可以使用以下方法检查IPv6地址:
# ip addr show
参考:来自JCG合作伙伴 Kent Tong的基本IPv6概念,来自Kent Tong在信息技术博客上的个人想法 。
翻译自: https://www.javacodegeeks.com/2013/03/basic-ipv6-concepts.html