diff --git a/ReleaseNotes.txt b/ReleaseNotes.txt index df4fb90..4835848 100644 --- a/ReleaseNotes.txt +++ b/ReleaseNotes.txt @@ -1,5 +1,5 @@ ------------------------------------------------------------------------------------------------------------------------------------ -Network Tools V 1.2.0 - A. GIBERT - 2026/04/23 +Network Tools V 1.2.0 - A. GIBERT - 2026/05/03 ------------------------------------------------------------------------------------------------------------------------------------ - Split repository to remove the Rx3 configuration part and push it to rx3-config repo, diff --git a/SPECS/network_tools.spec b/SPECS/network_tools.spec index 7564e4e..2e663df 100644 --- a/SPECS/network_tools.spec +++ b/SPECS/network_tools.spec @@ -35,14 +35,19 @@ +#----------------------------------------------------------------------------------------------------------------------------------- +# Package +#----------------------------------------------------------------------------------------------------------------------------------- + Name: %{name} Version: %{version} Release: %{release} + Summary: Rx3 Network Tools + License: GPL URL: https://git.rx3.org/gitea/rx3/%{name} - -Source0: https://git.rx3.org/gitea/rx3/%{name}/archive/%{name}-%{version}.tar.gz +Group: System Distribution: Rx3 Free Software Vendor: Rx3 @@ -52,6 +57,9 @@ BuildArch: noarch Requires: %{name}-libs +Source0: https://git.rx3.org/gitea/rx3/%{name}/archive/%{name}-%{version}.tar.gz + + %description These tools aims to manage network operation on Rx3 systems. This include: @@ -72,7 +80,7 @@ This release support IPTables and OpenVPN. %package libs Summary: Rx3 Network Tools Libraries -Requires: rx3-base +Requires: rx3-base-libs Requires: bind-utils @@ -113,6 +121,8 @@ This is the bash libraires. # Config %{__mkdir_p} %{buildroot}%{_sysconfdir}/sysconfig cp etc/sysconfig/* %{buildroot}%{_sysconfdir}/sysconfig +%{__mkdir_p} %{buildroot}%{_sysconfdir}/sudoers.d +cp etc/sudoers.d/* %{buildroot}%{_sysconfdir}/sudoers.d # SystemD %{__mkdir_p} %{buildroot}%{_unitdir} @@ -180,6 +190,7 @@ cp www/cgi-bin/*.cgi %{buildroot}%{_webcgi} %doc ReadMe.txt ReleaseNotes.txt ToDo.txt %license COPYING COPYING.LESSER GNU_GPL-3.0.txt GNU_LGPL-3.0.txt GNU_FDL-1.3.txt %config(noreplace) %{_sysconfdir}/sysconfig/* +%config(noreplace) %{_sysconfdir}/sudoers.d/* %defattr(644,root,root) %{_sysconfdir}/bash_completion.d/* %{_unitdir}/*.service @@ -202,5 +213,5 @@ cp www/cgi-bin/*.cgi %{buildroot}%{_webcgi} #----------------------------------------------------------------------------------------------------------------------------------- %changelog -* Tue Apr 21 2026 Arnaud G. GIBERT - 1.2.0-1rx3.mga9 +* Sun May 3 2026 Arnaud G. GIBERT - 1.2.0-1rx3.mga9 - Create initial SPEC file for 1.2.0 on Mageia 9 diff --git a/etc/sudoers.d/rx3-network b/etc/sudoers.d/rx3-network new file mode 100644 index 0000000..ed13de1 --- /dev/null +++ b/etc/sudoers.d/rx3-network @@ -0,0 +1,2 @@ +# Rx3 VPN Admin Board +apache ALL= NOPASSWD: /usr/sbin/rx3_net_adm, /usr/sbin/iptables_list, /usr/sbin/cert_dump, /usr/sbin/ns-launch, /usr/sbin/openvpn-status diff --git a/lib/rx3/dns.bash b/lib/rx3/dns.bash index 71f86f8..b0ff9ad 100644 --- a/lib/rx3/dns.bash +++ b/lib/rx3/dns.bash @@ -46,10 +46,10 @@ fi # Global Variable #----------------------------------------------------------------------------------------------------------------------------------- -declare -Ag DNS_A_TAB +declare -Ag DNS_A_TAB=() declare -g DNS_A_ID_LIST="" -declare -Ag DNS_PTR_TAB +declare -Ag DNS_PTR_TAB=() declare -g DNS_PTR_ID_LIST="" declare -g DNS_CACHE_FILE="" @@ -63,7 +63,7 @@ declare -g DNS_CACHE_UPDATED=0 #-------------------------------------------------------------------------------------------------------------------------- -# dns_tab_load +# Dns Tab Load #-------------------------------------------------------------------------------------------------------------------------- dns_tab_load() @@ -106,7 +106,7 @@ dns_tab_load() #-------------------------------------------------------------------------------------------------------------------------- -# dns_tab_save +# Dns Tab Save #-------------------------------------------------------------------------------------------------------------------------- dns_tab_save() @@ -142,7 +142,7 @@ dns_tab_save() #-------------------------------------------------------------------------------------------------------------------------- -# dns_tab_get +# Dns Tab Get #-------------------------------------------------------------------------------------------------------------------------- dns_tab_get() @@ -184,7 +184,7 @@ dns_tab_get() #-------------------------------------------------------------------------------------------------------------------------- -# dns_tab_put +# Dns Tab Put #-------------------------------------------------------------------------------------------------------------------------- dns_tab_put() @@ -212,14 +212,14 @@ dns_tab_put() #-------------------------------------------------------------------------------------------------------------------------- -# dns_lookup +# Dns Lookup #-------------------------------------------------------------------------------------------------------------------------- dns_lookup() { dl_type="$1" dl_key="$2" - dl_flag="$3" + dl_flag="${3:-"CACHE"}" if [[ "${dl_flag}" != "NOCACHE" ]] @@ -257,7 +257,7 @@ dns_lookup() #-------------------------------------------------------------------------------------------------------------------------- -# dns_tab_dump +# Dns Tab Dump #-------------------------------------------------------------------------------------------------------------------------- dns_tab_dump() @@ -292,7 +292,7 @@ dns_tab_dump() #-------------------------------------------------------------------------------------------------------------------------- -# dns_host_update +# Dns Host Update #-------------------------------------------------------------------------------------------------------------------------- dns_host_update() @@ -328,7 +328,7 @@ dns_host_update() #-------------------------------------------------------------------------------------------------------------------------- -# dns_init +# Dns Init #-------------------------------------------------------------------------------------------------------------------------- dns_init() @@ -342,7 +342,7 @@ dns_init() #-------------------------------------------------------------------------------------------------------------------------- -# dns_deinit +# Dns Deinit #-------------------------------------------------------------------------------------------------------------------------- dns_deinit() diff --git a/lib/rx3/network.bash b/lib/rx3/network.bash index 2f8c7e0..483838f 100644 --- a/lib/rx3/network.bash +++ b/lib/rx3/network.bash @@ -48,20 +48,20 @@ fi declare -g NETWORK_OPENVPN_STATUS -declare -Ag NETWORK_IP_ROUTE_TAB -declare -g NETWORK_IP_ROUTE_ID_LIST -declare -Ag NETWORK_IP_ROUTE_IP_IDX +declare -Ag NETWORK_IP_ROUTE_TAB=() +declare -g NETWORK_IP_ROUTE_ID_LIST="" +declare -Ag NETWORK_IP_ROUTE_IP_IDX=() -declare -g NETWORK_SRC_TYPE -declare -Ag NETWORK_SRC_TAB -declare -g NETWORK_SRC_ID_LIST -declare -Ag NETWORK_SRC_IP_IDX +declare -g NETWORK_SRC_TYPE="" +declare -Ag NETWORK_SRC_TAB=() +declare -g NETWORK_SRC_ID_LIST="" +declare -Ag NETWORK_SRC_IP_IDX="" -declare -g NETWORK_DST_TYPE -declare -Ag NETWORK_DST_TAB -declare -g NETWORK_DST_ID_LIST -declare -Ag NETWORK_DST_NAME_IDX -declare -Ag NETWORK_DST_DEV_IDX +declare -g NETWORK_DST_TYPE="" +declare -Ag NETWORK_DST_TAB=() +declare -g NETWORK_DST_ID_LIST="" +declare -Ag NETWORK_DST_NAME_IDX=() +declare -Ag NETWORK_DST_DEV_IDX=() declare -g NETWORK_CONFIG_FILE="/etc/sysconfig/rx3-network" declare -g NETWORK_CONFIG_LOCK="/var/lock/network/config" @@ -71,7 +71,7 @@ declare -g NETWORK_LOG_FILE declare -g NETWORK_LOG_LOCK #declare -g NETWORK_LOG_LOCK="${NETWORK_LOG_FILE}" -declare -g NETWORK_LOG_TRACE +declare -g NETWORK_LOG_TRACE="DISABLE" declare -g NETWORK_NC_TIMEOUT @@ -80,14 +80,14 @@ declare -g NETWORK_NC_TIMEOUT #-------------------------------------------------------------------------------------------------------------------------- -# network_common_load +# Network Common Load #-------------------------------------------------------------------------------------------------------------------------- network_common_load() { log_trace "Network" "Loading common..." - NETWORK_OPENVPN_STATUS="$( sudo /usr/local/sbin/openvpn-status)" + NETWORK_OPENVPN_STATUS="$( sudo openvpn-status)" NETWORK_TABLE_LIST="" } @@ -96,7 +96,7 @@ network_common_load() #-------------------------------------------------------------------------------------------------------------------------- -# network_common_dump +# Network Common Dump #-------------------------------------------------------------------------------------------------------------------------- network_common_dump() @@ -112,7 +112,7 @@ network_common_dump() #-------------------------------------------------------------------------------------------------------------------------- -# network_common_openvpn_stats_get +# Network Common Openvpn Stats Get #-------------------------------------------------------------------------------------------------------------------------- network_common_openvpn_stats_get() @@ -127,7 +127,7 @@ network_common_openvpn_stats_get() else if [[ "${device}" == "" ]] then - tmp="$( echo "${NETWORK_OPENVPN_STATUS}" | grep "CLIENT_LIST,${client},")" + tmp="$( echo "${NETWORK_OPENVPN_STATUS}" | grep "CLIENT_LIST,${client},")" || true tmp="${tmp/*\//}" device="${tmp/.status*/}" fi @@ -141,7 +141,7 @@ network_common_openvpn_stats_get() OIFS="${IFS}" IFS="," - set XXX/$( echo "${NETWORK_OPENVPN_STATUS}" | grep "${device}\.status: CLIENT_LIST,${client},") &>/dev/null + set XXX/$( echo "${NETWORK_OPENVPN_STATUS}" | grep "${device}\.status: CLIENT_LIST,${client},") &>/dev/null || true IFS="${OIFS}" tmp="${1/XXX*\//}" @@ -161,12 +161,15 @@ network_common_openvpn_stats_get() else # OpenVPN Client Mode - set XXX/$( echo "${NETWORK_OPENVPN_STATUS}" | grep "${device}\.status:") &>/dev/null + set XXX/$( echo "${NETWORK_OPENVPN_STATUS}" | grep "${device}\.status:") &>/dev/null || true - tmp="${1/XXX*\//}" + tmp="${1:-""}" + tmp="${tmp/XXX*\//}" ovpn_stat_device="${tmp/.status*/}" - ovpn_stat_bytes_received="${18/bytes,}" - ovpn_stat_bytes_sent="${22/bytes,}" + tmp="${18:-0}" + ovpn_stat_bytes_received="${tmp/bytes,/}" + tmp="${22:-0}" + ovpn_stat_bytes_sent="${tmp/bytes,/}" fi else ovpn_stat_device="" @@ -178,7 +181,7 @@ network_common_openvpn_stats_get() #-------------------------------------------------------------------------------------------------------------------------- -# network_ip_route_tab_load +# Network Ip Route Tab Load #-------------------------------------------------------------------------------------------------------------------------- network_ip_route_tab_load() @@ -217,7 +220,7 @@ network_ip_route_tab_load() #-------------------------------------------------------------------------------------------------------------------------- -# network_ip_route_tab_get +# Network Ip Route Tab Get #-------------------------------------------------------------------------------------------------------------------------- network_ip_route_tab_get() @@ -234,7 +237,7 @@ network_ip_route_tab_get() #-------------------------------------------------------------------------------------------------------------------------- -# network_ip_route_tab_dump +# Network Ip Route Tab Dump #-------------------------------------------------------------------------------------------------------------------------- network_ip_route_tab_dump() @@ -268,7 +271,7 @@ network_ip_route_tab_dump() #-------------------------------------------------------------------------------------------------------------------------- -# network_dst_tab_load +# Network Dst Tab Load #-------------------------------------------------------------------------------------------------------------------------- network_dst_tab_load() @@ -303,7 +306,7 @@ network_dst_tab_load() var_assign NETWORK_TABLE_LIST "${ndtl_table}" INC - ndtl_status="$( ip link show dev ${ndtl_device} 2>/dev/null | grep -q ",UP," && echo "1" || echo "0")" + ndtl_status="$( ip link show dev ${ndtl_device} 2>/dev/null | grep -q ",UP," && echo "1" || echo "0")" || true if [[ "${ndtl_type}" == "5" ]] @@ -322,8 +325,8 @@ network_dst_tab_load() case "${ndtl_type}" in "0") - ndtl_bytes_received="$( cat /sys/class/net/${ndtl_device}/statistics/rx_bytes 2>/dev/null | numfmt --to=iec-i --suffix=B)" - ndtl_bytes_sent="$( cat /sys/class/net/${ndtl_device}/statistics/tx_bytes 2>/dev/null | numfmt --to=iec-i --suffix=B)" + ndtl_bytes_received="$( cat /sys/class/net/${ndtl_device}/statistics/rx_bytes 2>/dev/null | numfmt --to=iec-i --suffix=B)" || true + ndtl_bytes_sent="$( cat /sys/class/net/${ndtl_device}/statistics/tx_bytes 2>/dev/null | numfmt --to=iec-i --suffix=B)" || true ;; "1"|"2") @@ -336,8 +339,8 @@ network_dst_tab_load() ndtl_bytes_received="" ndtl_bytes_sent="" else - ndtl_bytes_received="$( echo ${ovpn_stat_bytes_received} | numfmt --to=iec-i --suffix=B)" - ndtl_bytes_sent="$( echo ${ovpn_stat_bytes_sent} | numfmt --to=iec-i --suffix=B)" + ndtl_bytes_received="$( echo ${ovpn_stat_bytes_received} | numfmt --to=iec-i --suffix=B)" || true + ndtl_bytes_sent="$( echo ${ovpn_stat_bytes_sent} | numfmt --to=iec-i --suffix=B)" || true fi ;; esac @@ -352,10 +355,10 @@ network_dst_tab_load() if [[ "${ndtl_type}" == "1" ]] then ndtl_start_date="${ovpn_stat_connected_date}" - ndtl_uptime="$( echo $(( $(date +%s) - ${ovpn_stat_connected_time_t})) | awk '{days = int($1/86400); print days " day" (( days > 1 ) ? "s" : "") strftime(" %H:%M:%S", $1,1)}')" + ndtl_uptime="$( echo $(( $(date +%s) - ${ovpn_stat_connected_time_t})) | awk '{days = int($1/86400); print days " day" (( days > 1 ) ? "s" : "") strftime(" %H:%M:%S", $1,1)}')" || true else - ndtl_start_date="$( stat -c %Z /sys/class/net/${ndtl_device})" - ndtl_uptime="$( echo $(( $(date +%s) - ${ndtl_start_date})) | awk '{days = int($1/86400); print days " day" (( days > 1 ) ? "s" : "") strftime(" %H:%M:%S", $1,1)}')" + ndtl_start_date="$( stat -c %Z /sys/class/net/${ndtl_device})" || true + ndtl_uptime="$( echo $(( $(date +%s) - ${ndtl_start_date})) | awk '{days = int($1/86400); print days " day" (( days > 1 ) ? "s" : "") strftime(" %H:%M:%S", $1,1)}')" || true fi else ndtl_start_date="" @@ -381,7 +384,7 @@ network_dst_tab_load() #-------------------------------------------------------------------------------------------------------------------------- -# network_dst_tab_get +# Network Dst Tab Get #-------------------------------------------------------------------------------------------------------------------------- network_dst_tab_get() @@ -408,7 +411,7 @@ network_dst_tab_get() #-------------------------------------------------------------------------------------------------------------------------- -# network_dst_tab_dump +# Network Dst Tab Dump #-------------------------------------------------------------------------------------------------------------------------- network_dst_tab_dump() @@ -462,7 +465,7 @@ network_dst_tab_dump() #-------------------------------------------------------------------------------------------------------------------------- -# network_dst_tab_name_lookup +# Network Dst Tab Name Lookup #-------------------------------------------------------------------------------------------------------------------------- network_dst_tab_name_lookup() @@ -477,7 +480,7 @@ network_dst_tab_name_lookup() #-------------------------------------------------------------------------------------------------------------------------- -# network_dst_tab_dev_lookup +# Network Dst Tab Dev Lookup #-------------------------------------------------------------------------------------------------------------------------- network_dst_tab_dev_lookup() @@ -492,7 +495,7 @@ network_dst_tab_dev_lookup() #-------------------------------------------------------------------------------------------------------------------------- -# network_dst_ip_update +# Network Dst Ip Update #-------------------------------------------------------------------------------------------------------------------------- network_dst_ip_update() @@ -516,7 +519,7 @@ network_dst_ip_update() #-------------------------------------------------------------------------------------------------------------------------- -# network_dst_ip_update +# Network Dst Ip Update #-------------------------------------------------------------------------------------------------------------------------- network_dst_ip_update() @@ -539,7 +542,7 @@ network_dst_ip_update() #-------------------------------------------------------------------------------------------------------------------------- -# network_dst_name_ip_update +# Network Dst Name Ip Update #-------------------------------------------------------------------------------------------------------------------------- network_dst_name_ip_update() @@ -564,7 +567,7 @@ network_dst_name_ip_update() #-------------------------------------------------------------------------------------------------------------------------- -# network_src_tab_load +# Network Src Tab Load #-------------------------------------------------------------------------------------------------------------------------- network_src_tab_load() @@ -576,7 +579,7 @@ network_src_tab_load() log_trace "Network" "Loading Src tab..." - ip_base=$( ip_ip_to_num ${NETWORK_SRC_LOCAL_ADDRESS}) + ip_base=$( ip_ip_to_num ${NETWORK_SRC_LOCAL_ADDRESS}) || true while IFS= read -r line do @@ -613,14 +616,14 @@ network_src_tab_load() device_num="$(( ( ${ip_num} - ${ip_base}) / 4))" nstl_device="${NETWORK_SRC_LOCAL_DEVICE}-${device_num}" - nstl_status="$( ip link show dev ${nstl_device} 2>/dev/null | grep -q ",UP," && echo "1" || echo "0")" + nstl_status="$( ip link show dev ${nstl_device} 2>/dev/null | grep -q ",UP," && echo "1" || echo "0")" || true if [[ "${nstl_status}" == 1 ]] then - nstl_bytes_received="$( cat /sys/class/net/${nstl_device}/statistics/rx_bytes 2>/dev/null | numfmt --to=iec-i --suffix=B)" - nstl_bytes_sent="$( cat /sys/class/net/${nstl_device}/statistics/tx_bytes 2>/dev/null | numfmt --to=iec-i --suffix=B)" - nstl_start_date="$( stat -c %Z /sys/class/net/${nstl_device})" - nstl_uptime="$( echo $(( $(date +%s) - ${nstl_start_date})) | awk '{days = int($1/86400); print days " day" (( days > 1 ) ? "s" : "") strftime(" %H:%M:%S", $1,1)}')" + nstl_bytes_received="$( cat /sys/class/net/${nstl_device}/statistics/rx_bytes 2>/dev/null | numfmt --to=iec-i --suffix=B)" || true + nstl_bytes_sent="$( cat /sys/class/net/${nstl_device}/statistics/tx_bytes 2>/dev/null | numfmt --to=iec-i --suffix=B)" || true + nstl_start_date="$( stat -c %Z /sys/class/net/${nstl_device})" || true + nstl_uptime="$( echo $(( $(date +%s) - ${nstl_start_date})) | awk '{days = int($1/86400); print days " day" (( days > 1 ) ? "s" : "") strftime(" %H:%M:%S", $1,1)}')" || true else nstl_bytes_received="" nstl_bytes_sent="" @@ -635,6 +638,7 @@ network_src_tab_load() nstl_bytes_received="" nstl_bytes_sent="" + nstl_start_date="" nstl_uptime="" nstl_last_seen="" ;; @@ -650,15 +654,15 @@ network_src_tab_load() nstl_bytes_sent="" nstl_start_date="" nstl_uptime="" - nstl_last_seen="$( stat -c "%x" /etc/openvpn/status/${nstl_host_name}.status 2>/dev/null | sed -e 's/\..*//')" + nstl_last_seen="$( stat -c "%x" /etc/openvpn/status/${nstl_host_name}.status 2>/dev/null | sed -e 's/\..*//')" || true else nstl_device="${ovpn_stat_device}" nstl_status="1" - nstl_bytes_received=$( echo ${ovpn_stat_bytes_sent} | numfmt --to=iec-i --suffix=B) - nstl_bytes_sent=$( echo ${ovpn_stat_bytes_sent} | numfmt --to=iec-i --suffix=B) + nstl_bytes_received=$( echo ${ovpn_stat_bytes_sent} | numfmt --to=iec-i --suffix=B) || true + nstl_bytes_sent=$( echo ${ovpn_stat_bytes_sent} | numfmt --to=iec-i --suffix=B) || true nstl_start_date=${ovpn_stat_connected_date} - nstl_uptime=$( echo "$(($(date +%s) - $(date -d "${nstl_start_date}" +%s)))" | awk '{days = int($1/86400); print days " day" (( days > 1 ) ? "s" : "") strftime(" %H:%M:%S", $1,1)}') - nstl_last_seen="$(stat -c "%x" /etc/openvpn/status/${nstl_host_name}.status 2>/dev/null | sed -e 's/\..*//')" + nstl_uptime=$( echo "$(($(date +%s) - $(date -d "${nstl_start_date}" +%s)))" | awk '{days = int($1/86400); print days " day" (( days > 1 ) ? "s" : "") strftime(" %H:%M:%S", $1,1)}') || true + nstl_last_seen="$(stat -c "%x" /etc/openvpn/status/${nstl_host_name}.status 2>/dev/null | sed -e 's/\..*//')" || true fi ;; esac @@ -684,6 +688,7 @@ network_src_tab_load() tab_assign NETWORK_SRC_TAB "${nstl_id},Status" "${nstl_status}" tab_assign NETWORK_SRC_TAB "${nstl_id},Bytes_Received" "${nstl_bytes_received}" tab_assign NETWORK_SRC_TAB "${nstl_id},Bytes_Sent" "${nstl_bytes_sent}" + tab_assign NETWORK_SRC_TAB "${nstl_id},Start_Date" "${nstl_start_date}" tab_assign NETWORK_SRC_TAB "${nstl_id},Uptime" "${nstl_uptime}" tab_assign NETWORK_SRC_TAB "${nstl_id},Last_Seen" "${nstl_last_seen}" @@ -700,7 +705,7 @@ network_src_tab_load() #-------------------------------------------------------------------------------------------------------------------------- -# network_src_tab_get +# Network Src Tab Get #-------------------------------------------------------------------------------------------------------------------------- network_src_tab_get() @@ -738,7 +743,7 @@ network_src_tab_get() #-------------------------------------------------------------------------------------------------------------------------- -# network_src_tab_dump +# Network Src Tab Dump #-------------------------------------------------------------------------------------------------------------------------- network_src_tab_dump() @@ -780,7 +785,7 @@ network_src_tab_dump() #-------------------------------------------------------------------------------------------------------------------------- -# network_src_tab_ip_lookup +# Network Src Tab Ip Lookup #-------------------------------------------------------------------------------------------------------------------------- network_src_tab_ip_lookup() @@ -795,7 +800,7 @@ network_src_tab_ip_lookup() #-------------------------------------------------------------------------------------------------------------------------- -# network_tab_load +# Network Tab Load #-------------------------------------------------------------------------------------------------------------------------- network_tab_load() @@ -818,7 +823,7 @@ network_tab_load() #-------------------------------------------------------------------------------------------------------------------------- -# network_tab_dump +# Network Tab Dump #-------------------------------------------------------------------------------------------------------------------------- network_tab_dump() @@ -837,7 +842,7 @@ network_tab_dump() #-------------------------------------------------------------------------------------------------------------------------- -# network_route_dst_init +# Network Route Dst Init #-------------------------------------------------------------------------------------------------------------------------- network_route_dst_init() @@ -873,7 +878,7 @@ network_route_dst_init() #-------------------------------------------------------------------------------------------------------------------------- -# network_route_rx3_init +# Network Route Rx3 Init #-------------------------------------------------------------------------------------------------------------------------- network_route_rx3_init() @@ -904,7 +909,7 @@ network_route_rx3_init() #-------------------------------------------------------------------------------------------------------------------------- -# network_route_other_init +# Network Route Other Init #-------------------------------------------------------------------------------------------------------------------------- network_route_other_init() @@ -933,7 +938,7 @@ network_route_other_init() #-------------------------------------------------------------------------------------------------------------------------- -# network_device_init +# Network Device Init #-------------------------------------------------------------------------------------------------------------------------- network_device_init() @@ -963,7 +968,7 @@ network_device_init() #-------------------------------------------------------------------------------------------------------------------------- -# network_device_deinit +# Network Device Deinit #-------------------------------------------------------------------------------------------------------------------------- network_device_deinit() @@ -992,7 +997,7 @@ network_device_deinit() #-------------------------------------------------------------------------------------------------------------------------- -# network_route_init +# Network Route Init #-------------------------------------------------------------------------------------------------------------------------- network_route_init() @@ -1015,7 +1020,7 @@ network_route_init() #-------------------------------------------------------------------------------------------------------------------------- -# network_route_deinit +# Network Route Deinit #-------------------------------------------------------------------------------------------------------------------------- network_route_deinit() @@ -1048,7 +1053,7 @@ network_route_deinit() #-------------------------------------------------------------------------------------------------------------------------- -# network_table_set +# Network Table Set #-------------------------------------------------------------------------------------------------------------------------- network_table_set() @@ -1085,7 +1090,7 @@ network_table_set() #-------------------------------------------------------------------------------------------------------------------------- -# network_dst_address_init_all +# Network Dst Address Init All #-------------------------------------------------------------------------------------------------------------------------- network_dst_address_init_all() @@ -1102,7 +1107,7 @@ network_dst_address_init_all() #-------------------------------------------------------------------------------------------------------------------------- -# network_dst_address_refresh +# Network Dst Address Refresh #-------------------------------------------------------------------------------------------------------------------------- network_dst_address_refresh() @@ -1129,7 +1134,7 @@ network_dst_address_refresh() log_info "Network" "Reseting IP: [${dst_host_name}]: IP: [${dst_ip_new}] Status: (${dst_status})" dst_ip_new="0.0.0.0" else - dst_ip_new="$( nc -w "${NETWORK_NC_TIMEOUT}" "${proxy_host}" "${proxy_port}" 2>/dev/null)" + dst_ip_new="$( nc -w "${NETWORK_NC_TIMEOUT}" "${proxy_host}" "${proxy_port}" 2>/dev/null)" || true fi if ip_is_valid_ip "${dst_ip_new}" @@ -1157,7 +1162,7 @@ network_dst_address_refresh() #-------------------------------------------------------------------------------------------------------------------------- -# network_dst_address_refresh_all +# Network Dst Address Refresh All #-------------------------------------------------------------------------------------------------------------------------- network_dst_address_refresh_all() @@ -1173,7 +1178,7 @@ network_dst_address_refresh_all() #-------------------------------------------------------------------------------------------------------------------------- -# bridge_up +# Bridge Up #-------------------------------------------------------------------------------------------------------------------------- function bridge_up @@ -1215,7 +1220,7 @@ function bridge_up #-------------------------------------------------------------------------------------------------------------------------- -# bridge_down +# Bridge Down #-------------------------------------------------------------------------------------------------------------------------- function bridge_down @@ -1248,7 +1253,7 @@ function bridge_down #-------------------------------------------------------------------------------------------------------------------------- -# network_bridge_init +# Network Bridge Init #-------------------------------------------------------------------------------------------------------------------------- network_bridge_init() @@ -1277,7 +1282,7 @@ network_bridge_init() #-------------------------------------------------------------------------------------------------------------------------- -# network_bridge_deinit +# Network Bridge Deinit #-------------------------------------------------------------------------------------------------------------------------- network_bridge_deinit() @@ -1306,7 +1311,7 @@ network_bridge_deinit() #-------------------------------------------------------------------------------------------------------------------------- -# network_forward_add +# Network Forward Add #-------------------------------------------------------------------------------------------------------------------------- network_forward_add() @@ -1325,7 +1330,7 @@ network_forward_add() #-------------------------------------------------------------------------------------------------------------------------- -# network_forward_remove +# Network Forward Remove #-------------------------------------------------------------------------------------------------------------------------- network_forward_remove() @@ -1343,7 +1348,7 @@ network_forward_remove() #-------------------------------------------------------------------------------------------------------------------------- -# network_forward_start +# Network Forward Start #-------------------------------------------------------------------------------------------------------------------------- network_forward_start() @@ -1390,7 +1395,7 @@ network_forward_start() #-------------------------------------------------------------------------------------------------------------------------- -# network_forward_stop +# Network Forward Stop #-------------------------------------------------------------------------------------------------------------------------- network_forward_stop() @@ -1433,19 +1438,11 @@ network_forward_stop() #-------------------------------------------------------------------------------------------------------------------------- -# network_init +# Network Init #-------------------------------------------------------------------------------------------------------------------------- network_init() { - file_dir_init ${NETWORK_CONFIG_LOCK} root apache - file_lock ${NETWORK_CONFIG_LOCK} READ 9 - - [ -e "${NETWORK_CONFIG_FILE}" ] && . "${NETWORK_CONFIG_FILE}" - - file_unlock 9 - - # By default Loggin is enabled # export LOG="" to disable it @@ -1464,6 +1461,14 @@ network_init() export ECHO=":" fi + file_dir_init ${NETWORK_CONFIG_LOCK} root apache + file_lock ${NETWORK_CONFIG_LOCK} READ 9 + + [ -e "${NETWORK_CONFIG_FILE}" ] && . "${NETWORK_CONFIG_FILE}" + + file_unlock 9 + + log_set "${NETWORK_LOG_FILE}" "${NETWORK_LOG_LOCK}" "${ECHO}" "${NETWORK_LOG_TRACE}" @@ -1480,7 +1485,7 @@ network_init() #-------------------------------------------------------------------------------------------------------------------------- -# network_deinit +# Network Deinit #-------------------------------------------------------------------------------------------------------------------------- network_deinit() @@ -1510,7 +1515,7 @@ network_deinit() #-------------------------------------------------------------------------------------------------------------------------- -# network_reinit +# Network Reinit #-------------------------------------------------------------------------------------------------------------------------- network_reinit() @@ -1524,7 +1529,7 @@ network_reinit() #-------------------------------------------------------------------------------------------------------------------------- -# network_start +# Network Start #-------------------------------------------------------------------------------------------------------------------------- network_start() @@ -1547,7 +1552,7 @@ network_start() #-------------------------------------------------------------------------------------------------------------------------- -# network_stop +# Network Stop #-------------------------------------------------------------------------------------------------------------------------- network_stop() @@ -1570,7 +1575,7 @@ network_stop() #-------------------------------------------------------------------------------------------------------------------------- -# network_status +# Network Status #-------------------------------------------------------------------------------------------------------------------------- network_status() @@ -1592,7 +1597,7 @@ network_status() then echo ${src_device} fi - done | sort -u + done | sort -Vu echo "DST" for dst_id in ${NETWORK_DST_ID_LIST} @@ -1603,7 +1608,7 @@ network_status() then echo ${dst_device} fi - done | sort -u + done | sort -Vu ) | while read entry do case ${entry} @@ -1619,11 +1624,11 @@ network_status() ;; *) - ip address show $entry | sed -e 's/^[^:]*: //' + ip address show $entry | sed -e 's/^[^:]*: //' || true ;; esac done - + echo echo "Rules:" @@ -1639,15 +1644,15 @@ network_status() do echo "Table ${table}:" - ip route list table ${table} + ip route list table ${table} || true echo done fi - + echo "Forward:" - iptables -t nat -L PREROUTING -v -n + iptables -t nat -L PREROUTING -v -n || true echo - iptables -t nat -L PREROUTING-VPN -v -n + iptables -t nat -L PREROUTING-VPN -v -n || true } diff --git a/lib/rx3/vpn.bash b/lib/rx3/vpn.bash index 0d45d61..85d2b7c 100644 --- a/lib/rx3/vpn.bash +++ b/lib/rx3/vpn.bash @@ -46,9 +46,9 @@ fi # Global Variable #----------------------------------------------------------------------------------------------------------------------------------- -declare -Ag VPN_JOB_TAB -declare -Ag VPN_JOB_ID_LIST -declare -Ag VPN_JOB_NAME_IDX +declare -Ag VPN_JOB_TAB=() +declare -g VPN_JOB_ID_LIST="" +declare -Ag VPN_JOB_NAME_IDX=() declare -g VPN_PID_FILE declare -g VPN_STATUS_FILE @@ -59,7 +59,7 @@ declare -g VPN_STATUS_LOCK #-------------------------------------------------------------------------------------------------------------------------- -# vpn_config_make +# VPN Config Make #-------------------------------------------------------------------------------------------------------------------------- vpn_config_make() @@ -81,7 +81,7 @@ vpn_config_make() #-------------------------------------------------------------------------------------------------------------------------- -# vpn_config_make_all +# VPN Config Make All #-------------------------------------------------------------------------------------------------------------------------- vpn_config_make_all() @@ -108,7 +108,7 @@ vpn_config_make_all() #-------------------------------------------------------------------------------------------------------------------------- -# vpn_job_tab_load +# VPN Job Tab Load #-------------------------------------------------------------------------------------------------------------------------- vpn_job_tab_load() @@ -153,7 +153,7 @@ vpn_job_tab_load() #-------------------------------------------------------------------------------------------------------------------------- -# vpn_job_tab_get +# VPN Job Tab Get #-------------------------------------------------------------------------------------------------------------------------- vpn_job_tab_get() @@ -172,7 +172,7 @@ vpn_job_tab_get() #-------------------------------------------------------------------------------------------------------------------------- -# vpn_job_tab_save +# VPN Job Tab Save #-------------------------------------------------------------------------------------------------------------------------- vpn_job_tab_save() @@ -211,7 +211,7 @@ VPN_STATUS=" #-------------------------------------------------------------------------------------------------------------------------- -# vpn_job_tab_init +# VPN Job Tab Init #-------------------------------------------------------------------------------------------------------------------------- vpn_job_tab_init() @@ -252,7 +252,7 @@ vpn_job_tab_init() #-------------------------------------------------------------------------------------------------------------------------- -# vpn_job_tab_deinit +# VPN Job Tab Deinit #-------------------------------------------------------------------------------------------------------------------------- vpn_job_tab_deinit() @@ -286,7 +286,7 @@ vpn_job_tab_deinit() #-------------------------------------------------------------------------------------------------------------------------- -# vpn_job_tab_dump +# VPN Job Tab Dump #-------------------------------------------------------------------------------------------------------------------------- vpn_job_tab_dump() @@ -318,7 +318,7 @@ vpn_job_tab_dump() #-------------------------------------------------------------------------------------------------------------------------- -# vpn_supervisor +# VPN Supervisor #-------------------------------------------------------------------------------------------------------------------------- vpn_supervisor() @@ -383,7 +383,7 @@ vpn_supervisor() #-------------------------------------------------------------------------------------------------------------------------- -# vpn_kill_jobs +# VPN Kill Jobs #-------------------------------------------------------------------------------------------------------------------------- vpn_jobs_kill() @@ -415,7 +415,7 @@ vpn_jobs_kill() #-------------------------------------------------------------------------------------------------------------------------- -# vpn_init +# VPN Init #-------------------------------------------------------------------------------------------------------------------------- vpn_init() @@ -447,7 +447,7 @@ vpn_init() #-------------------------------------------------------------------------------------------------------------------------- -# vpn_deinit +# VPN Deinit #-------------------------------------------------------------------------------------------------------------------------- vpn_deinit() @@ -460,7 +460,7 @@ vpn_deinit() #-------------------------------------------------------------------------------------------------------------------------- -# vpn_start +# VPN Start #-------------------------------------------------------------------------------------------------------------------------- vpn_start() @@ -502,7 +502,7 @@ vpn_start() #-------------------------------------------------------------------------------------------------------------------------- -# vpn_stop +# VPN Stop #-------------------------------------------------------------------------------------------------------------------------- vpn_stop() @@ -545,7 +545,7 @@ vpn_stop() #-------------------------------------------------------------------------------------------------------------------------- -# vpn_status +# VPN Status #-------------------------------------------------------------------------------------------------------------------------- vpn_status() diff --git a/sbin/rx3_net_adm b/sbin/rx3_net_adm index 95838da..10db37a 100755 --- a/sbin/rx3_net_adm +++ b/sbin/rx3_net_adm @@ -49,13 +49,16 @@ declare -g DRY_RUN="FALSE" declare -g RETVAL=0 declare -g prog="rx3-net" -declare -g DEBUG="" +declare -g DEBUG="${DEBUG-}" +#declare -g DEBUG="" #declare -g DEBUG="echo" #declare -g DEBUG=":" -declare -g LOG="" -#declare -g LOG=":" -#declare -g LOG="echo" +declare -g ECHO="${ECHO-}" +#declare -g ECHO="echo" +#declare -g ECHO=":" + +#declare -g LOG=""