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

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

我正在尝试将 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]

看来我不应该在单个语句中使用 2 个 match 语句和 ens* 来做到这一点 - 当我让它工作时,我会清理它。

我按照某人的建议安装了 ifenslave 和 bridge-utils,但仍然没有任何效果。

另外,我还在 中启用了绑定模块/etc/modules

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

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

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

答案1

我安装了 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

当我了解更多有关 Ubuntu 中较新的网络配置样式时,我会更新此内容。

更新

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

 sudo mv /etc/netplan/50-cloud-init.yaml /etc/netplan/50-cloud-init.old

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

 sudo touch /etc/netplan/my-network-file.yaml

!注意!你可以随意命名你的配置文件,只要确保它以 .yaml 结尾即可

sudo nano /etc/netplan/my-network-file.yaml

在此文件(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

确保更改 IP 地址以反映您的网络。之后,我只需重新启动机器,我的新网络配置就会加载并运行。

您也可以使用:

sudo netplan apply

这将应用新的配置而不需要重新启动。

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

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

lshw -class network 

或者

ip link show

希望这可以帮助!

相关内容