在SystemD中创建VLan接口,创建额外的接口。这是什么?

在SystemD中创建VLan接口,创建额外的接口。这是什么?

为了替代我的 ISP 路由器,我决定使用 ArchLinux 构建一个自定义路由器并将其直接连接到 ONT。我的 ISP 通过将服务分为不同的 VLAN 来应用 QoS。 Internet 服务由 VLAN 12 提供。

因此,我使用以下配置创建了 VLAN 接口

文件 -> /etc/systemd/network/20-enp0s20f0.network

[Match]
Name=enp0s20f0

[Link]
RequiredForOnline=yes

[Network]
DHCP=no
VLAN=enp0s20f0.12
LinkLocalAddressing=no

文件 -> /etc/systemd/network/20-enp0s20f0.12.netdev

[NetDev]
Name=enp0s20f0.12
Kind=vlan

[VLAN]
Id=12

文件 -> /etc/systemd/network/20-enp0s20f0.12.network

[Match]
Name=enp0s20f0.12

[Link]
RequiredForOnline=yes

[Network]
DHCP=ipv4
LinkLocalAddressing=no

[DHCPv4]
SendHostname=no
UseNTP=no
UseDNS=no

重新启动 systemd-networkd 后,将创建 vlan 接口,但还会创建第二个接口。

enp0s20f0.12: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet xxx.yyy.zzz.iii  netmask 255.255.255.0  broadcast xxx.yyy.zzz.iii
        ether 31:91:8f:92:59:20  txqueuelen 1000  (Ethernet)
        RX packets 78540  bytes 525492249 (501.1 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 98901  bytes 15388297 (14.6 MiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

enp0s20f0.12-if: flags=195<UP,BROADCAST,RUNNING,NOARP>  mtu 1500
        inet6 fe80::ac8a:12ff:fe46:ad6d  prefixlen 64  scopeid 0x20<link>
        ether ae:8a:12:46:ad:6d  txqueuelen 32  (Ethernet)
        RX packets 78511  bytes 526426271 (502.0 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 78511  bytes 526426271 (502.0 MiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

显然,第二个接口接收数据,但我的系统没有使用它。谁能给我解释一下这个额外的接口是什么?谢谢你!

答案1

第二个接口为您的 ipv6 接口提取所需的链路本地地址。欲了解更多信息,请参阅:https://en.wikipedia.org/wiki/Link-local_address#IPv6_address

相关内容