|
Line
Link Here
|
| 0 |
-- etc/dists/scripts/etcnet-add_ip.sh |
0 |
++ etc/dists/scripts/etcnet-add_ip.sh |
|
Lines 58-63
destroy_venet_config()
Link Here
|
| 58 |
error "Cannot destroy $dir" ${VZ_FS_NO_DISK_SPACE} |
58 |
error "Cannot destroy $dir" ${VZ_FS_NO_DISK_SPACE} |
| 59 |
} |
59 |
} |
| 60 |
|
60 |
|
|
|
61 |
del_ipv6_conf() |
| 62 |
{ |
| 63 |
local dir="$1"; shift |
| 64 |
|
| 65 |
if [ -f "$dir/ipv6address" ]; then |
| 66 |
rm -f "$dir/ipv6address" || |
| 67 |
error "Cannot remove $dir/ipv6address" ${VZ_FS_NO_DISK_SPACE} |
| 68 |
fi |
| 69 |
|
| 70 |
if [ -f "$dir/ipv6route" ]; then |
| 71 |
rm -f "$dir/ipv6route" || |
| 72 |
error "Cannot remove $dir/ipv6route" ${VZ_FS_NO_DISK_SPACE} |
| 73 |
fi |
| 74 |
|
| 75 |
del_param ".tmp/$VENET_DEV/options" "CONFIG_IPV6=yes" |
| 76 |
|
| 77 |
} |
| 78 |
|
| 79 |
|
| 61 |
setup_network() |
80 |
setup_network() |
| 62 |
{ |
81 |
{ |
| 63 |
# Purge old venet0 interface settings |
82 |
# Purge old venet0 interface settings |
|
Lines 74-79
setup_network()
Link Here
|
| 74 |
echo '127.0.0.1 localhost.localdomain localhost' >"$HOSTFILE" |
93 |
echo '127.0.0.1 localhost.localdomain localhost' >"$HOSTFILE" |
| 75 |
} |
94 |
} |
| 76 |
|
95 |
|
|
|
96 |
|
| 77 |
create_alias() |
97 |
create_alias() |
| 78 |
{ |
98 |
{ |
| 79 |
local ip="$1"; shift |
99 |
local ip="$1"; shift |
|
Lines 84-89
create_alias()
Link Here
|
| 84 |
error "Cannot create .tmp/$VENET_DEV/ipv4address" ${VZ_FS_NO_DISK_SPACE} |
104 |
error "Cannot create .tmp/$VENET_DEV/ipv4address" ${VZ_FS_NO_DISK_SPACE} |
| 85 |
} |
105 |
} |
| 86 |
|
106 |
|
|
|
107 |
add_ip6() { |
| 108 |
local ip="$1"; shift |
| 109 |
local mask="$1"; shift |
| 110 |
|
| 111 |
[ "${IPV6}" != "yes" ] && return |
| 112 |
|
| 113 |
if ! grep -qw "$ip" ".tmp/$VENET_DEV/ipv6address" 2>/dev/null; then |
| 114 |
echo "2000::/3 dev $VENET_DEV" > ".tmp/$VENET_DEV/ipv6route" || |
| 115 |
error "Cannot create .tmp/$VENET_DEV/ipv6route" ${VZ_FS_NO_DISK_SPACE} |
| 116 |
|
| 117 |
echo "$ip/$mask" >> ".tmp/$VENET_DEV/ipv6address" || |
| 118 |
error "Cannot create .tmp/$VENET_DEV/ipv6address" ${VZ_FS_NO_DISK_SPACE} |
| 119 |
|
| 120 |
put_param ".tmp/$VENET_DEV/options" "CONFIG_IPV6" "yes" |
| 121 |
fi |
| 122 |
} |
| 123 |
|
| 124 |
|
| 87 |
backup_configs() |
125 |
backup_configs() |
| 88 |
{ |
126 |
{ |
| 89 |
rm -rf .tmp && mkdir -p .tmp || |
127 |
rm -rf .tmp && mkdir -p .tmp || |
|
Lines 125-132
add_ip()
Link Here
|
| 125 |
local i=0 ipm |
163 |
local i=0 ipm |
| 126 |
for ipm; do |
164 |
for ipm; do |
| 127 |
ip_conv $ipm |
165 |
ip_conv $ipm |
| 128 |
i="$(find_unused_alias "$(($i+1))")" |
166 |
if [ -z "$_IPV6ADDR" ]; then |
| 129 |
create_alias "$_IP" "$_MASK" "$i" |
167 |
i="$(find_unused_alias "$(($i+1))")" |
|
|
168 |
create_alias "$_IP" "$_MASK" "$i" |
| 169 |
else |
| 170 |
if [ "$IPDELALL" = "yes" ]; then |
| 171 |
del_ipv6_conf "$VENET_DEV" |
| 172 |
fi |
| 173 |
add_ip6 "${_IP}" "${_MASK}" |
| 174 |
fi |
| 130 |
done |
175 |
done |
| 131 |
|
176 |
|
| 132 |
move_configs |
177 |
move_configs |
| 133 |
-- etc/dists/scripts/etcnet-del_ip.sh |
178 |
++ etc/dists/scripts/etcnet-del_ip.sh |
|
Lines 59-66
del_ip()
Link Here
|
| 59 |
local ipm quoted |
59 |
local ipm quoted |
| 60 |
for ipm; do |
60 |
for ipm; do |
| 61 |
ip_conv $ipm |
61 |
ip_conv $ipm |
|
|
62 |
|
| 62 |
quoted="$(quote_sed_regexp "$_IP/$_MASK")" |
63 |
quoted="$(quote_sed_regexp "$_IP/$_MASK")" |
| 63 |
sed -i -e "/^$quoted/d" "$VENET_DEV/ipv4address" |
64 |
if [ -n "$_IPV6ADDR" ]; then |
|
|
65 |
sed -i -e "/^$quoted/d" "$VENET_DEV/ipv6address" |
| 66 |
if [ ! -s "$VENET_DEV/ipv6address" ]; then |
| 67 |
rm -f -- "$VENET_DEV/ipv6address" |
| 68 |
rm -f -- "$VENET_DEV/ipv6route" |
| 69 |
sed -i -e "/^CONFIG_IPV6/d" "$VENET_DEV/options" |
| 70 |
fi |
| 71 |
else |
| 72 |
sed -i -e "/^$quoted/d" "$VENET_DEV/ipv4address" |
| 73 |
fi |
| 64 |
ip addr del dev "$VENET_DEV" "$_IP/$_MASK" |
74 |
ip addr del dev "$VENET_DEV" "$_IP/$_MASK" |
| 65 |
done |
75 |
done |
| 66 |
|
76 |
|