gravitl / netmaker

Netmaker makes networks with WireGuard. Netmaker automates fast, secure, and distributed virtual networks.
https://netmaker.io
Other
9.56k stars 553 forks source link

[Bug]: Public Address (IPv4) not present in UI or Wireguard Configs #3104

Open PapaZigE opened 2 months ago

PapaZigE commented 2 months ago

Contact Details

papazig911@gmail.com

What happened?

For my 'private' network, IPV4 address was not showing up under the hosts section of the UI: mysite.com/networks/private. I have noticed this before but it did not affect connectivity. However, I was adding a client to my private network and noticed the config would not load to Wireguard due to "Unable to import configuration: Brackets must contain an IPv6 address "[<nil>]".

I'm not sure how Netmaker receives the IP address from the server but my main network ('netmaker') acts as the gateway for my 'private' network. My private network is behind a CGNAT but that IPv4 is not in question and generally shows.

My work around was to set my VPS IP in the global settings of my 'netmaker' network and enable the "Static" option. This is fine and probably better since it is a static IP. It's just odd this started happening recently.

Only updates I have made are to my VPS Ubuntu system (Ubuntu 22.04.4 LTS) with general update & upgrade commands. Nothing fancy.

I installed netmaker via the docker compose route and the current version is gravitl/netmaker-ui:v0.24.2.

It's not too big of a deal and didn't take too long to figure out a work-around but I think it is worth mentioning in the event it causes issues for networks that have a dynamic IPv4.

The logs do show error retrieving host: no result found. Not sure if this is related to a grander issue but when looking at other logs I don't see anything of value except in caddy where my mailserver seems to be stuck in some configs somewhere because I don't have it meshed with netmaker, yet it continues to attempt a handshake... Leave, disconnect, list commands on my mailserver show no signs of netmaker. This is a separate issue however so I digress.

Version

v0.24.2

What OS are you using?

Linux

Relevant log output

From docker logs for gravitl/netmaker:v0.24.2   "./netmaker"

...
[netmaker] 2024-09-04 17:56:02  error retrieving host:  no result found
[netmaker] 2024-09-04 17:56:32  error retrieving host:  no result found
[netmaker] 2024-09-04 17:56:32  error retrieving host:  no result found
[netmaker] 2024-09-04 17:57:02  error retrieving host:  no result found
[netmaker] 2024-09-04 17:57:02  error retrieving host:  no result found
[netmaker] 2024-09-04 17:57:02  error retrieving host:  no result found
[netmaker] 2024-09-04 17:57:32  error retrieving host:  no result found
[netmaker] 2024-09-04 17:57:32  error retrieving host:  no result found
[netmaker] 2024-09-04 17:58:02  error retrieving host:  no result found
[netmaker] 2024-09-04 17:58:02  error retrieving host:  no result found
[netmaker] 2024-09-04 17:58:02  error retrieving host:  no result found
[netmaker] 2024-09-04 17:58:32  error retrieving host:  no result found
[netmaker] 2024-09-04 17:58:32  error retrieving host:  no result found
...

From docker logs caddy

2024/09/04 18:06:49.672 ERROR   http.log.access handled request {"request": {"remote_ip": "xxx.xxx.xx.xx", "remote_port": "34558", "proto": "HTTP/2.0", "method": "POST", "host": "api.netmaker.mysite.com:443", "uri": "/api/hosts/adm/authenticate", "headers": {"Content-Type": ["application/json"], "Content-Length": ["107"], "Accept-Encoding": ["gzip"], "User-Agent": ["Go-http-client/2.0"]}, "tls": {"resumed": false, "version": 772, "cipher_suite": 4865, "proto": "h2", "server_name": "api.netmaker.mysite.com"}}, "user_id": "", "duration": 0.000869901, "size": 40, "status": 400, "resp_headers": {"Server": ["Caddy"], "Alt-Svc": ["h3=\":443\"; ma=2592000"], "Content-Type": ["application/json"], "Date": ["Wed, 04 Sep 2024 18:06:49 GMT"], "Content-Length": ["40"]}}
2024/09/04 18:06:49.714 ERROR   http.log.access handled request {"request": {"remote_ip": "xxx.xxx.xx.xx", "remote_port": "34558", "proto": "HTTP/2.0", "method": "POST", "host": "api.netmaker.mysite.com:443", "uri": "/api/hosts/adm/authenticate", "headers": {"Content-Type": ["application/json"], "Content-Length": ["107"], "Accept-Encoding": ["gzip"], "User-Agent": ["Go-http-client/2.0"]}, "tls": {"resumed": false, "version": 772, "cipher_suite": 4865, "proto": "h2", "server_name": "api.netmaker.mysite.com"}}, "user_id": "", "duration": 0.000920167, "size": 40, "status": 400, "resp_headers": {"Content-Length": ["40"], "Server": ["Caddy"], "Alt-Svc": ["h3=\":443\"; ma=2592000"], "Content-Type": ["application/json"], "Date": ["Wed, 04 Sep 2024 18:06:49 GMT"]}}

Contributing guidelines

PapaZigE commented 2 months ago

I edited out my ip and hostname.