diy_rfc2136_dyndns_with_bind

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Next revisionBoth sides next revision
diy_rfc2136_dyndns_with_bind [29.10.2013 14:01] Pascal Suterdiy_rfc2136_dyndns_with_bind [25.06.2021 08:17] – [DIY RFC2136 dyndns with bind] Pascal Suter
Line 22: Line 22:
  900        ; refresh (15 minutes)  900        ; refresh (15 minutes)
  600        ; retry (10 minutes)  600        ; retry (10 minutes)
- 2600       ; expire (43 minutes 20 seconds)+ 604800     ; expire (1 Week)
  30         ; minimum (30 seconds)  30         ; minimum (30 seconds)
  )  )
Line 41: Line 41:
  };   }; 
 }; };
-</code> **note** keep the //add_keys_here// comment exactly as it is, this is the marker for our script so it knows where to add new keys+</code bash add_new_host.sh> **note** keep the //add_keys_here// comment exactly as it is, this is the marker for our script so it knows where to add new keys
   * edit your main named.conf file, usually in /etc/bind/named.conf and add an include line at the end of your zone definitions like so: <code>include "/etc/bind/dyn/named.conf";</code>   * edit your main named.conf file, usually in /etc/bind/named.conf and add an include line at the end of your zone definitions like so: <code>include "/etc/bind/dyn/named.conf";</code>
   * create the "add_new_host.sh" script that will add new hosts to our setup. here are the contents of the script: <code>   * create the "add_new_host.sh" script that will add new hosts to our setup. here are the contents of the script: <code>
Line 79: Line 79:
 </code> </code>
   * now use the script to add your first hostname. <code>./add_new_host myhost</code>if you did everything correctly (and if i described it all correctly) your client should now be able to update it's own dns entry with the key you received back from the script.    * now use the script to add your first hostname. <code>./add_new_host myhost</code>if you did everything correctly (and if i described it all correctly) your client should now be able to update it's own dns entry with the key you received back from the script. 
 +===== script to remove hosts =====
 +optionally you can also create a little script to remove hosts just as easily. create a file called remove_hosts.sh with the following contents<code>
 +#!/bin/bash
 +if [ -z "$1" -o "$1" == " " ]; then
 +        echo "usage: remove_host.sh <hostname>"
 +        echo "EXAMPLE: remove_host.sh myhost will remove myhost.dyn.mydomain.ch"
 +        exit 1
 +fi
 +cd /etc/bind/dyn/
 +hostname=${1}.dyn.mydomain.ch.
 +echo "old keys.conf entry: "
 +grep ${hostname} keys.conf
 +echo "remove key for ${hostname}"
 +cat named.conf | sed -e "/^\t\tkey ${hostname}.*$/d" | tee named.conf > /dev/null
 +cat keys.conf | sed -e "/^key ${hostname}.*$/d" | tee keys.conf > /dev/null
 +echo "reload bind";
 +/etc/init.d/bind9 reload
 +echo "currently active hosts:"
 +grep "key " named.conf | awk '{ print $2; }' | tr -d ";"
 +</code>
 +make it executable and run it to remove hotsts. **warning** make a backup of your keys.conf and your named.conf file before testing this :) 
 +  ./remove_host.sh myhost
 +
  • diy_rfc2136_dyndns_with_bind.txt
  • Last modified: 25.06.2021 12:39
  • by Pascal Suter