-#!/bin/bash
-
-# Wir brauchen: $ip $newhostname $macen $macwl
-# Der neue Rechner muss mit PXE und Preseed fertig sein
-
-ip="$1"
-newhostname="$2"
-
-# Nach den Werten fragen und in Variable schreiben,
-# wenn diese beim Aufruf vergessen wurden.
-if [ -z $ip ]
-then
- read -p "ip-Adresse des neuen Rechners: " ip
-fi
-if [ -z $newhostname ]
-then
- read -p "Hostname des neuen Rechners: " newhostname
-fi
-
-# temporaere hosts-Datei fuer ansible
-echo "$ip" > temphosts
-#cat temphosts
-
-# Pruefe, ob $ip in custom-list
-# wenn ja --> Abbruch
-#if grep ${ip} files/dns-pihole_custom.list
-#then
-# echo "IP bereits in dns-pihole_custom.list eingetragen"
-# echo " bitte entfernen oder andere IP auswählen! Abbruch :-("
-# exit 1
-#fi
-
-# suche in ../client-mgt/hosts nach $newhostname
-# wenn nein
-# stop,
-# Echo nicht in hosts dazhei, eingetragen, dann weiter
-if grep ${newhostname} ../client-mgt/hosts
-then
- echo "Rechnername in hosts-Datei eingetragen, suupi!"
-else
- echo "Rechnername fehlt in ../client-mgt/hosts. Abbruch :-("
- exit 1
-fi
-
-# suche in /home/ansible/.ssh/known_hosts nach $ip
-# wenn ja
-ssh-keygen -f "/home/ansible/.ssh/known_hosts" -R "$ip"
-#if grep ${ip} $HOME/.ssh/known_hosts
-
-ssh -o BatchMode=yes -o ConnectTimeout=5 -o StrictHostKeyChecking=no ${ip} 'exit 0'
-if [ $? != 0 ]
-then
- echo "Host nicht per SSH erreichbar! Abbruch :-("
- exit 1
-fi
-
-# MAC-Adressen finden
-macen=$(ssh ${ip} cat /sys/class/net/en*/address)
-echo "MAC-Ethernet: $macen"
-macwl=$(ssh ${ip} cat /sys/class/net/wl*/address)
-echo "MAC-WLAN: $macwl"
-
-if [ -z $macwl ]
-then
- echo "dhcp-host=${macen},${ip},${newhostname}" >> files/dns20-pihole_04-pihole-static-dhcp.conf
-else
- echo "dhcp-host=${macen},${macwl},${ip},${newhostname}" >> files/dns20-pihole_04-pihole-static-dhcp.conf
-fi
-
-# Hostnamen aendern
-oldhostname=$(ssh ${ip} hostname)
-ssh ${ip} sudo hostnamectl set-hostname ${newhostname}
-# change in /etc/hosts
-ssh ${ip} sudo sed -i "s/$oldhostname/$newhostname/" /etc/hosts
-
-echo "$ip $newhostname" >> files/dns-pihole_custom.list
-
-echo
-echo "Prüfe, ob Host perAnsible erreichbar ist"
-ansible ${ip} -i temphosts -m ping
-
-echo
-echo "Alle DNS-Server mit neuen Listen versorgen"
-ansible-playbook pihole-update.yml
-
-echo
-echo "pruefen, ob DNS-Aufloesung fuer neuen Host funktioniert"
-ping -c 3 ${newhostname}
-
-# temporaere Dateien loeschen"
-rm temphosts
-
-echo
-echo "+++ pihole static-dhcp file +++"
-tail files/dns20-pihole_04-pihole-static-dhcp.conf
-
-echo
-echo "+++ pihole custom list"
-tail files/dns-pihole_custom.list
-
-echo
-echo "fertig?"
-echo "fertig!"
-echo " :-)"
-
-###
-#ansible ${ip} -i newhost -m ping
-#ansible ${ip} -i newhost -m gather_facts
-#ansible ${ip} -i newhost -m ansible.builtin.setup -a 'filter=ansible_wlp4s0'
-