Network#
Basic command line tools#
Get the list of the interfaces
nmcli dev status
Output of the command :
nmcli dev status DEVICE TYPE STATE CONNECTION enp0s31f6 ethernet connected Wired connection 1 enp3s0 ethernet connected TOF sensor 1 wlp9s0 wifi disconnected -- enp10s0 ethernet unavailable -- enp4s0 ethernet unavailable -- enp7s0 ethernet unavailable -- enp8s0 ethernet unavailable -- lo loopback unmanaged --
Get all the current interfaces configuration
ifconfig
View the network routes
ip route # All routes ip route | grep default # Default gw
Set up an interface
nmtui # run the NMTUI (Network Manager Text User Interface) and follow the steps on the screen
Warning
Do NOT use ifconfig to set up an interface, it is deprecated and does not always work (typically on our Spectra 1-2 with Ubuntu 18.04 )
Set up the default gateway
# Using route command $ sudo route add default gw <gw_ip_address> # Using ip command $ sudo ip route add default via <gw_ip_address>
Limitation of the ephemeral ports range#
An ephemeral port is a short-lived port used by a program to communicate via an internet protocol to another program. It is allocated automatically from a predefined range.
The configuration file is located in /proc/sys/net/ipv4/ip_local_port_range
.
It is not possible to modify it with a text editor.
Modify the range of ephemeral ports
sudo sysctl -w net.ipv4.ip_local_port_range="58000 60999"
Note
It seems like it will be reset to original values after a reboot.
Advanced network configuration file#
Located in /etc/netplan/ is a YAML file (often called config.yaml) that describes the network settings. It can be modified.
The standard version means that the GUI is responsible for the settings
To visualize it, run :
cat /etc/netplan/*.yaml
The output should be :
network: version: 2 renderer: NetworkManager
To ensure the PC will follow a specified network configuration, it is possible to define for each interface its configuration. The content of the config.yaml file could for example looks like the following configuration :
network: version: 2 renderer: networkd # Static IP address for all Ethernet interfaces, with 255.255.255.0 as mask ethernets: enp3s0: addresses: - 192.168.0.100/24 dhcp4: false enp4s0: addresses: - 192.168.1.100/24 dhcp4: false enp7s0: addresses: - 192.168.2.100/24 dhcp4: false enp8s0: addresses: - 192.168.3.100/24 dhcp4: false # Connection to a secured WPA Enterprise Wifi wifis: wlp9s0: access-points: workplace: auth: key-management: eap method: peap identity: "login" password: "pw" dhcp4: true
More examples about netplan can be found on netplan.io/examples.
After modifying the YAML file, the following command must be run :
sudo netplan apply