首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >IPv6 6-系统子网d

IPv6 6-系统子网d
EN

Unix & Linux用户
提问于 2018-12-04 17:34:35
回答 1查看 3K关注 0票数 3

我的新ISP给了我一个带有IPv6前缀的公共/56地址,可以在以下地方播放:

代码语言:javascript
运行
复制
2001:b:c:d:5:6:7:8/56

我想创建两个子网,由这样的linux服务器来划分:

代码语言:javascript
运行
复制
internet - fritzbox - server - pc

但我需要了解如何将前缀传播到内部子网。到目前为止,我配置了服务器的外部接口,以接受路由器广告,并从Fritz!Box请求一个IPv6前缀:

/etc/systemd/network/eth1.网络

代码语言:javascript
运行
复制
[Match]
Name=eth1

[Network]
DHCP=ipv6
IPv6AcceptRA=yes
IPv6PrefixDelegation=dhcpv6
IPForward=yes

在systemctl重新启动之后,externel接口获得一个地址:

代码语言:javascript
运行
复制
ip -6 addr
  ...
  inet6 2001:b:e:f:1:2:3:4/64 scope global noprefixroute dynamic

到目前为止这是对的吗?同样令人困惑的是:互联网连接的前缀和界面的前缀在下半部分有所不同:

代码语言:javascript
运行
复制
internet: 2001:b:c:d::
server:   2001:b:e:f::

现在主要的问题是:如何配置内部接口?它能从Fritz!框中请求另一个前缀吗?

/etc/systemd/network/eth0.网络

代码语言:javascript
运行
复制
[Match]
Name=eth0

[Network]
???

我的服务器正在运行Debian,系统d 239来自(因为稳定中的232还不支持前缀委托)。我删除了ifupdown包,因为我的目标是学习如何只使用来解决这个问题。

EN

回答 1

Unix & Linux用户

回答已采纳

发布于 2020-08-28 00:38:54

在过去的几天里,我已经找到了一个类似的配置。

在本文撰写之时,在中有一个bug,它不会在发出前缀的接口上放置一个委托前缀地址。然而,接口确实给网段上的设备提供前缀。

您的外部接口的IPv6地址不匹配前缀是由于您的ISP的网络配置。我的ISP给出了两个不同的DHCPv6地址块,其中一个与指定的前缀相同,另一个不是。当DHCPv6租约到期时,它会随机改变。

我从Archlinux Wiki获得的配置--首先配置“外部”接口(连接到Fritz!框的接口)

代码语言:javascript
运行
复制
/etc/systemd/network/EXTERNAL.network
[Match]
...
[Network]
DHCP=yes
IPForward=yes
IPv6AcceptRA=yes
IPv6DuplicateAddressDetection=1
IPv6PrivacyExtensions=kernel

您已经拥有的eth1代码看起来是正确的(假设eth1是您的外部接口)。在我的配置中,我在接口上同时启用了DHCPv4和DHCPv6客户机。

现在,您的内部接口应该配置如下:

代码语言:javascript
运行
复制
/etc/systemd/network/INTERNAL.network
[Match]
...
[Network]
IPv6PrefixDelegation=dhcpv6
IPv6DuplicateAddressDetection=1
IPv6PrivacyExtensions=no
LinkLocalAddressing=ipv6

[IPv6PrefixDelegation]
RouterLifetimeSec=3600

RouterLifetimeSec很重要,因为它将接口配置为提供从DHCPv6接口接收到的前缀。

票数 1
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/485956

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档