When I try to use nmap:

# nmap -sP -6 FE80::1-234
[...] Failed to resolve given IPv6 hostname/IP: FE80::1-234. Note that you can't use '/mask' or '[1-4,7,100-]' style ranges for IPv6.[...]

What other tool can I use?

closed as off topic by Gilles, AviD Apr 19 '12 at 18:11

Questions on Information Security Stack Exchange are expected to relate to Information security within the scope defined by the community. Consider editing the question or leaving comments for improvement if you believe the question can be reworded to fit within the scope. Read more about reopening questions here. If this question can be reworded to fit the rules in the help center, please edit the question.

  • 2
    This practical question about using a tool would be more suited to Unix & Linux than here. But don't repost the question as is. There's a reason why nmap doesn't support IPv6 ranges: they're rarely useful. What are you trying to achieve? – Gilles Mar 17 '12 at 19:21
  • I want to scan some scope of IPv6 Addresses using existing tool - it is necessary to my research paper. – seymourbirkoff Mar 18 '12 at 13:41
  • @seymourbirkoff - Does this existing tool support IPv6 Addresses? – Ramhound Mar 19 '12 at 13:49
  • Does it work when you ping-scan a single address? – Marcin Mar 19 '12 at 19:18
  • 1
    Since this question was asked, Nmap released version 6.40 in July 2013, which allows CIDR-style IPv6 range scanning. – bonsaiviking Feb 14 '14 at 14:53

There was an interesting presentation from Metasploit on this recently (blog post is here)

From that there are a number of techniques that nmap can use to identify IPv6 hosts on the local network which could be of use to you

Scanning your local subnet for all IPv6-enabled systems in one shot:

nmap -6 --script=targets-ipv6-multicast-*

Port scanning the top 10000 ports on these assets:

nmap -6 --script=targets-ipv6-multicast-* --script-args=newtargets -PS --top-ports=10000


Using nmap

Write a short script to generate the IPv6 range you want to scan, then pass that to nmap using -iL

nmap -Pn -sS -p 80 -6 -iL ipv6.txt

IPv6 Target File

For the script (if you need help with this part) do a for loop:

for i in {1..234}; do echo "FE80::$i" >> ipv6.txt; done

The only limit I see with this setup, is that you will have to calculate the appropriate ip range, which might not be simple, depending on the network design.

  • 1
    Do not forget that IPv6 uses hex numbers: for i in {1..234}; do printf "2001:5c0:1400:a::%x\n" $i >> ipv6.txt; done – Vanuan Mar 1 '13 at 19:23

You can use THC-IPv6 as well.

  • does thc-ipv6 scan ranges? – schroeder Apr 10 '12 at 22:16

Not the answer you're looking for? Browse other questions tagged or ask your own question.