//go:build linux package awgserver import ( "fmt" "log/slog" "os/exec" ) func setTUNAddress(tunName, address string, logger *slog.Logger) error { cmd := exec.Command("ip", "addr", "add", address, "dev", tunName) if out, err := cmd.CombinedOutput(); err != nil { return fmt.Errorf("ip addr add: %s: %w", string(out), err) } cmd = exec.Command("ip", "link", "set", "up", "dev", tunName) if out, err := cmd.CombinedOutput(); err != nil { return fmt.Errorf("ip link set up: %s: %w", string(out), err) } logger.Info("TUN configured.", "name", tunName, "address", address) return nil }