//comment out if using a stand alone tool nmap = function(target_ip) //uncomment is not using as import. //if params.len != 1 or params[0] == "-h" or params[0] == "--help" then exit("Usage: "+program_path.split("/")[-1]+" [ip_address]") target_ip = params[0] if not is_valid_ip(target_ip) then exit(target_ip + " is not a valid ip") if nslookup(target_ip) == "Not found" then exit("That domain is not valid.") end if target_router = get_router(target_ip) target_ports = target_router.used_ports router_data = [] column = "Number Type Version IP" column = column + "\n" + "0" + " " + "kernel_router" + " " + target_router.kernel_version + " " + target_router.local_ip router_data.push({"port":"0", "port_info":"kernel_router", "port_info": target_router.kernel_version, "lan_ip":target_router.local_ip}) for port in target_ports column = column + "\n" + port.port_number + " " + target_router.port_info(port) + " " + port.get_lan_ip router_data.push({"port":port.port_number,"port_info":target_router.port_info(port),"lan_ip":port.get_lan_ip}) end for print("\nIP Address : " + target_ip) print(format_columns(column)) return router_data //comment out if using a stand alone tool end function