This is a script to detect a change in an IP address (on wireless interface)
on a Mobile Node
#!/bin/sh
#Original IP
OldIP=`cat /home/pangcake/Desktop/OldIP.txt | awk '{print $1}' | awk -F '/' '{print $1}'`
OriginalIP=`cat /home/pangcake/Desktop/OldIP.txt | awk '{print $1}'`
echo Old_IP = $OldIP
# check newIP
wireless=`cat /proc/net/wireless | sed -n 3p | awk -F ': ' '{print $1}'`
#ifconfig | sed -e '/./{H;$!d;}' -e 'x;/$wireless/!d;'
#ifconfig $wireless
# new IP
Current_IP=`ifconfig $wireless | grep inet6 | awk -F ' ' '{print $3, $4}' | awk -F ' ' '{if (substr($2,1,7) == "Scope:G") print $1}' | awk -F '/' '{ print $1}'`
# new IP + /
NewIP=`ifconfig $wireless | grep inet6 | awk -F ' ' '{print $3, $4}' | awk -F ' ' '{if (substr($2,1,7) == "Scope:G") print $1}'`
# Compare OldIP and NewIP
if [ $OriginalIP = $NewIP ]; then
exit
else
echo $NewIP>/home/pangcake/Desktop/OldIP.txt
#echo New_IP = $NewIP
echo CurrentIP = $Current_IP
# New_IP =`echo $NewIP`
# CurrentIP =`echo $Current_IP`
echo "server ns1.mylinux.lan" > /home/pangcake/Desktop/my-nsupdate.txt
echo "zone mylinux.lan." >> /home/pangcake/Desktop/my-nsupdate.txt
echo "update delete eins.mylinux.lan. AAAA" >>/home/pangcake/Desktop/my-nsupdate.txt
echo "update add eins.mylinux.lan. 86400 IN AAAA $Current_IP" >> /home/pangcake/Desktop/my-nsupdate.txt
echo "send">> /home/pangcake/Desktop/my-nsupdate.txt
fi
./do-nsupdate.sh my-nsupdate.txt
Domain Name System for Locator Identity Mapping