Ubuntu 18.10(Cosmic Cuttlefish)上的 Netplan:DHCP4 + 静态路由

Ubuntu 18.10(Cosmic Cuttlefish)上的 Netplan:DHCP4 + 静态路由

我正在使用带有 netplan 的全新 Ubuntu Server 18.10 (Cosmic) 安装。我想要实现的是通过 DHCP 设置网络接口并添加一些静态路由。

使用静态 IP 设置时一切正常。使用 DHCP 时“路由:”不适用

有什么想法可以改变这种状况吗?

用于应用设置的命令:

netplan generate
netplan apply

作品

network:
 ethernets:

  enp0s3:
   addresses: []
   dhcp4: true
   dhcp6: true

  enp0s8:
   dhcp4: false
   addresses:
     - 192.168.1.10/24
   routes:
    - to: 10.10.0.0/24
      via: 192.168.1.2
    - to: 10.9.0.0/24
      via: 192.168.1.2
 version: 2

不起作用

network:
 ethernets:

  enp0s3:
   addresses: []
   dhcp4: true
   dhcp6: true

  enp0s8:
   dhcp4: true           # <- CHANGED
   addresses: []         # <- CHANGED
   routes:
    - to: 10.10.0.0/24
      via: 192.168.1.2
    - to: 10.9.0.0/24
      via: 192.168.1.2
 version: 2

编辑:[2018.12.20]:经过新的研究,我发现我的问题是动物(具体来说是虫子)。

答案1

经过新的研究,我发现我的问题是动物(具体来说是虫子)。

路由在 DHCP 之前应用,从而会破坏路由。

答案2

尝试这个... (保持缩进和间距不变)...

network:
  version: 2
  renderer: networkd
  ethernets:
    enp0s3:
      dhcp4: true
      dhcp6: true
      addresses: []
    enp0s8:
      dhcp4: true
      addresses: []
      routes:
        - to: 10.10.0.0/24
          via: 192.168.1.2
        - to: 10.9.0.0/24
          via: 192.168.1.2

然后...

sudo netplan --debug generate# 生成配置文件

sudo netplan apply# 应用配置

reboot# 重新启动并确认操作正确

更新#1:

由于您发现了错误,请尝试这个......

将唯一现有的 .yaml 文件命名为01-dhcp.yaml并包含此文本...

network:
  version: 2
  renderer: networkd
  ethernets:
    enp0s3:
      dhcp4: true
      dhcp6: true
      addresses: []
    enp0s8:
      dhcp4: true
      addresses: []
      gateway4: 10.x.x.1 <-adjust this address for your environment
      optional: true     <-don't wait for connection, try with/without this

然后创建第二个 .yaml 文件,02-routes.yaml并使用该文本进行命名...

network:
  version: 2
  renderer: networkd
  ethernets:
    enp0s8:
      dhcp4: false   <-disable dhcp this time around
      addresses: []  <-this MAY need to be removed
      routes:
        - to: 10.10.0.0/24
          via: 192.168.1.2
        - to: 10.9.0.0/24
          via: 192.168.1.2

sudo netplan --debug generate# 生成配置文件

sudo netplan apply# 应用配置

reboot# 重新启动并确认操作正确

相关内容