Nmap ipv6-multicast-mld-list NSE Script


This page contains detailed information about how to use the ipv6-multicast-mld-list NSE script. For list of all NSE scripts, visit the Nmap NSE Library.

Select:
Overview
Error Messages

Script Overview


Script source code: https://github.com/nmap/nmap/tree/master/scripts/ipv6-multicast-mld-list.nse
Script categories: broadcast, discovery
Target service / protocol: -
Target network port(s): -
List of CVEs: -

Script Description


The ipv6-multicast-mld-list.nse script uses Multicast Listener Discovery to list the multicast addresses subscribed to by IPv6 multicast listeners on the link-local scope. Addresses in the IANA IPv6 Multicast Address Space Registry have their descriptions listed.

Ipv6-multicast-mld-list NSE Script Arguments


This is a full list of arguments supported by the ipv6-multicast-mld-list.nse script:

ipv6-multicast-mld-list.interface

Interface to send on (default: the interface specified with -e or every available Ethernet interface with an IPv6 address.)

ipv6-multicast-mld-list.timeout

Timeout to wait for responses (default: 10s)

- - -
To use these script arguments, add them to the Nmap command line using the --script-args arg1=value,[arg2=value,..] syntax. For example:

nmap --script=ipv6-multicast-mld-list --script-args ipv6-multicast-mld-list.interface=value,ipv6-multicast-mld-list.timeout=value <target>

Ipv6-multicast-mld-list NSE Script Example Usage


Here's an example of how to use the ipv6-multicast-mld-list.nse script:

nmap --script=ipv6-multicast-mld-list

Ipv6-multicast-mld-list NSE Script Example Output


Here's a sample output from the ipv6-multicast-mld-list.nse script:

Pre-scan script results:
| ipv6-multicast-mld-list:
|   fe80::9fb:25b7:1b7c:e53:
|     device: wlan0
|     mac: 38:60:77:3d:b1:ec
|     multicast_ips:
|       ff02::1:ff7c:e53          (NDP Solicited-node)
|       ff02::fb                  (mDNSv6)
|       ff02::c                   (SSDP)
|_      ff02::1:3                 (Link-local Multicast Name Resolution)

Ipv6-multicast-mld-list NSE Script Example XML Output


Here's a sample XML output from the ipv6-multicast-mld-list.nse script produced by providing the -oX <file> Nmap option:

 <table key="fe80::9fb:25b7:1b7c:e53">
   <elem key="device">wlan0</elem>
   <elem key="mac">38:60:77:3d:b1:ec</elem>
   <table key="multicast_ips">
     <table>
       <elem key="description">NDP Solicited-node</elem>
       <elem key="ip">ff02::1:ff7c:e53</elem>
     </table>
     <table>
       <elem key="description">mDNSv6</elem>
       <elem key="ip">ff02::fb</elem>
     </table>
     <table>
       <elem key="description">SSDP</elem>
       <elem key="ip">ff02::c</elem>
     </table>
     <table>
       <elem key="description">Link-local Multicast Name Resolution</elem>
       <elem key="ip">ff02::1:3</elem>
     </table>
   </table>
 </table>

Authors


  • alegen
  • Daniel Miller

References


See Also


Related NSE scripts to the ipv6-multicast-mld-list.nse script:

Visit Nmap NSE Library for more scripts.

The ipv6-multicast-mld-list.nse script may fail with the following error messages. Check for the possible causes by using the code snippets highlighted below found in the script source code. This can often times help in identifying the root cause of the problem.

Error parsing IP range %s: %s


Here is a relevant code snippet related to the "Error parsing IP range %s: %s" error message:

217:	  local starts, ends, addr, name = string.find(link_scope, "^([^,]+),([^,]+),.-\n")
218:	  while starts do
219:	    if string.match(addr, "[/-]") then
220:	      local low, high, err = ipOps.get_ips_from_range(addr)
221:	      if not low then
222:	        stdnse.debug1("Error parsing IP range %s: %s", addr, err)
223:	      else
224:	        table.insert(multicast_ranges, {low, high, name})
225:	      end
226:	    else
227:	      multicast_addresses[string.lower(ipOps.expand_ip(addr))] = name

Error parsing IP range %s: %s


Here is a relevant code snippet related to the "Error parsing IP range %s: %s" error message:

233:	  while starts do
234:	    addr = string.gsub(addr, "FF0X", "FF02")
235:	    if string.match(addr, "[/-]") then
236:	      local low, high, err = ipOps.get_ips_from_range(addr)
237:	      if not low then
238:	        stdnse.debug1("Error parsing IP range %s: %s", addr, err)
239:	      else
240:	        table.insert(multicast_ranges, {low, high, name})
241:	      end
242:	    else
243:	      multicast_addresses[string.lower(ipOps.expand_ip(addr))] = name

Version


This page has been created based on Nmap version 7.92.

Go back to menu.