#!/bin/bash LIBROOT="$(cd "$(dirname "${BASH_SOURCE[0]:-${(%):-%x}}")" && pwd)" function wg::install() { case $OSRELEASE in ubuntu) apt update -y apt install -y wireguard ;; arch) pacman -Sy --noconfirm wireguard-tools pacman -Sy --noconfirm iptables ;; esac } function wg::start() { dev=$1 privatekey=$2 localip=$3 localip6=$4 port=$5 ip link del dev $dev type wireguard ip link add dev $dev type wireguard ip address add dev $dev $localip ip -6 addr add $localip6 dev $dev wg set wg0 listen-port $port private-key $privatekey ip link set up dev $dev } function wg::gen_peer(){ numpath=$1 peer=$2 } function wg::genkey() { wg genkey | tee privatekey | wg pubkey > publickey } function wg::client_stop() { ip link set down dev $1 ip link del dev $1 } echo "lib wg loaded."