8

I've just installed ubuntu server 17.10. During installation, it suggested me to connect to the network through wifi, and so i did. After installation was finished and system was rebooted, computer connected to the wifi automatically (which means, it saved the connection creds somewhere). But in /etc/network/interfaces i found nothing. I need my computer connect to wifi network with static ip, so I've put configuration into the /etc/network/interfaces:

# /etc/network/interfaces -- configuration file for ifup(8), ifdown(8)
# Generated by debian-installer.

# The loopback interface
auto lo
iface lo inet loopback


iface wlp2s0b1 inet static
        wpa-driver wext
        address 192.168.0.12
        netmask 255.255.255.0
        gateway 192.168.0.1
        wpa-ssid *****
        wpa-psk **********
        dns-nameservers 8.8.8.8 192.168.0.1
auto wlp2s0b1

When system starts, it doesn't connect using my configuration. It does only after

sudo ifdown wlp2s0b1 && sudo ifup -v wlp2s0b1

and after this command, system getting a SECOND IP! Server is still available by the ip it gets from DHCP, and in the same time, it is available by the static ip!

  • Please edit your question to add the result of: cat /etc/network/interfaces . Welcome to Ask Ubuntu. – chili555 Nov 14 '17 at 21:16
  • > Please edit your question to add the result of: cat /etc/network/interfaces. Done! > Welcome to Ask Ubuntu. Thank you! – lucius Nov 14 '17 at 21:43
  • Please edit out this: wpa-driver wext Next, do: sudo ifdown wlp2s0b1 && sudo ifup -v wlp2s0b1 The -v for verbose should produce some clues as to what's going on or going wrong. Paste it here and give us the link: paste.ubuntu.com – chili555 Nov 14 '17 at 21:51
  • Should i remove this line? wpa-driver wext – lucius Nov 14 '17 at 21:54
  • Yes, please and then: sudo ifdown wlp2s0b1 && sudo ifup -v wlp2s0b1 and then paste the output so we can see what's going wrong. Also, when it gets an IP address, presumably by DHCP, what is the address? – chili555 Nov 14 '17 at 21:59
15

Networking is handled by netplan by default in Ubuntu Server 17.10 and later. I suggest that you edit the /etc/netplan/01-netcfg.yaml file to read:

# This file describes the network interfaces available on your system
# For more information, see netplan(5).
network:
  version: 2
  renderer: networkd
  wifis:
    wlp2s0b1:
      dhcp4: no
      dhcp6: no
      addresses: [192.168.0.21/24]
      gateway4: 192.168.0.1
      nameservers:
        addresses: [8.8.8.8,192.168.0.1]
      access-points: 
        "******":
          password: "**********"

Exit and save your changes by running the command:

sudo netplan generate
sudo netplan apply

Please note and follow the spacing and indentation. Also note that the SSID and password are in between quotes ".

Comment out all the wlp2s0b1 stanzas in /etc/network/interfaces and reboot.

Any improvement?

NOTE: The exact method to set a static IP address for a server with netplan and wifi is hard to find. We may need to tweak the settings a bit.

| improve this answer | |
  • 2
    You spent 2 hours (!) of your life on my problem, and now it is solved! Thank you! I love ubuntu community! – lucius Nov 14 '17 at 23:40
  • 2
    No, thank you! I enjoy challenging problems. Glad it's working. – chili555 Nov 15 '17 at 0:24
  • netplan is just for server network admin? – Thufir Nov 29 '17 at 13:29
  • 1
    @Thufir netplan is also used in destop installations but, by default, turns over configuration to Network Manager. – chili555 Nov 29 '17 at 13:40
  • 1
    This is awesome! However, I needed to install wpasupplicant on my ubuntu server too. – Nabheet Mar 25 '18 at 7:16
2

I suggest you to completely remove netplan package and use networkd by creating config(s) in /etc/systemd/network/ directory. Netplan exists only in Ubuntu and there are no one in any other distros.

| improve this answer | |
  • The netplan.io package does not exist in the default 17.10 repositories. – karel Sep 8 '18 at 21:28
  • Sorry, it is in 18.04. If you want to move to networkd, you just neet to: 1) sudo systemctl enable systemd-networkd 2) sudo rm /etc/network/interfaces 3) sudo rm /etc/netplan/* – Gannet Sep 8 '18 at 21:47

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.