summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xwg-genconf.py6
1 files changed, 5 insertions, 1 deletions
diff --git a/wg-genconf.py b/wg-genconf.py
index 1d98960..6b23283 100755
--- a/wg-genconf.py
+++ b/wg-genconf.py
@@ -186,13 +186,17 @@ def gc_if_data(if_):
'name': peer.name,
'pubkey': peer['pubkey'],
'ips': ipspecs_to_ips(peer, peerspec.get('ips', ['{peer}'])),
- 'endpoint': None,
'keepalive': (
peerspec['keepalive']
if 'keepalive' in peerspec
else if_.get('keepalive')),
}
if (host := peer.get('host')):
+ try:
+ ipaddress.IPv6Address(host)
+ host = f'[{host}]'
+ except ValueError:
+ pass
peer_data['endpoint'] = f'{host}:{peer.get('port', 51820)}'
if_data['peers'].append(peer_data)