ipv6finder : How ready are you for IPv6?
Over the holidays, I used some of the vacation and down time to reorganize my home network. Part of this was to update my network maps and figure out how many of my devices do not support IPv6. I do use IPv6 extensively at home, but even some recently purchased devices do not support it.
Another problem you have with IPv6 is to find all devices on your network. The standard and simplest way to do this (aside from passively listening) is to ping the "all hosts" multicast address ff02::1. If you use auto configured link local addresses, you can also look for the EUI-64 (MAC Address) derived IPv6 addresses.
The result: a shell script to run some of these scans for you [1]
The ipv6finder.sh script currently is tested on Linux and OS X. It will not work on Windows. It does require root access as it uses arping for some of its tests (could fix that, but I found the arping output to be more consistent between platforms then just the arp command which would work too with a normal ping).
Read the comments in the file for some more details. Also: at the top of the script there are some variables that you can use to point it to the right location for various binaries it uses. Why bash and not perl... well, I started it in bash and it grew.
[1] http://johannes.homepc.org/ipv6finder.sh
------
Johannes B. Ullrich, Ph.D.
SANS Technology Institute
Twitter
Application Security: Securing Web Apps, APIs, and Microservices | Online | US Eastern | Jan 27th - Feb 1st 2025 |
Comments
if [ "$OS" == "LINUX" ]
lines. That, apparently, is a bashism: sh requires "=" here.
Small nitpick: on Debian testing, arping is in /usr/sbin.
rjmx
Jan 5th 2011
1 decade ago
Path is different for arping
# ARPING=/sbin/arping
ARPING=/usr/bin/arping
Operator == have to be simple =
Loop has an issue (at least for me). Modified like
#for b in {1..254}; do
for b in $(seq 1 254); do
No NMAP here ;-) ?
Thanks for the useful script
Js Op de Beeck
Jan 6th 2011
1 decade ago
#!/bin/bash
Js Op de Beeck
Jan 6th 2011
1 decade ago
RobM
Jan 6th 2011
1 decade ago