Netplan中的虚拟接口


13

在以前,/etc/network/interfaces我可以定义一个虚拟接口:

auto enp7s0f0
iface enp7s0f0 inet static
    address aaa.aaa.aaa.aaa
    netmask 255.255.255.0
    gateway aaa.aaa.aaa.1

auto enp7s0f0:0
iface enp7s0f0:0 inet static
     address bbb.bbb.bbb.bbb
     netmask 255.255.255.0

在Ubuntu Server 17.10上使用netplan如何实现?

现在我有:

network:
  version: 2
  renderer: networkd
  ethernets:
    enp7s0f0:
      addresses: [aaa.aaa.aaa.aaa/24]
      gateway4: aaa.aaa.aaa.1

如何添加虚拟接口的地址bbb.bbb.bbb.bbb

Answers:


7

经过一番调查,我发现当前的网络计划并没有支持它。可以这样做:

network:
  version: 2
  renderer: networkd
  ethernets:
    enp7s0f0:
      addresses: [aaa.aaa.aaa.aaa/24, bbb.bbb.bbb/24]
      gateway4: aaa.aaa.aaa.1

ip addr显示地址和计算机都可以与bbb.bbb.bbb/24网络通信。缺点是两个网络都只有一个接口名称,在定义iptables规则时可能会出现问题。


我想您必须设置一个macvlan或ipvlan才能获得一个虚拟接口,它具有自己的独特名称,ip和mac。没有对如何做到这一点很好的信息,但是你可以从这里开始:pocketnix.org/posts/...
安迪周杰伦

@AndiJay,执行此操作的问题并不严重(可以通过ip命令轻松完成,但是如何使用netplan可以完成此操作。但是,看来netplan根本不具备此功能。我已经填写了一个错误报告。
Maciek D.

5

只需回到ifupdown。超级容易

apt安装ifupdown

删除/重命名/ etc / netplan中的任何.yaml文件-重要的部分是确保文件扩展名不是yaml

做完了!


3

尝试这样的事情:

network:
    version: 2
    renderer: networkd
    ethernets:
        enp7s0f0:
            addresses: [aaa.aaa.aaa.aaa/24]
            gateway4: aaa.aaa.aaa.1
    vlans:
        veth0:
            id: 0
            link: enp7s0f0
            addresses: [bbb.bbb.bbb.bbb/24]

我不知道您是否需要为虚拟接口再次定义网关。如果不起作用,请添加它。


不幸的是,这会将VLAN标签添加到IP数据包中。而且,由于我只需要简单地将其他计算机连接到网络,就不能选择VLAN。
Maciek D.

1
您介意指出错误报告吗?我刚刚发现了同样的问题。
代码画家

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.