单网口双VLAN上网(Ubuntu20.04,netplan)

最近在帮忙配置一个神奇的网络环境,其中需要服务器主机发送带有VLAN ID的数据包才能被交换机识别转发,并且需要一个网口使用两个VLAN上网(单网口双VLAN),这就需要使用虚拟网口了。官方文档和网上资源比较零碎,经过整合后配置如下

network:
  ethernets:
    eno1:
      dhcp4: true
      dhcp6: false
      dhcp4-overrides:
        use-routes: false
    ens3:
      dhcp4: false
      dhcp6: false
  vlans:
    vlan211:
      id: 211
      link: ens3
      dhcp4: false
      addresses:
        - 192.168.31.250/24
      gateway4: 192.168.31.1
      nameservers:
          addresses: [119.29.29.29, 223.5.5.5]
    vlan212:
      id: 212
      link: ens3
      dhcp4: true
      dhcp4-overrides:
        use-routes: false

特别说明

关键词 vlan211 vlan212 需要手动添加虚拟网口并标记VLAN ID

sudo ip link add link ens3 name vlan211 type vlan id 211
sudo ip link add link ens3 name vlan212 type vlan id 212 

该配置用来控制系统不使用该网口作为上网的默认网关,在多网口的环境下控制上网流量的方向。(实践发现不设置上网网关后,入站方向的流量也被屏蔽)

dhcp4-overrides:
        use-routes: false

You may also like...

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注