I am trying to set up a VPN server on VyOS 1.3 using wiregaurd with a single client, an iPad Pro as the other end. I’m using the following:
Version: VyOS 1.3-rolling-201912271900
Built by: [email protected]
Built on: Fri 27 Dec 2019 19:00 UTC
Build UUID: 95437501-980e-48ea-aa3f-2e6182f9532c
Build Commit ID: ef122b630db38e
My server configuration is as follows:
set interfaces wireguard wg0 address '192.168.254.1/24'
set interfaces wireguard wg0 description 'wireguard vpn server'
set interfaces wireguard wg0 peer ipad allowed-ips '192.168.254.10/32'
set interfaces wireguard wg0 peer ipad persistent-keepalive '15'
set interfaces wireguard wg0 peer ipad pubkey '<redacted pub key>'
set interfaces wireguard wg0 port '12345'
On my client, an Apple iPad Pro, I’m using the Wireguard VPN client. I’ve exported it’s configuration and have the following:
[Interface]
PrivateKey = <redacted private key of ipad client>
Address = 192.168.254.10/24
[Peer]
PublicKey = <redacted pub key of the server>
AllowedIPs = 192.168.254.1/32
Endpoint = <public_ip_address_of_vyos_device>:12345
According to the iPad client, i’m establishing a tunnel.
[NET] peer (yEjv...ti1A) - Starting...
[NET] peer (yEjv...ti1A) - Routine: sequential receiver - started
[NET] peer (yEjv...ti1A) - Routine: nonce worker - started
[NET] peer (yEjv...ti1A) - Routine: sequential sender - started
[NET] Device started
[APP] Tunnel 'wg1' connection status changed to 'connected'
I’m not able to ping client->server OR server->client.
When i attempt to ping from VyOS to the iPAD, i’m getting an odd message:
ping 192.168.254.10
PING 192.168.254.10 (192.168.254.10): 56 data bytes
/bin/ping: sending packet: Destination address required
When i ping from iPAD to VyOS, i get no response.
Show interface reveals errors and drops on the VyOS side:
show interfaces wireguard wg0
interface: wg0
description: wireguard vpn server
address: 192.168.254.1/24
public key: <redacted key of vyos>
private key: (hidden)
listening port: 12345
peer: ipad
public key: <redacted key of ipad>
allowed ips: 192.168.254.10/32
persistent keepalive: every 15 seconds
RX:
bytes packets errors dropped overrun mcast
0 0 0 0 0 0
TX:
bytes packets errors dropped carrier collisions
0 0 597 49 0 0
Additionally,
sudo wg show
interface: wg0
public key: <redacted pubkey of vyos>
private key: (hidden)
listening port: 12345
peer: <redacted pubkey of ipad>
allowed ips: 192.168.254.10/32
persistent keepalive: every 15 seconds
I have the following firewall rule as well… applied to eth0, my WAN interface
set firewall name WAN_IN rule 80 action 'accept'
set firewall name WAN_IN rule 80 destination port '12345'
set firewall name WAN_IN rule 80 protocol 'udp'
Any thoughts on this? Troubleshooting tips? I’m stumped… Thanks
PS… Is this a NAT thing?