I'm curious how it is getting eno1 if you are using 18.04. Systemd uses it's own naming scheme (read enp13s0). eno, eth, ens, and any others should no longer show up. Netplan is also used and /etc/network/interfaces should do nothing without the ifupdown package, which shouldn't be installed on 18.04. If this is an upgrade from 16.04 then you would still use /etc/network/interfaces at which point you shouldn't be using netplan unless you manually switch to it. 16.04 also used systemd so there is still no explanation for how eno is showing up there either. May want to sort that out first. Something is not right and until the base issue is fixed this will be a headache, if you get it working at all. Here is a netplan guide once you get sorted out.
*EDIT* Maybe I misunderstand how systemd does interface names. Your ip a command doesn't make any sense to me. I will readily admit I could be wrong on these points. *END EDIT*
https://netplan.io/examples
I would adjust their bond example to the below based on my own experience. I'm not sure how old that guide is but the formatting they have for a bond, which is similar to static ip's didn't work in my case. The below would probably work (based on what I eventually got working and other parts of the same guide). Single spaces, no tabs. Indentation is key in Yaml files.
*EDIT* Just did some looking around. Isn't in the guide but it appears some people have had to declare the interfaces individually with dhcp4/6: false in their netplan configs for bonds. I'm not sure if it's required or not as I cannot test it. They would be declared in the netplan config like so.
Code:
network:
version: 2
renderer: networkd
ethernets:
enp3s0:
dhcp4: false
dhcp6: false
enp4s0:
dhcp4: false
dhcp6: false
*END EDIT*
Code:
network:
version: 2
renderer: networkd
bonds:
bond0:
dhcp4: yes
interfaces: [enp3s0, enp4s0]
parameters:
mode: active-backup
primary: enp3s0
static ip. adjust as needed to your situation.
Code:
network:
version: 2
renderer: networkd
bonds:
bond0:
dhcp4: false
dhcp6: false
addresses: [192.168.1.2/24]
gateway4: 192.168.1.1
nameservers:
addresses: [8.8.8.8, 8.8.4.4]
interfaces: [enp3s0, enp4s0]
parameters:
mode: active-backup
primary: enp3s0
hell why not create a bridge for containers and virtual machines? no clue if this one works, but why not? if i had a dual nic server i'd try it just for the fun of it. any server i setup i automatically make a bridge. never know and it's easy enough to do.
Code:
network:
version: 2
renderer: networkd
bonds:
bond0:
dhcp4: false
dhcp6: false
interfaces: [enp3s0, enp4s0]
parameters:
mode: active-backup
primary: enp3s0
bridges:
br0:
dhcp4: false
dhcp6: false
interfaces: [bond0]
addresses: [192.168.1.2/24]
gateway4: 192.168.1.1
nameservers:
addresses: [8.8.8.8, 8.8.4.4]