summaryrefslogtreecommitdiff
path: root/bin/NS2SetMac.sh
authorwimpie <wimpie>2005-01-06 23:48:02 (UTC)
committer wimpie <wimpie>2005-01-06 23:48:02 (UTC)
commita056b6d067800486d9c1ce99d1b923289d335e8f (patch) (side-by-side diff)
treee6f1f78a2d7a26d88033e1c3fcf8f99e4e26422e /bin/NS2SetMac.sh
parent006091cfc3bb54286fd4dd74773fe5c09048077b (diff)
downloadopie-a056b6d067800486d9c1ce99d1b923289d335e8f.zip
opie-a056b6d067800486d9c1ce99d1b923289d335e8f.tar.gz
opie-a056b6d067800486d9c1ce99d1b923289d335e8f.tar.bz2
Script to remember and set MAC address for devices that
randomly generate a mac address and cause problems with proper dhcp and ssh
Diffstat (limited to 'bin/NS2SetMac.sh') (more/less context) (ignore whitespace changes)
-rwxr-xr-xbin/NS2SetMac.sh22
1 files changed, 22 insertions, 0 deletions
diff --git a/bin/NS2SetMac.sh b/bin/NS2SetMac.sh
new file mode 100755
index 0000000..51810ae
--- a/dev/null
+++ b/bin/NS2SetMac.sh
@@ -0,0 +1,22 @@
+# store/set MAC address for given interface
+NS2MacStore=/etc/NS2
+
+[ ! -d ${NS2MacStore} ] && mkdir ${NS2MacStore}
+
+if [ -z "$1" ]
+then
+ exit 0
+fi
+
+if [ -f ${NS2MacStore}/$1.mac ]
+then
+ # set this mac
+ /sbin/ifconfig $1 hw ether `cat ${NS2MacStore}/$1.mac`
+else
+ # remember current mac for all times
+ X=`/sbin/ifconfig $1 | grep HWaddr`
+ X=${X#*HWaddr } # strip till HWaddr
+ X=${X%% *} # remove trailing spaces
+ echo ${X} > ${NS2MacStore}/$1.mac
+fi
+exit 0