如何在 Ubuntu 18.04 中创建绑定接口?

mox*_*xom 11 nic netplan

我正在尝试将 Ubuntu 服务器重新安装到 18.04。

我发现 18.04 使用 Netplan,我在使用它创建绑定接口时遇到问题。

更新配置:

############# BOND - VLAN ##################
network:
    version: 2
    renderer: networkd
    ethernets:
        switchports:
            match: {name: "ens*"}
    bonds:
        bond0:
            interfaces: [switchports]
            parameters:
                mode: balance-alb
    vlans:
        inet:
            id: 50
            link: bond0
            addresses: [X.X.X.X/24]
            gateway4: X.X.X.252
            dhcp4: no
            nameservers:
                addresses: [X.X.X.33]
Run Code Online (Sandbox Code Playgroud)

似乎我不应该有 2 个匹配语句,而 ens* 在一个语句中做到了 - 当我让它工作时,我会清理它..

我已经按照有人建议安装了 ifenslave 和 bridge-utils,但仍然没有。

我还启用了/etc/modules.

我最初的问题是接口处于 UP 状态,但我只能 ping 接口本身,不能ping 其他任何东西。

我无法让它工作,所以我最终重命名/etc/netplan/<name>.yaml文件并安装ifupdown.

如果有人知道为什么这不起作用,我会很高兴知道:)

Kyl*_*ots 4

我安装了 Ubuntu Server,令人惊讶的是它询问我是否要设置绑定。

这是设置的 yaml 文件:

Location: /etc/netplan/ 

File Name: 50-cloud-init.yaml

File Structure:

# This file is generated from information provided by
# the datasource. Changes to it will not persist across an instance.
# To disablecloud-init's network configuration capabilities, write a file
# /etc/cloud/cloud.cfg.d/99-disable-network-config.cfg with the following:
# network: {config: disabled}
network:
   bonds:
       bond0:
           addresses: []
           interfaces:
           - enp5s4
           - enp5s9
           - enp64s0
           parameters:
               lacp-rate: fast
               mode: 802.3ad
               transmit-hash-policy: layer2
       ethernets:
           enp5s4:
               addresses: []
               dhcp4: false
               dhcp6: false
           enp5s9:
               addresses: []
               dhcp4: false
               dhcp6: false
           enp64s0:
               addresses: []
               dhcp4: false
               dhcp6: false
version: 2
Run Code Online (Sandbox Code Playgroud)

当我更多地了解 Ubuntu 中更新的网络配置风格时,我将更新此内容。

更新

要将其更改为静态地址,请执行以下操作:

 sudo mv /etc/netplan/50-cloud-init.yaml /etc/netplan/50-cloud-init.old
Run Code Online (Sandbox Code Playgroud)

!笔记!您的默认 *.yaml 文件名可能不同。

 sudo touch /etc/netplan/my-network-file.yaml
Run Code Online (Sandbox Code Playgroud)

!笔记!您可以随意命名您的配置文件,只需确保它以 .yaml 结尾

sudo nano /etc/netplan/my-network-file.yaml
Run Code Online (Sandbox Code Playgroud)

在此文件 (my-network-file.yaml) 中复制上面的内容并附加以下更改:

network:
   bonds:
       bond0:
           addresses: [192.168.0.8/24]
           gateway4: 192.168.0.1
           nameservers:
              addresses: [8.8.8.8,8.8.4.4]
           interfaces:
           - enp5s4
           - enp5s9
           - enp64s0
Run Code Online (Sandbox Code Playgroud)

确保更改 IP 地址以反映您的网络。之后,我重新启动了机器,我的新网络配置已加载并正常工作。

您也可以使用:

sudo netplan apply
Run Code Online (Sandbox Code Playgroud)

这应该会应用新的配置,而无需重新启动。

旁注您可能需要观察间距而不是使用制表符,因为这可能会导致配置文件出现问题。

如果您不确定自己的网络接口,可以执行以下操作之一

lshw -class network 
Run Code Online (Sandbox Code Playgroud)

或者

ip link show
Run Code Online (Sandbox Code Playgroud)

希望这可以帮助!