I am using the Beryl (GL-MT1300) router and encountered an issue with manually adding a WireGuard Client on firmware 3.211. I have successfully reproduced the behaviour and found a workaround.
What happens is that when I manually added a WireGuard Client by copy/paste in the config, it is able to save and is accepted.
Then when I click on the Mangement tab to view the tunnel’s configuration, I see in the Interface IP Address field, it has put my IP address (from the copy/paste) and added “,MTU”. What it looks like is:
Interface
IP Address 10.6.0.3/24,MTU
I discovered this by trying to troubleshoot why the tunnel wasn’t coming up and clicking modify to look at the config. After not changing anything, I clicked Apply and it gave me a message that the IP Address was invalid. That was when I noticed the extra “,MTU” in the IP Address field.
By manually removing “,MTU”, it solved the problem right away and my tunnel came up.
Here is my WireGuard content from the .conf file. I used Windows notepad to view and copy the data into the WireGuard setup screen. I am using Chrome Version 102.0.5005.63 (Official Build) (64-bit).
[Interface]
PrivateKey = REMOVED
Address = 10.6.0.3/24
MTU = 1420
DNS = 10.6.0.1
This looks like a variation of previously-reported WireGuard config parsing problems, where the “MTU =” line gets partially appended to the previously line (the “MTU” characters):
As a workaround, you can try adding a newline before the “MTU =” line in the config file, so the setting is preserved.
I do not work for and I am not directly associated with GL.iNet