Ubuntu Network Config

Ubuntu uses /etc/network/interfaces for all the network definitions.

This is valid for Ubuntu prior to Ubuntu 18.04, for networking in 18.04, see page on Ubuntu 18.04 Netplan

Static

# The primary network interface
auto eth0
iface eth0 inet static
        address 192.168.110.16
        netmask 255.255.255.0
        network 192.168.110.0
        broadcast 192.168.110.255
        gateway 192.168.110.1
        # dns-* options are implemented by the resolvconf package, if installed
        dns-nameservers 192.168.1.10 192.168.1.11
        dns-search example.com

DHCP

# The primary network interface
auto eth1
iface eth1 inet dhcp

Bonding

Needs ifenslave package.

# The primary network interface 
auto bond0               
 iface bond0 inet static        
 bond-mode active-backup

Also
 bond-mode broadcast

 bond-miimon 100           
 bond-slaves none     
 bond-primary eth0      
 address 192.168.20.11
 gateway 192.168.20.1 
 netmask 255.255.255.0
 dns-nameservers 192.168.20.5 192.168.1.10 192.168.110.11
 dns-search subnet1.example.com subnet2.example.com


auto eth0
 iface eth0 inet manual
 bond-master bond0

auto eth1
 iface eth1 inet manual
 bond-master bond0 

Monitoring

/proc contains data about the state of the bond and the slaves, most useful is probably to see which slave is avtive in an active/passive setup.

[root@server01 ~]# cat /proc/net/bonding/bond0

Primary Slave: None
Currently Active Slave: eth1

Changing active interface

[root@server01 ~]# ifenslave –change-active bond0 eth0

VLAN driver

This requires the 802.1q module to talk to the Cisco switch but does not require special switch config and works across switches (unlike LCAP):-

# modprobe 8021q
auto eth1
iface eth1 inet static
address 1.1.1.10
netmask 255.255.255.0

auto eth1.2
iface eth1.2 inet static
address 2.2.2.10
netmask 255.255.255.0

auto eth1.3
iface eth1.3 inet static
address 3.3.3.10
netmask 255.255.255.0


auto eth1.100
iface eth1.100 inet static
address 100.100.100.10
netmask 255.255.255.0

auto eth1.220
iface eth1.220 inet static
address 220.220.220.10
netmask 255.255.255.0

Setting trunk mode on IOS

interface GigabitEthernet0/24
 switchport trunk encapsulation dot1q
 switchport mode trunk
 speed 1000
 duplex full

Bonding with VLAN driver and bridging

No specific switch config is required for this, but the switch ports need to be trunks not access ports.

auto bond0     
 iface bond0 inet manual        
 bond-mode active-backup
# bond-mode broadcast
# bond-mode balance-rr
 bond-miimon 100           
 bond-slaves none     


auto eth1
 iface eth1 inet manual
 bond-master bond0

auto eth3
 iface eth3 inet manual
 bond-master bond0 





#auto bond0
#iface bond0 inet static
#address 1.1.1.10
#netmask 255.255.255.0

auto bond0.2
iface bond0.2 inet static
address 2.2.2.10
netmask 255.255.255.0

auto bond0.3
iface bond0.3 inet static
address 3.3.3.10
netmask 255.255.255.0

auto bond0.100
iface bond0.100 inet static
address 100.100.100.10
netmask 255.255.255.0

auto bond0.220
iface bond0.220 inet manual

auto br220
iface br220 inet static
bridge-ports bond0.220
address 220.220.220.10
netmask 255.255.255.0

Add new bridge with

# brctl addbr br220


# brctl show
bridge name     bridge id               STP enabled     interfaces
br220           8000.0025909243d5       no              bond0.220
#

On new server:

apt-get update
# it was failing to download some packages, then)
# rm -rf /var/lib/apt/lists/*
apt-get update
apt-get install vlan
 
linux/ubuntunetwork.txt · Last modified: 13/01/2022 22:48 by andrew