You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
63 lines
1.1 KiB
63 lines
1.1 KiB
#!/usr/bin/env bash
|
|
|
|
set -eu
|
|
|
|
DESC="Conguration IPv6 de base du réseau"
|
|
|
|
|
|
SYSTEMS="bigboss lambda nomade societe tiny web"
|
|
|
|
setIpv6() {
|
|
echo "$@"
|
|
host=$1
|
|
eth=$2
|
|
|
|
addr=$(vdn-ssh root@$host "ifconfig $eth" | grep 'inet6:.*fe80:' | head -n 1 | tr -s ' ' | cut -d ' ' -f 4)
|
|
|
|
[ -z "$addr" ] && return || :
|
|
|
|
case "$3" in
|
|
site) new=$(echo "$addr" | sed -re 's/^fe80:/fec0:/');;
|
|
global) new=$(echo "$addr" | sed -re 's/^fe80:/2002:/');;
|
|
esac
|
|
|
|
exist=false
|
|
if vdn-ssh root@$host "ifconfig $eth" | grep -q "inet6:.*$new"; then
|
|
exist=true
|
|
fi
|
|
|
|
if [ $exist = false ]; then
|
|
echo "$host : ifconfig $eth inet6 add $new"
|
|
vdn-ssh root@$host "
|
|
ifconfig $eth inet6 add $new/64
|
|
"
|
|
fi
|
|
|
|
}
|
|
|
|
run() {
|
|
setErrorHandler
|
|
echoStart
|
|
|
|
requireSshGuests $SYSTEMS
|
|
waitSsh $SYSTEMS
|
|
|
|
for i in $SYSTEMS; do
|
|
setIpv6WorkAround $i
|
|
done
|
|
|
|
setIpv6 tiny eth1 site
|
|
setIpv6 bigboss eth0 site
|
|
setIpv6 web eth0 site
|
|
setIpv6 societe eth1 site
|
|
setIpv6 societe eth2 site
|
|
setIpv6 societe eth0 global
|
|
setIpv6 nomade eth0 global
|
|
setIpv6 lambda eth0 global
|
|
|
|
unsetErrorHandler
|
|
echoDone
|
|
}
|
|
|
|
|