1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47
|
--- newvserver.20050418 2005-04-19 16:47:51.000000000 +0200
+++ newvserver 2005-04-19 16:59:20.000000000 +0200
@@ -92,7 +92,7 @@
full_usage ()
{
cat << EOF
-Usage: ${0##*/} [OPTIONS] --hostname x --domain y.z --ip 1.2.3.4
+Usage: ${0##*/} [OPTIONS] --hostname x --domain y.z --ip 1.2.3.4/24
Creates a new Debian vserver by calling "vserver ... build"
Options:
@@ -112,6 +112,7 @@
--hostname hostname for new vserver (eg. "alpha")
--domain dns domain for new vserver (eg. "example.com")
--ip IPv4 address for new vserver
+ (syntax: --ip <ip>[/<netmask|prefixlength>])
You can also set variables in /etc/vservers/newvserver-vars.
@@ -244,6 +245,18 @@
case "$2" in
[0-9]*.[0-9]*.[0-9]*.[0-9]*)
IP="$2"
+ # get netmask
+ IP_NETMASK=${IP##*/}
+ test "$IP_NETMASK" != "$1" || IP_NETMASK=
+ IP_ADDR=${IP%%/${IP_NETMASK}}
+ # if IP_NETMASK contains no ".", it is
+ # interpreted as IP_PREFIX
+ IP_PREFIX=
+ test "${IP_NETMASK%%.*}" != "${IP_NETMASK}" \
+ || {
+ IP_PREFIX=$IP_NETMASK
+ IP_NETMASK=
+ }
;;
*)
echo "${0##*/} error: $1 requires a single IPv4 e.g. \"192.168.100.1\"" 1>&2
@@ -385,7 +398,7 @@
# /etc/hosts
127.0.0.1 localhost
-$IP $VHOST.$VDOMAIN $VHOST
+$IP_ADDR $VHOST.$VDOMAIN $VHOST
# The following lines are desirable for IPv6 capable hosts
# (added automatically by netbase upgrade)
|