diff options
| author | Daniil Baturin <daniil@baturin.org> | 2019-09-30 19:19:26 +0700 | 
|---|---|---|
| committer | GitHub <noreply@github.com> | 2019-09-30 19:19:26 +0700 | 
| commit | 0df4e2c4133b9cb623ef881bfa697da6d5324f2d (patch) | |
| tree | 30db320d5af800dc4d1fb7d4db8619aaf36b39bf | |
| parent | 75020e248bcea9759eac5e9ef3769dddad704787 (diff) | |
| parent | a1ed1bf1db1eb23455a3555a6fc0842104efdeb6 (diff) | |
| download | vyos-1x-0df4e2c4133b9cb623ef881bfa697da6d5324f2d.tar.gz vyos-1x-0df4e2c4133b9cb623ef881bfa697da6d5324f2d.zip | |
Merge pull request #137 from DmitriyEshenko/hostname-dhcp
[dhcp hostfile-update] T1678 migrate to vyos-hostsd-client
| -rwxr-xr-x | src/system/on-dhcp-event.sh | 42 | 
1 files changed, 5 insertions, 37 deletions
| diff --git a/src/system/on-dhcp-event.sh b/src/system/on-dhcp-event.sh index 02bbd4c3c..70a563d4c 100755 --- a/src/system/on-dhcp-event.sh +++ b/src/system/on-dhcp-event.sh @@ -37,50 +37,18 @@ fi  case "$action" in    commit) # add mapping for new lease -    echo "- new lease event, setting static mapping for host "\ -         "$client_fqdn_name (MAC=$client_mac, IP=$client_ip)" -    # -    # grep fails miserably with \t in the search expression. -    # In the following line one <Ctrl-V> <TAB> is used after $client_search_expr -    # followed by a single space -    grep -q " $client_search_expr	 #on-dhcp-event " $file -    if [ $? == 0 ]; then -       echo pattern found, removing -       wc1=`cat $file | wc -l` -       sudo sed -i "/ $client_search_expr\t #on-dhcp-event /d" $file -       wc2=`cat $file | wc -l` -       if [ "$wc1" -eq "$wc2" ]; then -         echo No change -       fi -    else -       echo pattern NOT found -    fi - -    # check if hostname already exists (e.g. a static host mapping) -    # if so don't overwrite -    grep -q " $client_search_expr	 " $file +    grep -q "   $client_search_expr     " $file      if [ $? == 0 ]; then         echo host $client_fqdn_name already exists, exiting         exit 1      fi - -    line="$client_ip\t $client_fqdn_name\t #on-dhcp-event $client_mac" -    sudo sh -c "echo -e '$line' >> $file" -    ((changes++)) -    echo Entry was added +    # add host +    /usr/bin/vyos-hostsd-client --add-hosts --tag "DHCP-$client_ip" --host "$client_fqdn_name,$client_ip"      ;;    release) # delete mapping for released address -    echo "- lease release event, deleting static mapping for host $client_fqdn_name" -    wc1=`cat $file | wc -l` -    sudo sed -i "/ $client_search_expr\t #on-dhcp-event /d" $file -    wc2=`cat $file | wc -l` -    if [ "$wc1" -eq "$wc2" ]; then -      echo No change -    else -      echo Entry was removed -      ((changes++)) -    fi +    # delete host +    /usr/bin/vyos-hostsd-client --delete-hosts --tag "DHCP-$client_ip"      ;;    *) | 
