Initial IPv6 support

This commit is contained in:
Jose
2020-02-16 13:22:32 -04:00
parent 32ddcd5439
commit 75fc18fec9
+16 -7
View File
@@ -47,26 +47,35 @@ running_jail() {
} }
validate_ip() { validate_ip() {
IPX_ADDR="ip4.addr"
IP6_MODE="disable"
ip6=$(echo "${IP}" | grep -E '^(([a-fA-F0-9:]+$)|([a-fA-F0-9:]+\/[0-9]{1,3}$))')
if [ -n "${ip6}" ]; then
echo -e "${COLOR_GREEN}Valid: (${ip6}).${COLOR_RESET}"
IPX_ADDR="ip6.addr"
IP6_MODE="new"
else
local IFS local IFS
ip=${IP} ip=${IP}
if expr "$ip" : '[0-9][0-9]*\.[0-9][0-9]*\.[0-9][0-9]*\.[0-9][0-9]*$' >/dev/null; then if expr "${ip}" : '[0-9][0-9]*\.[0-9][0-9]*\.[0-9][0-9]*\.[0-9][0-9]*$' >/dev/null; then
IFS=. IFS=.
set $ip set ${ip}
for quad in 1 2 3 4; do for quad in 1 2 3 4; do
if eval [ \$$quad -gt 255 ]; then if eval [ \$$quad -gt 255 ]; then
echo "fail ($ip)" echo "fail (${ip})"
exit 1 exit 1
fi fi
done done
if ifconfig | grep -w "$ip" >/dev/null; then if ifconfig | grep -w "$ip" >/dev/null; then
echo -e "${COLOR_YELLOW}Warning: ip address already in use ($ip).${COLOR_RESET}" echo -e "${COLOR_YELLOW}Warning: ip address already in use (${ip}).${COLOR_RESET}"
else else
echo -e "${COLOR_GREEN}Valid: ($ip).${COLOR_RESET}" echo -e "${COLOR_GREEN}Valid: (${ip}).${COLOR_RESET}"
fi fi
else else
echo -e "${COLOR_RED}Invalid: ($ip).${COLOR_RESET}" echo -e "${COLOR_RED}Invalid: (${ip}).${COLOR_RESET}"
exit 1 exit 1
fi fi
fi
} }
validate_netif() { validate_netif() {
@@ -185,7 +194,7 @@ mount.devfs;
mount.fstab = ${bastille_jail_fstab}; mount.fstab = ${bastille_jail_fstab};
${NAME} { ${NAME} {
ip4.addr = ${IP}; ${IPX_ADDR} = ${IP};
} }
EOF EOF
fi fi