如何使用 netplan 在单个接口上的多个 VLAN 上使用 DHCP?

如何使用 netplan 在单个接口上的多个 VLAN 上使用 DHCP?

在我当前的网络拓扑中,我有多个 VLAN - 每个 VLAN 都有自己的路由:

VLAN 10:
  DHCP:    10.0.10.10-10.0.10.255
  Subnet:  255.255.255.0
  Gateway: 10.0.10.1

VLAN 11
  DHCP:    10.0.11.10-10.0.11.255
  Subnet:  255.255.255.0
  Gateway: 10.0.11.1

我自动配置的机器只有一个网卡。这就是为什么我想避免使用静态配置,而是依靠 DHCP 来提供“正确”的设置。

我的 yaml 如下所示:

network:
  version: 2
  renderer: networkd
  ethernets:
    enp5s0:
      # Designate the connection as "critical to the system", meaning that special care will be taken by systemd-networkd 
      # to not release the IP from DHCP when it the daemon is restarted.
      critical: yes
      dhcp4: no

  vlans:
    cloud:
      id: 10
      link: enp5s0
      dhcp4: yes
      dhcp4-overrides:
        route-metric: 200

    office:
      id: 11
      link: enp5s0
      dhcp4: yes
      dhcp4-overrides:
        route-metric: 100

问题是它只获取cloudVLAN 的 DHCP 设置,但对此不做任何office操作。我是不是漏掉了什么?

注意:
这不是重复的单个接口上有多个 VLAN 的 netplan - 需要帮助

答案1

请记住,您的 DHCP 服务器不知道您的 VLAN 配置。

它正在获取 enp5s0 的 MAC 地址的 IP 请求,然后是另一个请求,很可能与前一个请求相同。查看 DHCP 日志,它应该可以证实这一点。或者使用 tcpdump 调试流量。

相关内容