我意识到这可能是一个非常基本的问题,但我似乎找不到对我有意义的答案。我有为 IPv4 配置网络的经验,但 IPv6 完全不同。我正在努力解决这个问题。
我正在尝试将我的笔记本电脑配置为使用 IPv6。我将不得不在工作中开始处理 IPv6,所以我想我会在本地玩。我有几个关于地址配置的问题。
首先,基于此站点,我的 Linux 内核支持并针对 IPv6 进行了配置。
$ [ -f /proc/net/if_inet6 ] && echo 'IPv6 ready system!' || echo 'No IPv6 support found! Compile the kernel!!'
IPv6 ready system!
$ lsmod | grep -qw ipv6 && echo "IPv6 kernel driver loaded and configured." || echo "IPv6 not configured and/or driver loaded on the system."
IPv6 kernel driver loaded and configured.
Run Code Online (Sandbox Code Playgroud)
我可以使用ping6 -wlan0 [ip6addr]
. 我当前的 IP 是一个链接本地地址,据我所知,我需要一个全局范围来访问外部世界(如 ipv6.google.com)。
我也意识到我的无线路由器需要针对 IPv6 进行配置,但这不是这个问题的一部分。
Debian、Ubuntu 和其他 Linux 发行版已为多个版本准备好 IPv6。
radvd
通知中的数据自动配置。ip -6 addr show
。起始地址fe80:
是链接本地地址。如果您有一个以 开头的地址2xxx:
,那么您就有了一个全球 IPv6 地址。 radvd
为从您的 IPv4 地址派生您的 IPv6 网络块。如果您没有从您的 ISP 获得您的地址,那么您的地址将在您的 ISP 准备好 IPv6 时更改。使用多个 IPv6 地址和一些路由规则可以顺利完成此转换。
小智 5
手动配置 IPv6 地址与手动配置 IPv4 地址基本相同。将这样的内容添加到/etc/network/interfaces
:
iface eth0 inet6 static
address 2001:db8:aa:bb::1a2b
netmask 64
gateway 2001:db8:aa:bb::1
Run Code Online (Sandbox Code Playgroud)
如果您不想手动配置 IPv6,那么它会容易得多:只需确保您有一个具有 IPv6 连接的路由器,可以发送路由器广告 (RA) 消息。如果它们允许自动配置,它们包含您的系统配置自身所需的一切。或者他们会告诉您的系统联系有状态的 DHCPv6 服务器等。它们可以包含许多选项,但正如您所指出的,这不是您问题的一部分。
如果您希望 IPv6 连接到互联网,那么您可以从您的 ISP 获得 IPv6 地址。如果您只想在没有互联网连接的情况下在本地使用 IPv6,那么您可以使用ULA(唯一本地地址)。您可以按照 RFC 中的说明自行生成这些地址,但您也可以使用 [SixXS ULA 工具[( https://www.sixxs.net/tools/grh/ula/ ) 或Unique Local IPv6 等工具发电机。