From 469afb98140c2a33ecd0124381035423a2006e1e Mon Sep 17 00:00:00 2001 From: Jan Tuomi Date: Wed, 5 Aug 2026 13:53:07 +0300 Subject: Restructure jail ip references --- roles/jail/templates/jail_conf.j2 | 8 ++++---- roles/jail/templates/usr_local_bin_jail_net.j2 | 23 ++++++----------------- 2 files changed, 10 insertions(+), 21 deletions(-) (limited to 'roles/jail/templates') diff --git a/roles/jail/templates/jail_conf.j2 b/roles/jail/templates/jail_conf.j2 index aa88049..f4243c7 100644 --- a/roles/jail/templates/jail_conf.j2 +++ b/roles/jail/templates/jail_conf.j2 @@ -16,10 +16,10 @@ exec.stop = "/bin/sh /etc/rc.shutdown"; # Networking - exec.prestart += "jail_net prestart {{ jail.num }} ${name}"; - exec.poststart += "jail_net poststart {{ jail.num }} ${name}"; - exec.prestop += "jail_net prestop {{ jail.num }} ${name}"; - exec.poststop += "jail_net poststop {{ jail.num }} ${name}"; + exec.prestart += "jail_net prestart ${name} {{ jail.num }} {{ jail.ip }}"; + exec.poststart += "jail_net poststart ${name} {{ jail.num }} {{ jail.ip }}"; + exec.prestop += "jail_net prestop ${name} {{ jail.num }} {{ jail.ip }}"; + exec.poststop += "jail_net poststop ${name} {{ jail.num }} {{ jail.ip }}"; # Custom hooks {% for cmd in jail.exec_prestart %} diff --git a/roles/jail/templates/usr_local_bin_jail_net.j2 b/roles/jail/templates/usr_local_bin_jail_net.j2 index e9873a3..e8ce462 100644 --- a/roles/jail/templates/usr_local_bin_jail_net.j2 +++ b/roles/jail/templates/usr_local_bin_jail_net.j2 @@ -1,27 +1,16 @@ #!/bin/sh # jail_net - manage jail LAN networking lifecycle -# Usage: jail_net +# Usage: jail_net set -e STAGE="$1" -NUM="$2" -NAME="$3" +NAME="$2" +NUM="$3" +IP="$4" BRIDGE="brlan0" -LAN_BASE="{{ jail_lan_cidr | ipv4_host }}" -LAN_PREFIX="{{ jail_lan_cidr | ipv4_prefixlen }}" -LAN_OFFSET="{{ jail_lan_offset }}" -DEFAULT_ROUTE="{{ jail_lan_cidr | ipv4_nth(1 + jail_lan_offset | int) }}" - -# Compute jail IP from jail_num + offset -_nth=$(( LAN_OFFSET + NUM )) -_a=$(echo "$LAN_BASE" | cut -d. -f1) -_b=$(echo "$LAN_BASE" | cut -d. -f2) -_c=$(echo "$LAN_BASE" | cut -d. -f3) -_d=$(echo "$LAN_BASE" | cut -d. -f4) -_total=$(( (_a << 24) + (_b << 16) + (_c << 8) + _d + _nth )) -IP="$(( (_total >> 24) & 255 )).$(( (_total >> 16) & 255 )).$(( (_total >> 8) & 255 )).$(( _total & 255 ))/${LAN_PREFIX}" +DEFAULT_ROUTE="{{ jail_ips.ingress }}" # --- Cleanup functions --- @@ -121,7 +110,7 @@ case "$STAGE" in prestop) _prestop ;; poststop) _poststop ;; *) - echo "Usage: jail_net " >&2 + echo "Usage: jail_net " >&2 exit 1 ;; esac -- cgit v1.3