home       inleiding       sysadmin       services       links       bash       werk       nothing      

statische netwerk config ubuntu16-server // linux mint 18

Een server heeft bijna altijd een vast ip-adres nodig. Een ubuntu server dus ook.
Bovendien kunnen we LinuxMint ook gebruiken als server. Maar dan heeft mint18 ook een vast ip-adres nodig. Ubuntu-server en Linux-mint zitten in dezelfde linux-distributie familie. Statisch configureren van het netwerk is voor beiden identiek in bovenstaande versies.
 
We gaan in wat volgt ip-address+mask, default gateway en dns-server van onze machine(s) statisch instellen.
 
Een statisch adres werkt echter alleen als je altijd in hetzelde netwerk zit. Dat moet zo voor een server. Maar denk er aan dat een configuratie in een opleidingslokaal verschilt van thuis. Groepen die regelmatig in een ander opleidingslokaal zitten moeten hier ook over nadenken.
 
Het is vaak beter te werken met twee of meer Linux-Mint- & Ubuntu-server- machines:

  • eentje voor het dagelijkse studiewerk met dhcp (al dan niet virtueel via NAT)
  • eentje voor gebruik als server met vast ip-configuratie in het opleidingslokaal
  • eentje voor gebruik als server met vast ip-configuratie op een andere plaats
     
    1. virtuele cloon
      We beginnen met een clean-2-clone machine te klonen naar een machine voor server-gebruik. Daarop zetten we dadelijk een statische netwerk configuratie. we behouden onze eerdere virtual(s) voor het andere werk.
       
      Zodra de cloon klaar is zet je het virtueel-netwerk op bridged. Kies de juiste LAN of WiFi adapter.
       
      We moeten onze hostnaam aanpassen: dat doen we in twee bestanden:
       
      /etc/hostname
      mint18-srv

      /etc/hosts

      127.0.0.1   localhost
      127.0.1.1   mint18-srv
       
      # The following lines are desirable for IPv6 capable hosts
      ::1     ip6-localhost ip6-loopback
      fe00::0 ip6-localnet
      ff00::0 ip6-mcastprefix
      ff02::1 ip6-allnodes
      ff02::2 ip6-allrouters

      Herstart je machine zodra je de hostnaam hebt aangepast.
       

    2. ip-address / gateway / netmask / DNS
       
      De netwerkconfiguratie staat in de file /etc/network/interfaces. Vraag een statisch adres aan de docent ... of aan de verantwoordelijke van het lokaal.
       
      Zoek eerst met ifconfig de naam op van je netwerkkaart: 
      user@mint18-srv ~ $ ifconfig
      enp0s3    Link encap:Ethernet  HWaddr 08:00:27:2a:89:fb  
        inet addr:192.168.5.163  Bcast:192.168.5.255  Mask:255.255.255.0
        inet6 addr: 2a02:1811:2c08:a700:a043:c7d9:9a15:d1b3/64 Scope:Global
        inet6 addr: 2a02:1811:2c08:a700:156f:d719:4c15:22f9/64 Scope:Global
        inet6 addr: fe80::243c:7cdd:321c:5dc7/64 Scope:Link
        UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
        RX packets:127 errors:0 dropped:0 overruns:0 frame:0
        TX packets:187 errors:0 dropped:0 overruns:0 carrier:0
        collisions:0 txqueuelen:1000 
        RX bytes:12795 (12.7 KB)  TX bytes:20654 (20.6 KB)
       
      lo        Link encap:Local Loopback  
        inet addr:127.0.0.1  Mask:255.0.0.0
        inet6 addr: ::1/128 Scope:Host
        UP LOOPBACK RUNNING  MTU:65536  Metric:1
        RX packets:76 errors:0 dropped:0 overruns:0 frame:0
        TX packets:76 errors:0 dropped:0 overruns:0 carrier:0
        collisions:0 txqueuelen:1 
        RX bytes:6316 (6.3 KB)  TX bytes:6316 (6.3 KB)

      In dit voorbeeld is enp0s3 onze enige netwerkkaart, lo is de local-loopback.
      In je eigen situatie krijg je misschien een andere netwerkkaart (vb eth0, enp0s8, eni0 ...) vervang dan enp0s3 in alle voorbeelden door jouw netwerkkaart.
       
      We krijgen tevens ons dhcp-adres te zien (in dit voorbeeld 192.168.5.163/24)
       
      Zoek daarna je default gateway op:
      user@mint18-srv ~ $ route -n

      Kernel IP routing table
      Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
      0.0.0.0         192.168.5.1     0.0.0.0         UG    100    0        0 enp0s3
      169.254.0.0     0.0.0.0         255.255.0.0     U     1000   0        0 enp0s3
      192.168.5.0     0.0.0.0         255.255.255.0   U     100    0        0 enp0s3

      de default gateway destination wijst naar 0.0.0.0/0 (het ganse internet), in dit voorbeeld de eerste regel.
       
      In de meeste gevallen kun je 8.8.8.8 gebruiken als DNS
       
      We passen vervolgens de file /etc/network/interfaces aan:

      auto lo
      iface lo inet loopback
       
      auto enp0s3
      iface enp0s3 inet static
      address 192.168.5.249
      netmask 255.255.255.0
      gateway 192.168.5.1
      dns-nameservers 8.8.8.8

      Let in het bijzonder op voor tikfouten in address (twee d's en twee s'en)
      En op dns-nameservers, altijd in het meervoud ook al is er maar eentje.
      Elke tikfout zorgt voor een onbestemd netwerk ...
       

    3. computer herstarten
       
      Na herstarten start (zonder tikfouten) de nieuwe statische configuratie op. Als je netwerk slecht geconfigureerd is, duurt het opstarten meestal langer. (tot 5 minuten meer - zie punt 5.)
        
      Je kan het netwerk ook via CLI heropstarten als volgt:
       
      $ sudo systemctl restart network.service
       
      of soms met
       
      $ sudo systemctl restart NetworkManager.service
       
      en vroeger met ...
       
      $ sudo ifdown enp0s3 && sudo ifup enp0s3
       
    4. configuratie op scherm brengen
       
      • ip-address
        gebruik het commando ifconfig om je ip-adres op scherm te brengen (zie hoger)
      • gateway
        je kan je routing configuratie op scherm brengen met het commando route -n (zie hoger)
      • nameserver
        de eenvoudigste manier om te testen of je DNS werkt is een ping naar bvb. google.com
        $ ping google.be
        PING google.be (74.125.79.99) 56(84) bytes of data.
        64 bytes from ey-in-f99.1e100.net (74.125.79.99): icmp_seq=1 ttl=50 time=28.3 ms
        64 bytes from ey-in-f99.1e100.net (74.125.79.99): icmp_seq=2 ttl=50 time=27.5 ms

         

    5. noot tegen het wachten bij onbereikbare dhcp
       
      (https://ubuntuforums.org/showthread.php?t=2323253)
       
      ... a start job is running for raise network interfaces (5 mins 1 sec) in ubuntu16.04
       
      You can reduce the timeout for the job that is trying to raise the network interfaces in the following file:
       
      /etc/systemd/system/network-online.targets.wants/networking.service
       
      You can change the following line to your preference:
       
      21:TimeoutStartSec=5min
       
      You will need to reload the daemon as well.
       
      sudo systemctl daemon-reload