Debian Buster image on a Google Compute Engine VM, and I have this systemd-networkd config placed at /etc/systemd/network/wg0.netdev to configure a Wireguard device:
[NetDev]
Name=wg0
Kind=wireguard
[WireGuard]
PrivateKey = XXXXX
ListenPort = 51820
[WireGuardPeer]
Endpoint = XXXXX:51820
PublicKey = XXXXX
AllowedIPs = XXXXX/32
AllowedIPs = XXXXX/24
When starting the systemd-networkd service, I get this error:
Starting Network Service...
Failed to generate predictable MAC address for wg0: No such file or directory
Could not load configuration files: No such file or directory
systemd-networkd.service: Main process exited, code=exited, status=1/FAILURE
What's odd is:
- I can bring up the wg0 interface successfully on the GCP server by
configuring it manually instead of via systemd - I can use the above systemd-networkd config on other provider VMs (tested Vultr and local Vagrant) successfully
So the error only happens with the specific combination of using systemd-networkd config on a GCP server.
I'm using the exact same Linux kernel and Wireguard versions on all the servers. If it's a GCP-specific configuration, I can't seem to find any related documentation on it.
Best Answer
I've checked Wireguard on GCE VM with Ubuntu 18.04 and it runs without any issues.
Please find my steps below:
wireguard-tools
:In addition, please have a look at 3rd party guide for newer versions of Ubuntu here.