You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Netplan配置VLAN后,VLAN接口与物理接口IP地址相同的原因咨询

Netplan配置VLAN后,VLAN接口与物理接口IP地址相同的原因咨询

嗨Greg,我仔细看了你遇到的问题——配置完VLAN60后,它居然和eth0用了同一个IP,这确实挺让人困惑的。咱们来拆解下可能的原因和解决办法:

首先,最可能的问题出在Netplan配置文件的缩进上。Netplan依赖YAML格式,这种格式对空格缩进的要求特别严格,哪怕多一个或少一个空格,都会导致配置不生效。我看了你贴出来的/etc/netplan/50-cloud-init.yaml内容,里面的层级缩进明显有问题,比如vlans下面的vlan60、id、addresses这些选项没有正确嵌套,导致Netplan根本没读取到你给vlan60设置的192.168.60.20/24地址,反而默认继承了eth0的IP。

修复步骤:

  1. 修正配置文件的缩进:把你的配置改成下面这样(注意每一层都用2个空格缩进,不要用Tab键):
network:
  version: 2
  renderer: networkd
  ethernets:
    eth0:
      match:
        macaddress: 48:b0:2d:2e:63:b8
      critical: yes
      addresses: [192.168.200.202/24 ]
      nameservers:
        addresses: [192.168.200.5]
      routes:
        - to: 0.0.0.0/0
          via: 192.168.200.1
      mtu: 1500
  vlans:
    vlan60:
      id: 60
      link: eth0
      addresses:
        - 192.168.60.20/24
      nameservers:
        addresses: [192.168.60.1]
      mtu: 1500
  1. 验证配置语法:在终端运行这个命令检查配置是否有语法错误:
sudo netplan generate

如果有错误,命令会给出具体提示,你可以根据提示调整。

  1. 应用新配置:验证没问题后,运行下面的命令让配置生效:
sudo netplan apply

之后再用ip a查看vlan60的IP,应该就会显示你设置的192.168.60.20/24了。

另外还有个小细节要注意:你用的是50-cloud-init.yaml,cloud-init有时候会在系统启动时自动覆盖网络配置。如果上面的步骤还没解决问题,可以试试把配置文件重命名为01-netcfg.yaml(Netplan会按文件名的数字顺序加载,数字越小优先级越高),然后再重新应用配置。

备注:内容来源于stack exchange,提问作者Greg B

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.20 10:58:17