Re: Bash scripting help...



Marko Vojinovic wrote:
I am writing a bash script to discover a MAC address of a remote host based on it's IP. Found that arping might be useful (is there a better method?), so I get

# arping -f -I eth0 $ipnumber
ARPING 10.0.0.3 from 10.0.0.1 eth0
Unicast reply from 10.0.0.3 [00:0C:29:C8:DE:E2] 1.040ms
Sent 1 probes (1 broadcast(s))
Received 1 response(s)

but the problem is that I just need to set the variable, say macaddr, to the above value, hopefully lowercase, without the [ and ]. Next obvious thing was:

# arping -f -I eth0 $ipnumber | grep Unicast
Unicast reply from 10.0.0.3 [00:0C:29:C8:DE:E2] 1.040ms

but I am over my head in extracting just the number. I guess awk is the tool, but the man page is not very illustrative and I do not have time/patience to learn to program in 'awk language' in order to do this thing. And C would probably be an overkill... :-)

Or this may work... (with the correct IP :/)

arping -f -I eth0 10.0.0.3 |\
grep Unicast |\
sed -e 's/.*\[\(..:..:..:..:..:..\)\].*/\1/'


--
fedora-list mailing list
fedora-list@xxxxxxxxxx
To unsubscribe: https://www.redhat.com/mailman/listinfo/fedora-list



Relevant Pages

  • Re: Bash scripting help...
    ... Found that arping might be useful, ... ARPING 10.0.0.3 from 10.0.0.1 eth0 ... Sent 1 probes ) ... I guess awk is the tool, but the man page is not very illustrative and I do not have time/patience to learn to program in 'awk language' in order to do this thing. ...
    (Fedora)
  • Re: Address already in use error
    ... that error message is reported in ifup with this code fragment. ... Here's the output from arping (I removed the -q switch so we can see ... ARPING 192.168.0.9 from 0.0.0.0 eth0 ... have some kind of hardware conflict here - perhaps w/ a 2nd NIC? ...
    (comp.os.linux.networking)