Skip to main content

Connecting to a wifi network with netplan

How do you connect to a a wifi network with netplan?

I hang out on the #netplan IRC channel on Freenode, and this comes up every so often.

netplan - the default network configuration tool in Ubuntu 17.10 onwards - currently supports WPA2 Personal networks, and open (unencrypted) networks only. If you need something else, consider using NetworkManager directly, or falling back to ifupdown and wpa_supplicant for a little longer.

Without further ado, here are tested, working YAML files for connection to my local WPA2 and unencrypted network. The only things that have been changed are the SSIDs and password. Both networks have a router providing dhcp4. In both cases I assume there's only one wifi device in the system - if this is not true, replace match: {} with something more specific.

You can drop these in /etc/netplan and run netplan generate; netplan apply and things should work. The network will also be brought up on subsequent boots.

Note that, as always in YAML, indentation matters.

WPA2 Personal

network:
    version: 2
    wifis:
        wlan0:
             renderer: NetworkManager
             match: {}
             dhcp4: true
             access-points:
                 "wpa2 network":
                     password: "Our passphrase for our network"

Open network

network:
    version: 2
    wifis:
        wlan0:
             renderer: NetworkManager
             match: {}
             dhcp4: true
             access-points:
                 "open network": {}

Hopefully that is helpful. As mentioned, #netplan on freenode is a good place to get netplan help, and you can file bugs on Launchpad.

Comments

  1. Hi, thanks for sharing a step by step wifi connection using Linux it helps me a lot.
    portable wifi hotspot device

    ReplyDelete
  2. Any way to avoid putting them in here and put them in WPA_Supplicant instead? Can't get it to work and would prefer to put a hash instead of password in wpa_supplicant.conf.

    ReplyDelete
  3. With outpasswordwifi work

    ReplyDelete

Post a Comment

Popular posts from this blog

Anonymous bridges in netplan

netplan is the default network configuration system for new installs of Ubuntu 18.04 (Bionic). Introduced as the default in Artful, it replaces /etc/network/interfaces . One question that gets asked repeatedly is: "How do I set up an anonymous bridge in netplan?" (An anonymous bridge, I discovered, is one where the bridge doesn't have an IP address; it's more akin to a switch or hub.) It's been approached on  Launchpad , and comes up on the IRC channel. If you're trying to create a bridge without an IP address, the obvious first thing to try is this: network: version: 2 ethernets: ens8: match: macaddress: 52:54:00:f9:e9:dd ens9: match: macaddress: 52:54:00:56:0d:ce bridges: br0: interfaces: [ens8, ens9] This is neat, plausible, and wrong - the bridge will be created but will stay 'down'. Per ip a : 5: br0: <BROADCAST,MULTICAST> mtu 15...

Netplan FAQs

Looking at search traffic, it seems the following netplan issues get people frequently. No tabs in YAML Problem: netplan prints an error message like this: Invalid YAML at //etc/netplan/10-bad.yaml line 6 column 0: found character that cannot start any token Solution: You have a tab in your YAML file. Remove the tab and try again. There will eventually be better error messages for this - PR#12 or PR#18 , but they haven't landed as of June 2018. mapping values are not allowed in this context Problem: netplan prints an error message like this: Invalid YAML at //etc/netplan/10-bad.yaml line 3 column 12: mapping values are not allowed in this context Cause: Netplan parses YAML with libyaml, which has some rather obtuse error messages. As far as I can tell, this is caused when you have a YAML file where: you have begun a mapping. As of Bionic, netplan recognises networks, match, nameservers, routes, routing-policy, access-points, parameters...