Ubuntu networking

From Lolly's Wiki
Jump to navigationJump to search


Disable IPv6

Create /etc/sysctl.d/60-disable-ipv6.conf

Create a file named /etc/sysctl.d/60-disable-ipv6.conf with this content:

net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1

Activate /etc/sysctl.d/60-disable-ipv6.conf

# sysctl -p /etc/sysctl.d/10-disable-ipv6.conf
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1

Check settings

# cat /proc/sys/net/ipv6/conf/all/disable_ipv6
1

The ip command

Configure bond manually

Specify your environment

# mymaster1=eno5
# mymaster2=eno6
# myinterface=bond007
# myipaddr=172.16.78.9/24
# mygateway=172.16.78.1
# declare -a mynameservers=( 172.16.77.4 172.16.79.4 )

Create the bonding interface out of the two masters

# ip link add ${myinterface} type bond
# ip link set ${myinterface} type bond miimon 100 mode active-backup
# ip link set ${mymaster1} down
# ip link set ${mymaster1} master ${myinterface}
# ip link set ${mymaster2} down
# ip link set ${mymaster2} master ${myinterface}

If you want to add a VLAN to your interface

# myvlan=1234
# ip link add link ${myinterface} name ${myinterface}.${myvlan} type vlan id ${myvlan}
# myinterface=${myinterface}.${myvlan}

Bring your interface up and set yout ip address

# ip link set ${myinterface} up
# ip addr add ${myipaddr} dev ${myinterface}

Set your default gateway and DNS

# ip route add default via ${mygateway}
# if (( ${#mynameservers[*]} > 1 )) ; then eval systemd-resolve --interface ${myinterface} --set-dns={$(IFS=,; printf '%s' "${mynameservers[*]}")} ; else eval systemd-resolve --interface ${myinterface} --set-dns=${mynameservers[0]} ; fi

ipa

This is not only indian pale ale! On linux

# ip a

shows you the configured addresses. It is the short cut for "ip address show".

iplishup

This just sounds like a word and helps you to keep it in mind.

# ip li sh up

shows you all links (interfaces) that are up. This is short for "ip link show up".

New since Ubuntu 17.10

netplan

Former configuration in /etc/network/interfaces{,.d} is now found in /etc/netplan in YAML syntax. The name of the file is /etc/netplan/<whatever you want, I prefer the interface name>.yaml . The .yaml at the end is not optional!

netplan <command>

To apply changes to your files in /etc/netplan without reboot use:

# netplan appy

Keep in mind: You might lose your connection depending on the changes made!

DHCP

/etc/netplan/ens160.yaml

network:
  ethernets:
    ens160:
      dhcp4: yes
  version: 2

Bonding

/etc/netplan/bond007.yaml

network:
  version: 2
  renderer: networkd
  ethernets:
    slave1:
      match:
        macaddress: "3c:a7:2a:22:af:70"
      dhcp4: no
    slave2:
      match:
        macaddress: "3c:a7:2a:22:af:71"
      dhcp4: no
  bonds:
    bond007:
      interfaces:
        - slave1
        - slave2
      parameters:
        mode: balance-rr
        mii-monitor-interval: 10
      dhcp4: no
      addresses:
        - 192.168.189.202/27
      gateway4: 192.168.189.193
      nameservers:
          search: 
            - mcs.de
          addresses:
            - "192.168.3.60"
            - "192.168.3.61"