我有以下配置:
network:
version: 2
renderer: networkd
ethernets:
enp2s0:
dhcp4: yes
dhcp4-overrides:
hostname: f42252vm
gateway4: 192.168.110.1
routes:
- to: 192.168.110.0/24
via: 192.168.110.1
metric: 100
- to: 192.168.109.0/24
via: 192.168.110.1
metric: 100
- to: 192.168.111.0/24
via: 192.168.110.1
metric: 100
routing-policy:
- from: 192.168.110.8/24
dhcp6: yes
dhcp6-overrides:
hostname: f42252vm
wakeonlan: true
enp3s0:
dhcp4: yes
dhcp4-overrides:
hostname: f42252v8
use-routes: false
gateway4: 192.168.108.1
routes:
- to: 0.0.0.0/0
via: 192.168.108.1
metric: 200
- to: 192.168.108.0/24
via: 192.168.108.1
metric: 200
routing-policy:
- from: 192.168.108.0/24
dhcp6: yes
dhcp6-overrides:
hostname: f42252v8
use-routes: false
bridges: {}
vlans:
enp2s0.110:
id: 110
link: enp2s0
enp3s0.108:
id: 108
link: enp3s0
问题:从“192.168.110.8/24”发送内容到互联网时,它被标记为 vlan 108 - 这是错误的。但是当将路由“0.0.0.0/0”添加到接口 enp2s0 时,我在整个网络上遇到了一些错误,并且 vlan 110 ist 完全被阻止。
如何为 enp2s0 添加到 Internet 的路由(或某种类型的默认路由),然后将使用 vlan 110 - 希望如此?
谢谢
问候卡尔 - 海因茨
根据您的配置,您没有在任何一个 vlan 上配置任何 IP 地址。因此,它们根本不用于路由流量。您应该简单地从配置中删除它,因为您似乎在交换机上使用带有 vlan 标记的端口,这些端口在交换机内部处理 vlan 并对主机透明。
此外,您在两个接口上都声明了一个网关,这几乎总是不正确的。这相当于一个
to: 0.0.0.0/0
路由,没有路由策略。此外,我看到您在两个接口上都启用了 dhcp 和静态寻址。这有时可能是正确的,但不知道 DHCP 服务器正在发送什么信息(特别是在 enp2s0 上,您没有声明
use-routes: false
,不可能知道它如何与您的静态声明的网络配置交互。我建议以下配置可能更接近您正在寻找的内容:
我假设您希望始终通过 enp2s0 路由到 192.168.109/24 和 192.168.111/24 的流量,因此我
table: 253
为这些分配了一个路由策略,这应该会导致在default
路由表中处理对这些子网的请求(根据/etc/iproute2/rt_tables
)。我目前已更改为:
这似乎有效。至少它不再在我的路由器上创建任何错误消息。
我将更深入地研究带有表格的设置 - 到目前为止我还不知道,仍然不知道这是做什么的。我会检查文档。
感谢帮助。