DDNS PASO A PASO_
DDNS PASO A PASO_
Y el cliente con:
auto enp0s3
iface enp0s3 inet static
address 172.26.0.25
netmask 255.255.0.0
gateway 172.26.0.1
- bind9
- isc-dhcp-server
#!/bin/bash
clear
# 1-Requirements
apt update
apt install bind9 bind9-utils
clear
directa() {
################ /etc/bind/named.conf.options
echo "### /etc/bind/named.conf.options ###"
################ /etc/bind/db.local
clear
read -p "Introduce tu dominio [domain.com]: " domain
read -p "Introduce tu Ip [ 172.16.16.117 ]: " ip
cp /etc/bind/db.$domain /var/cache/bind/
################ /etc/bind/named.conf.local
clear
echo "### /etc/bind/named.conf.local ###"
################ /etc/resolv.conf
clear
echo "nameserver $ip "> /etc/resolv.conf
intensa() {
################ /etc/bind/db.ip
clear
echo "### /etc/bind/named.conf.local ###"
;;
172.*)
ipa=$(echo "$netip" | awk -F. '{print $2"."$1}')
ipac=$(echo "$netip" | awk -F. '{print $1"."$2}')
lastoctect=$(echo "$netip" | awk -F. '{print $4"."$3}')
lastipa0=$(echo "$netip" | awk -F. '{print $3}')
cat /etc/bind/db.127 | head -12 > /etc/bind/db.$ipac
sed -i -e "s/localhost/ns1.$domain0/g" /etc/bind/db.$ipac && sed -i -e
"s/root.localhost/admin.$domain0/g" /etc/bind/db.$ipac
echo "2.$lastipa0 IN PTR www.$domain0." >> /etc/bind/db.$ipac
echo "3.$lastipa0 IN PTR ftp.$domain0." >> /etc/bind/db.$ipac
echo "$lastoctect IN PTR ns1.$domain0." >> /etc/bind/db.$ipac
;;
esac
cp /etc/bind/db.$ipac /var/cache/bind/
######################################################################
master() {
clear
read -p "Introduce La IP de la máquina Esclava: " ipslave
slave(){
apt update
apt install bind9 bind9-utils
clear
#####################################
case "$ip9" in
192.*)
ipa9=$(echo "$ip9" | awk -F. '{print $3"."$2"."$1}')
ipac9=$(echo "$ip9" | awk -F. '{print $1"."$2"."$3}')
;;
172.*)
ipa9=$(echo "$ip9" | awk -F. '{print $2"."$1}')
ipac9=$(echo "$ip9" | awk -F. '{print $1"."$2}')
;;
esac
esclavo() {
clear
echo "1- Configurar la Maquina MAESTRO."
echo "2- Configurar la Maquina Esclavo."
read -p "Elige que maquina estas usando" maes
case $maes in
1) master;;
2) slave;;
esac
}
ddns() {
cp /etc/bind/ddns.key /etc/dhcp/
DHCP_CONF="/etc/dhcp/dhcpd.conf"
case "$ipdhcp" in
192.*)
ipdhcp0=$(echo "$ipdhcp" | awk -F. '{print $3"."$2"."$1}')
echo "zone $ipdhcp0.IN-ADDR.ARPA {" >> /etc/dhcp/dhcpd.conf
echo "primary $ipdhcp;" >> /etc/dhcp/dhcpd.conf
echo "key $dnskey;" >> /etc/dhcp/dhcpd.conf
echo "}" >> /etc/dhcp/dhcpd.conf
;;
172.*)
ipdhcp1=$(echo "$ipdhcp" | awk -F. '{print $2"."$1}')
echo "zone $ipdhcp1.IN-ADDR.ARPA {" >> /etc/dhcp/dhcpd.conf
echo "primary $ipdhcp;" >> /etc/dhcp/dhcpd.conf
echo "key $dnskey;" >> /etc/dhcp/dhcpd.conf
echo "}" >> /etc/dhcp/dhcpd.conf
;;
esac
case "$ipdhcp" in
192.*)
ipdhcp0=$(echo "$ipdhcp" | awk -F. '{print $3"."$2"."$1}')
dhcpnetwork=$(echo "$ipdhcp" | awk -F. '{print $1"."$2"."$3".0"}')
dhcpbroadcast=$(echo "$ipdhcp" | awk -F. '{print $1"."$2"."$3".255"}')
range1=$(echo "$ipdhcp" | awk -F. '{print $1"."$2"."$3".10"}')
range2=$(echo "$ipdhcp" | awk -F. '{print $1"."$2"."$3".252"}')
esac
sed -i "s/^INTERFACESv4=\".*\"/INTERFACESv4=\"$INTERFACE\"/"
/etc/default/isc-dhcp-server
sed -i 's/^#authoritative;/authoritative;/' /etc/dhcp/dhcpd.conf
menu() {
case $opcion in
1) directa;;
2) intensa;;
3) esclavo;;
4) ddns ;;
5) exit;;
esac
}
menu
- /var/cache/bind/
- /etc/bind/
- /etc/dhcp/