Ubuntu logo

Nettverkskonfigurasjon i Linux

Administrere nettverksgrensesnitt og tilkoblinger

Vise og administrere nettverksgrensesnitt

Moderne Linux-systemer bruker ip-kommandoen for å vise og konfigurere nettverksgrensesnitt. Her ser vi hvordan vi kan vise IP-adresser, sjekke grensesnittstatus og se rutetabellen.
$ ip address show
1: lo:  mtu 65536 qdisc noqueue state UNKNOWN
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
2: eth0:  mtu 1500 qdisc fq_codel state UP
    link/ether 00:0c:29:b5:72:a1 brd ff:ff:ff:ff:ff:ff
    inet 192.168.1.100/24 brd 192.168.1.255 scope global eth0
       valid_lft forever preferred_lft forever

$ ip link show eth0
2: eth0:  mtu 1500 qdisc fq_codel state UP mode DEFAULT
    link/ether 00:0c:29:b5:72:a1 brd ff:ff:ff:ff:ff:ff

$ ip route show
default via 192.168.1.1 dev eth0 proto static 
192.168.1.0/24 dev eth0 proto kernel scope link src 192.168.1.100
For å se aktive nettverkstilkoblinger og lyttende porter bruker vi ss-kommandoen (erstatter netstat). Flaggene -t (TCP), -u (UDP), -l (listening), -n (numeriske porter) viser alle TCP/UDP-porter som venter på tilkoblinger.
$ ss -tuln
Netid  State   Recv-Q  Send-Q  Local Address:Port  Peer Address:Port
tcp    LISTEN  0       128     0.0.0.0:22          0.0.0.0:*
tcp    LISTEN  0       128     0.0.0.0:80          0.0.0.0:*
tcp    LISTEN  0       128     127.0.0.1:3306      0.0.0.0:*
udp    UNCONN  0       0       0.0.0.0:68          0.0.0.0:*

Konfigurere nettverksgrensesnitt

Netplan er standard nettverkskonfigurasjonssystem i nyere Ubuntu-versjoner. Det bruker YAML-formaterte filer for å definere nettverksoppsett. Her ser vi hvordan vi konfigurerer et grensesnitt med statisk IP.
$ cat /etc/netplan/01-netcfg.yaml
network:
  version: 2
  renderer: networkd
  ethernets:
    eth0:
      dhcp4: no
      addresses:
        - 192.168.1.100/24
      gateway4: 192.168.1.1
      nameservers:
        addresses: [8.8.8.8, 8.8.4.4]

$ sudo netplan try
Do you want to keep these settings? [y/N] y
Configuration accepted.

$ sudo netplan apply
$ ip address show eth0
2: eth0:  mtu 1500 qdisc fq_codel state UP
    link/ether 00:0c:29:b5:72:a1 brd ff:ff:ff:ff:ff:ff
    inet 192.168.1.100/24 brd 192.168.1.255 scope global eth0
       valid_lft forever preferred_lft forever
NetworkManager er standard på desktop-systemer og tilbyr både kommandolinje (nmcli) og grafiske verktøy. Her ser vi hvordan vi administrerer tilkoblinger med nmcli.
$ nmcli connection show
NAME           UUID                                  TYPE      DEVICE 
Kabel         550e8400-e29b-41d4-a716-446655440000  ethernet  eth0
WiFi-Hjemme   91cb4400-187c-41d4-a716-446655440000  wifi      wlan0

$ sudo nmcli con add con-name "Kontor" type ethernet \
    ifname eth0 ip4 192.168.1.100/24 gw4 192.168.1.1
Connection 'Kontor' (550e8400-e29b-41d4-a716-446655440001) successfully added.

$ sudo nmcli con up Kontor
Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/3)

Trådløst nettverk

NetworkManager gjør det enkelt å administrere WiFi-tilkoblinger. Her ser vi hvordan vi kan skanne etter nettverk, koble til, og administrere WiFi-tilkoblinger.
$ nmcli device wifi list
IN-USE  SSID          MODE   CHAN  RATE        SIGNAL  BARS  SECURITY  
*       WiFi-Hjemme   Infra  11    270 Mbit/s  90      ▂▄▆█  WPA2      
        Kontor-WiFi   Infra  6     130 Mbit/s  75      ▂▄▆_  WPA2      
        Gjest-Nett    Infra  1     54 Mbit/s   60      ▂▄__  --        

$ sudo nmcli device wifi connect "Kontor-WiFi" password "sikker123"
Device 'wlan0' successfully activated with '91cb4400-187c-41d4-a716-446655440002'.

$ nmcli connection show --active
NAME           UUID                                  TYPE      DEVICE 
Kontor-WiFi    91cb4400-187c-41d4-a716-446655440002  wifi      wlan0

Nettverksfeilsøking

Linux tilbyr mange verktøy for nettverksfeilsøking. Her ser vi hvordan vi kan teste nettverkstilkobling, spore nettverksruter og sjekke DNS-oppslag.
$ ping -c 4 google.com
PING google.com (142.250.74.110) 56(84) bytes of data.
64 bytes from fra16s49-in-f14.1e100.net (142.250.74.110): icmp_seq=1 ttl=57 time=15.6 ms
64 bytes from fra16s49-in-f14.1e100.net (142.250.74.110): icmp_seq=2 ttl=57 time=15.8 ms
64 bytes from fra16s49-in-f14.1e100.net (142.250.74.110): icmp_seq=3 ttl=57 time=15.7 ms
64 bytes from fra16s49-in-f14.1e100.net (142.250.74.110): icmp_seq=4 ttl=57 time=15.7 ms

$ traceroute google.com
traceroute to google.com (142.250.74.110), 30 hops max, 60 byte packets
 1  _gateway (192.168.1.1)  0.345 ms  0.419 ms  0.507 ms
 2  isp-router.net (10.0.0.1)  15.647 ms  15.701 ms  15.778 ms
 3  core1.isp.net (172.16.0.1)  16.130 ms  16.198 ms  16.267 ms
[...]

$ nslookup google.com
Server:    8.8.8.8
Address:   8.8.8.8#53

Non-authoritative answer:
Name:    google.com
Address: 142.250.74.110
Tips for feilsøking:
  • Sjekk fysisk tilkobling og nettverkskort-status med ip link
  • Verifiser IP-konfigurasjon med ip address
  • Test DNS-oppslag med nslookup eller dig
  • Sjekk rutetabell med ip route
  • Se etter feilmeldinger i systemloggen med journalctl